Class Dlaute
T I I, T F_ F F _F T - - - VOX a 1 f g h f g h 2 f i k VOX b 0+
The T line contains duration symbols, including start/end beam indication.
In contrast to the original, all duration symbols are on the same height, but
a global "timeless" switch can indicate that they "drop" above the topmost voice
entry. The XML encoding always shows the correct y-position relative to the
lowest appearing voice character.
Whitespace for "same duration as predecessor" must also be marked explicitly.
The voices "VOX a" are technically required by tscore, but do only indicate the y-position of the grip characters.
Please see the examples for details.
-
Nested Class Summary
Modifier and TypeClassDescription(package private) class
Creates one single image as CONTROL output only. -
Field Summary
Modifier and TypeFieldDescription(package private) boolean
Whether duration symbols in the original drop down graphically.(package private) boolean
Whether "same duration as preceding" is supported in this score.(package private) Vox
Synthetic tscore voice for the duration symbols.Partial map from time line events to the base duration symbol, if present.Partial map from time line events to a sequence of (one or two) duratin prolognation dots.Time-line event is is keyset iff a beam group ends there.Partial map of voice events to finger indication.Partial map from time line events to the "same duration as predecessor" symbol.Voice event is in keyset iff symbol carries a "laissez vibrer" symbol.Time-line event is is keyset iff a beam group starts there.Total map of the voice events to the stop code (/grip code).Finger indication according to Newsidler, Gerle (1535-1552) [Wolf S.Durations accordig to Wolf, p.41: [= Johannes Wolf, Handbuch der Notationskunde, Teil zwei, https://ia800205.us.archive.org/3/items/handbuchdernotat02wolf/handbuchdernotat02wolf.pdf]
"." = whole note = semibrevis (= 1/1 in modern interpretation)
".." = brevis ( = 2/1)
"..." = dotted brevis ( = 3/1)
"I" = 1/2, T = 1/4, F = 1/8, E = 1/16
But the example Schlick [Wolf p.42/43] shows that "F" in tablature corresponds to "quarter note" in the mensural notation.static final Modifiers
Modifiers controlling the parsing process.(package private) final SimpleMessage.Sender<eu.bandm.tools.util.xml.XMLDocumentIdentifier>
Only for conveniently construction messages and sending them tomsgr
(package private) final MessageCounter
Counter of message kinds.(package private) final MessageReceiver<SimpleMessage<eu.bandm.tools.util.xml.XMLDocumentIdentifier>>
Receiver of error/log messages.(package private) final Translet.Parser
Parser for duration prolongation dots.(package private) final Translet.Parser
Parser for all variants of durations, including "same duration as predecessor."(package private) final Translet.Parser
Let the chord vibrate longer than the next event.protected final Part
The score data as parsed by tscore.static final String
The key string for the "timeless" prelude information whether the duration symbols "drop down".static final String
The key string for the "timeless" prelude information whether "same-duration-as-predecessor" is allowed.static final String
The key string for the "timeless" prelude information about the stop-characater definitions.Maps top time points to their (nominal) duration.Maps top time points to their (nominal) position = sum of all preceding durations.Top time points in score order.(package private) final String
Name ofduraVoice
-
Constructor Summary
ConstructorDescriptionDlaute
(Part part, MessageReceiver<SimpleMessage<eu.bandm.tools.util.xml.XMLDocumentIdentifier>> msgr) Construct data for one particularPart
of a tscore TimeScape. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Additional type check whether the duration information is consistent.Construct the grip map from the "timeless" prelude information.static void
Stand-alone application, translates input file "arg[0]" into two output files: a rendering with extension ".png" and an xml model with extension ".xml".(package private) Translet.Parser<?>
p_event
(Translet.Parser<Tuple2<Integer, Integer>> stopParser) Stop parser is supplied *dynamically*, because the "timeless" prelude of each file can re-define the character values.protected Element_tabulatura
toXml()
Convert the model into an XML model.void
update()
Translate untyped tscore data into semantically sensible data, indexed by events.protected void
First step of interpreting syntactic to semantic contents: Parse the TpTop text to a duration indication.
-
Field Details
-
longDurations
Durations accordig to Wolf, p.41: [= Johannes Wolf, Handbuch der Notationskunde, Teil zwei, https://ia800205.us.archive.org/3/items/handbuchdernotat02wolf/handbuchdernotat02wolf.pdf]
"." = whole note = semibrevis (= 1/1 in modern interpretation)
".." = brevis ( = 2/1)
"..." = dotted brevis ( = 3/1)
"I" = 1/2, T = 1/4, F = 1/8, E = 1/16
But the example Schlick [Wolf p.42/43] shows that "F" in tablature corresponds to "quarter note" in the mensural notation. We assume that this proportion is variable. Therefore we do not make any translations, but describe the duration symbols according to our "modern" interpretation (two flags ≙ F ≙ 1/16, etc. Then I ≙ 1/4 and "." ≙ 1/2 ) -
shortDurations
-
event2baseDuration
Partial map from time line events to the base duration symbol, if present. -
event2idemDuration
Partial map from time line events to the "same duration as predecessor" symbol. This is required in tscore, because there must always be a non-blank symbol in the time line. In the original this is white space. (Technically a map is required; relevant is only its key-set.) -
event2dots
Partial map from time line events to a sequence of (one or two) duratin prolognation dots. -
event2startBeam
Time-line event is is keyset iff a beam group starts there. -
event2endBeam
Time-line event is is keyset iff a beam group ends there. -
p_dots
Parser for duration prolongation dots. -
p_duration
Parser for all variants of durations, including "same duration as predecessor." -
fingerCodes
Finger indication according to Newsidler, Gerle (1535-1552) [Wolf S. 42] -
event2stop
Total map of the voice events to the stop code (/grip code). The first component is the chord, the second the fret (0=open chord). -
event2finger
Partial map of voice events to finger indication. -
event2prolongate
Voice event is in keyset iff symbol carries a "laissez vibrer" symbol. -
p_prolongate
Let the chord vibrate longer than the next event. Newsidler, Judenkünig, Gerle [Wolf g.41] -
timelessTag_frets
The key string for the "timeless" prelude information about the stop-characater definitions.- See Also:
-
timelessTag_duratioCadens
The key string for the "timeless" prelude information whether the duration symbols "drop down".- See Also:
-
timelessTag_duratioManet
The key string for the "timeless" prelude information whether "same-duration-as-predecessor" is allowed.- See Also:
-
msgr
Receiver of error/log messages. -
msgCount
Counter of message kinds. -
msg
Only for conveniently construction messages and sending them tomsgr
-
part
The score data as parsed by tscore. -
modifiers
Modifiers controlling the parsing process. -
voicename_timeline
Name ofduraVoice
- See Also:
-
duraVoice
Vox duraVoiceSynthetic tscore voice for the duration symbols. Because their syntax is more complex than usual in tscore, full-fledged parsers are required, and thus dedicatated events and thus a dedicated voice.(timepoints and events in $timeline are related by
duravoice.sortedByStart
andevent.when
. The identical index position in tpTops and duraVoice is accidental and should NOT be used!) -
tpTops
Top time points in score order. -
tp2duration
Maps top time points to their (nominal) duration. -
tp2position
Maps top time points to their (nominal) position = sum of all preceding durations. -
duratioCadens
boolean duratioCadensWhether duration symbols in the original drop down graphically. -
duratioManet
boolean duratioManetWhether "same duration as preceding" is supported in this score.
-
-
Constructor Details
-
Dlaute
public Dlaute(Part part, MessageReceiver<SimpleMessage<eu.bandm.tools.util.xml.XMLDocumentIdentifier>> msgr) Construct data for one particularPart
of a tscore TimeScape. In the score source text this is marked by "PART
".
-
-
Method Details
-
p_event
Stop parser is supplied *dynamically*, because the "timeless" prelude of each file can re-define the character values. -
gripMap
Construct the grip map from the "timeless" prelude information. This can be given with the vox or the part or the vox description before any part or with the score file in general. It can be given directly, as a list of list of charcters (see examples) or as one identifier, which in turn must resolve to such a list. -
update
public void update()Translate untyped tscore data into semantically sensible data, indexed by events. -
update_topTps
protected void update_topTps()First step of interpreting syntactic to semantic contents: Parse the TpTop text to a duration indication. -
toXml
Convert the model into an XML model. (This is done via a tdom model, which guarantees type correct XML.) -
checkDuraConsistency
protected void checkDuraConsistency()Additional type check whether the duration information is consistent. -
main
Stand-alone application, translates input file "arg[0]" into two output files: a rendering with extension ".png" and an xml model with extension ".xml". (ADDITIONALLY the proof rendering is shown in a window.)
-