Package | Description |
---|---|
eu.bandm.music.entities |
All fundamental entities for modeling music.
|
eu.bandm.music.haken |
Composition project which translates polyphonic sequences of abstract
"hook signs" (="Haken" = "hkn") into scores for different instruments, like
Viola, Voice, electronic sound synthesis or abstract graphical movies; see
the project documentation (in German).
|
eu.bandm.music.top |
Top-level data structures, modelling different score formats, combining the
entities defined in lower level packages.
|
eu.bandm.tscore.base |
Generic and low level data types and transformation algorithms,
to be used by very different applications of the
tscore
framework. |
eu.bandm.tscore.model |
Umod main model class: Generic score model for
denotating time-based sequences of arbitrary events.
|
Modifier and Type | Field and Description |
---|---|
Map<Vox,SortedMap<BigDecimal,MTreeSpec>> |
MTreeCollector.voiceDefs
Map measure numbers to localdefinitions of meter names to mtree specs, per voices.
|
Modifier and Type | Method and Description |
---|---|
void |
MeasureCollector.analyse(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Iterable<TpTop> topTps,
Map<TpTop,BigDecimal> tp2barnum,
Vox vox)
Is called after parsing, when all primary information is parsed and stored
to internal maps, for distributing information, consistency checks and
preparing the result collections.
|
void |
MetrumSpecs.checkAndCacheGlobalVoice(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Iterable<TpTop> topTps,
Map<TpTop,BigDecimal> tp2barnum,
Vox mainVox)
first step: every metrum name must have a preceding definition: check and expand.
|
(package private) void |
MetrumSpecs.checkNotTop(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Vox voice,
boolean isMain)
FIXME unvollständige takte aber doch noch erlaubt !?!
|
(package private) void |
MTreeCollector.checkNotTop(Vox voice)
Verify that mtree source text does appear only with top level time nodes, not with
sub-nodes.
|
void |
MetrumSpecs.expandLocalVoice(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Iterable<TpTop> topTps,
Map<TpTop,BigDecimal> tp2barnum,
Vox globalVoice,
Vox vox)
Distribute a local metric definition in "mtrees" to any subsequent measure
(only those which have a TpTop-Event!), as long as it is "running".
|
MTreeSpec |
MTreeCollector.get(Vox v,
BigDecimal t)
Return the mtree specification valid for a particular voice and measure number.
|
MTreeSpec |
MetrumSpecs.getMTree(Vox vox,
Event event) |
MTreeSpec |
MetrumSpecs.getMTree(Vox vox,
TpTop tpTop)
ATTENTION, only toTops are allowed in which an EVENT is defined!
All other measures are NOT expanded above!
|
void |
MTreeCollector.insertMVoice(Vox voice,
SortedMap<BigDecimal,M> explicitMeterNames)
Analyse the "mtree" parameter track of the global metric "M" voice.
|
void |
MTreeCollector.insertVoice_noMTreeSpecs(Vox voice)
Add the map of all measure numbers to an mtree spec for a voice which is known
to have no own/local mtree specifications.
|
void |
MTreeCollector.insertVoice(Vox voice)
Analyse the "mtree" parameter track of a particular voice which is not
the global metric "M" voice.
|
Modifier and Type | Field and Description |
---|---|
Map<Vox,List<RelWert>> |
Score_hkn.Expansion.expanded
Main result of expansion: a list of expanded RelWert per Vox.
|
Set<Vox> |
Score_hkn.Expansion.voices
All voices taking part in this expansion, as given finally on constrcution.
|
Modifier and Type | Method and Description |
---|---|
protected @Opt Vox |
Score_hkn.findVoice(@Opt String s1,
boolean errorsNotWarnings)
Auxiliary functions for sub-classes=specialized formats, to find
a voice for a particular purpose by name.
|
Modifier and Type | Method and Description |
---|---|
void |
LilypondGenerator.addPause(Rational rat,
Vox vpause,
Tp tp)
Add a pause duration to the last emmitted V-Event for later printing the
graphic voices.
|
protected void |
Score_hkn.Expansion.collectAdditionalTpRequirements(Vox v)
Collect all requirements of additional Tps into global output registers.
|
protected void |
Score_hkn.Expansion.collectTps(Set<Tp> res,
Vox v)
Collect all Tps of all events of the given voice into one set.
|
protected void |
Score_hkn.Expansion.expandHaken(Vox v,
List<RelWert> result)
Returns a list of
RelWert values by copying these from the K-voice
input and translating all Haken and DoppelHaken into these. |
protected void |
Score_hkn_vla_v00.flush_accu(int max,
List<Tp> tps,
Vox vpause,
boolean checkLastForPause)
Since a new 4/4 measure is started with every fermata-event (duration="O"="O+O"=5),
all events up to such a "maxDuration" event are accumulated and then
rendered by this method.
|
protected @Opt QualifiedRational |
Score_hkn_vox_v00.getPauseByIndex(List<Tp> tps,
@Opt Vox vpause,
int i)
Get the duration of the pause to be insert before the event on the
i-th K-time point.
|
protected @Opt QualifiedRational |
Score_hkn_vla_v00.getPauseByIndex(List<Tp> tps,
@Opt Vox vpause,
int i) |
protected float |
Score_hkn_svg_v00.getPauseByIndex(List<Tp> tps,
Vox vpause,
int i)
Pause stands with a K-Event and means a Pause BEFORE this event start.
|
protected int |
Score_hkn.getPauseIndexByIndex(List<Tp> tps,
@Opt Vox vpause,
int i,
int maxPause)
Valid pauses are numbered from 0 to maxPause, with increasing significance.
|
void |
Score_hkn_sig_v00.update(DataOutput out,
PrintWriter txt,
@Opt Vox vpause,
@Opt Vox vdur,
@Opt Vox venv,
@Opt Vox vdist,
@Opt Vox vvib)
Translate the score and write the data into a binary and into a text file.
|
void |
Score_hkn_sig_v00.update(DataOutput out,
PrintWriter txt,
@Opt Vox vpause,
@Opt Vox vdur,
@Opt Vox venv,
@Opt Vox vdist,
@Opt Vox vvib)
Translate the score and write the data into a binary and into a text file.
|
void |
Score_hkn_sig_v00.update(DataOutput out,
PrintWriter txt,
@Opt Vox vpause,
@Opt Vox vdur,
@Opt Vox venv,
@Opt Vox vdist,
@Opt Vox vvib)
Translate the score and write the data into a binary and into a text file.
|
void |
Score_hkn_sig_v00.update(DataOutput out,
PrintWriter txt,
@Opt Vox vpause,
@Opt Vox vdur,
@Opt Vox venv,
@Opt Vox vdist,
@Opt Vox vvib)
Translate the score and write the data into a binary and into a text file.
|
void |
Score_hkn_sig_v00.update(DataOutput out,
PrintWriter txt,
@Opt Vox vpause,
@Opt Vox vdur,
@Opt Vox venv,
@Opt Vox vdist,
@Opt Vox vvib)
Translate the score and write the data into a binary and into a text file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_svg_v00.update(PrintWriter pw,
String title,
@Opt String subtitle,
@Opt Vox vpause,
@Opt Vox vx,
@Opt Vox vy,
@Opt Vox vcol,
@Opt Vox vsiz,
@Opt Vox vfrm)
Convert the K-voices and write out to file.
|
void |
Score_hkn_vox_v00.update(String inputFileName,
String scoreAndPartName,
@Opt String subtitle,
@Opt Vox v_pause,
Vox v_soundness,
Vox v_height)
Convert the tscore data into a lilypond output.
|
void |
Score_hkn_vox_v00.update(String inputFileName,
String scoreAndPartName,
@Opt String subtitle,
@Opt Vox v_pause,
Vox v_soundness,
Vox v_height)
Convert the tscore data into a lilypond output.
|
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
void |
Score_hkn_vla_v00.update(String inputFileName,
String outputFileStem,
@Opt String subtitle,
@Opt Vox v_ps,
@Opt Vox v_dt0,
@Opt Vox v_dt1,
@Opt Vox v_th0,
@Opt Vox v_th1,
@Opt Vox v_ls0,
@Opt Vox v_ls1) |
protected void |
LilypondGenerator.writeGraphics(String role,
Vox inputVoice,
List<RelWert> expanded,
List<Tp> tps,
Map<Event,RelWert> event2relwert,
Map<Event,Haken> event2haken,
Map<Event,DoppelHaken> event2doppelHaken)
Append a dedicated lilypond voice to the score, which presents a
graphic symbol of the underlying K-event.
|
protected void |
Score_hkn_vox_v00.writeout(int max,
List<Tp> tps,
@Opt Vox vpause,
boolean checkLastForPause)
Generate the lilyPond commands for the sequence of K-Evenst.
|
protected void |
Score_hkn_vla_v00.writeToFormat(Score_hkn.Expansion exp,
@Opt Vox vpause)
Show one staff with output notes for the viola and changing meters caused by
whole-measure fermatas.
|
protected void |
Score_hkn_vla_v00.writeVoiceGraphics(Score_hkn.Expansion exp,
String title,
@Opt Vox v) |
Constructor and Description |
---|
Expansion(Vox... voices)
Gives the set of voices, the data and time points of which shall be considered.
|
Constructor and Description |
---|
Expansion(Set<Vox> voices)
Gives the set of voices, the data and time points of which shall be considered.
|
Modifier and Type | Field and Description |
---|---|
(package private) Vox |
MlWorat.keyVox
The dedicated voice holding the current tonal key.
|
(package private) Vox |
MlWorat.sumVox
A synthetic vox with name "~~syntheticSum" which holds for every time point in the
input data exaclty one event with all pitch classes appearing there, in any voice.
|
Vox |
Score_cwn.voiceMetric
The global voice vor metric, tempo, and global expression information.
|
Modifier and Type | Field and Description |
---|---|
protected Map<Vox,String> |
Cwn_to_lilypond.firstLabels
Maps of the labels which shall be printed before the very first staff for this voice.
|
protected Map<Vox,List<Object[]>> |
Cwn_to_sig2.results |
protected Map<Vox,String> |
Cwn_to_lilypond.shortLabels
Maps of the labels which shall be printed before the subsequent (non-first)
staves for this voice.
|
List<Vox> |
Formplan_fuge.soundVoices
List of all voices, in source order, without the "global current tonal key" voice.
|
protected Map<Vox,FunctionalInterval> |
Cwn_to_lilypond.transpositions
Maps of transpostions to be applied to the score data before writing out.
|
Modifier and Type | Method and Description |
---|---|
Vox |
MwHaiku.update(TimeScape timeScape)
Convert raw data into haiku input events.
|
Modifier and Type | Method and Description |
---|---|
protected <T> boolean |
SvgSource.check_init_def(Event firstEv,
Vox v,
Map<Event,T> map,
String pname)
Checks whether the very first event of a particular voice has a necessary parameter.
|
(package private) void |
Cwn_to_sig2.convertOneVoice(Vox voice) |
(package private) void |
Cwn_to_sig.convertOneVoice(Vox voice)
Create a new binary and a new text file and write to both the event data of the
voice object.
|
Format |
Cwn_to_lilypond.convertOneVoice(Vox voice,
boolean includeMetric,
@Opt List<Format> formatsLyrics)
Generate a format for one certain voice (possibly including metric info)
which can be read by Lilypond.
|
protected void |
Cwn_to_musicXml.convertOneVoice(Vox voice,
List<eu.bandm.music.small_musicXml.Element_part> music_results,
List<eu.bandm.music.small_musicXml.Element_score_part> index_results)
Generate a format for one certain tscore.Vox (possibly including metric info)
in musicXml 3.0 "partwise" format.
|
protected void |
GraphartScharen.convertVoice(Vox v)
Writes the complete SVG source of one(1) voice to the output printwriter.
|
protected void |
MovingForms.convertVoice(Vox v)
Generate the complete svg/smil target text for one voice.
|
protected void |
MwHaiku.dumpRawEvents(Vox v)
Debugging method, dump the events of the Haiku score: syllable text, categories and
"lastInLine" / "notLastInWord".
|
void |
Score_cwn.dumpVoice(PrintStream ps,
Vox voice)
Debugging print which prints only the time point and the pitch, if it is not
the metric voice.
|
List<Object[]> |
Cwn_to_sig2.getResult(Vox vox) |
int |
Score_cwn.normalizeEvents_midi_PPQ(Vox voice,
boolean mergePauses,
List<Event> events,
List<QualifiedRational> evStarts,
List<Boolean> repeats)
Execute
Score_cwn.normalizeEvents(Vox,boolean,List,List,List) , but
return the lcm of all duration numerators in the form required for
Midi "Parts per quarter". |
PrimeFactors |
Score_cwn.normalizeEvents(Vox voice,
boolean mergePauses,
List<Event> events,
List<QualifiedRational> evStarts,
List<Boolean> repeats)
Step through the voice, remove "hold" symbols by the prolongating the
preceding (sounding) event, merge adjacent "pause" events, and calculate the
required sub-division of a quarter for the midi realization of all.
|
protected void |
MwHaiku.printStatistics(Vox v,
PrintWriter p,
String inputfilename)
Print the whole analysed input score as a vertical table of groupings and frequencies.
|
Cwn_to_lilypond |
Cwn_to_lilypond.putLabels(Vox voice,
String firstLabel,
String shortLabel)
Set the initial=long and subsequent=short labels to be printed before the staff
of a voice.
|
Cwn_to_lilypond |
Cwn_to_lilypond.putTransposition(Vox voice,
FunctionalInterval ival)
Set a transposition to be applied to the voice before generating the lilypond source.
|
protected void |
Cwn_to_lilypond.toLilyPond_key(@Opt Vox voice,
List<Format> formats,
Event event)
Emit a lilypond diatonic key change, if the Event carries such a command.
|
protected FunctionalPitchModOctave |
Cwn_to_lilypond.transpose(@Opt Vox v,
FunctionalPitchModOctave p)
Deliver the pitch transposed UP by the interval which is assigned to the voice
in
Cwn_to_lilypond.transpositions , if any. |
protected PitchAndOctave<OctaveRegister,FunctionalPitchModOctave> |
Cwn_to_lilypond.transpose(@Opt Vox v,
PitchAndOctave<OctaveRegister,FunctionalPitchModOctave> p)
Deliver the pitch transposed UP by the interval which is assigned to the voice
in
Cwn_to_lilypond.transpositions , if any. |
protected boolean |
Formplan_fuge.voiceIsGlobal(Vox v)
Whether this voice is the global "current tonal key" voice.
|
Modifier and Type | Method and Description |
---|---|
eu.bandm.music.small_musicXml.Element_score_partwise |
Cwn_to_musicXml.convertVoices(List<Vox> voices)
Generate musicXml output for a selection of Vox elements in
Cwn_to_musicXml.score . |
Format |
Cwn_to_lilypond.convertVoices(String sourcename,
Part part,
List<Vox> voices)
Generate a format representing Lilypond source text, for one tscore soure "PART"
and the given list of voices.
|
Modifier and Type | Method and Description |
---|---|
static Vox |
Util.findVoice(Container ts,
@Opt MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
boolean generateErrors,
String voiceName)
Searches for the voice with the given name and generates messages if not found.
|
protected @Opt Vox |
RawParser.VOX_and_name(Container container,
boolean multiple)
Parse function (=test, consume and return) for
VOX_and_name ::= VOX ident
Can be called (a) in context of meta values (in a score or in a part, before the first T-line) or (b) in an accolade after the T-line. |
Modifier and Type | Method and Description |
---|---|
void |
Dumper.action(Vox vox)
Print the name of the voice and descend into its events, in source order.
|
static @Opt Location<XMLDocumentIdentifier> |
Util.firstLocation(Vox v)
Returns the location of the first event in a voice, in source text order.
|
static @Opt Location<XMLDocumentIdentifier> |
Util.lastLocation(Vox v)
Returns the location of the last event in a voice, in source text order.
|
static void |
Util.parseParamTrack(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Vox v,
String trackname,
String separator,
Translet.Parser<?> parser,
Modifiers react)
Applies a certain
Translet.Parser parser to the given parameter track. |
void |
PatternDistributor.process(Vox v)
Service access point: Process this voice and replace the pattern keywords in its
parameter track (with the name given when creating this instance) by pattern expansion.
|
static <T> void |
Util.unifyEventTimesByScalarValue(Map<T,Tp> representatives,
Function<Tp,T> tp2t,
Vox vox)
ATTENTION:
Different subdivisions are not unified automatically, e.g.
|
static <T> boolean |
Util.veryFirstEventHasRequiredParameter(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Event firstEv,
Vox v,
Map<Event,T> map,
String pname)
Checks whether the very first event of a particular voice has a necessary parameter.
|
static Iterable<Event> |
Util.voiceEvents(Vox v,
Iterable<? extends Tp> tps)
|
static <E extends Event> |
Util.voiceFilter(Vox v,
Iterable<E> it)
An
Iterable.FilterIterable over any Event Iterable which visits
only those events of a given Vox . |
static void |
Util.warnUnusedParams(MessageReceiver<SimpleMessage<XMLDocumentIdentifier>> msg,
Vox v,
Set<String> analysed,
boolean errorNotWarn)
Emits a warning or an error if the source text of a voice contains parameters
which are not analysed.
|
Modifier and Type | Field and Description |
---|---|
protected Vox |
Event.voice
The voice it belongs to.
|
Modifier and Type | Field and Description |
---|---|
protected CheckedSet<Vox> |
EventSet.voices
All voices events of which appear in the set.
|
protected CheckedMap_RD<String,Vox> |
Container.voices
Not used in Vox; in TimeScape it holds only timeless
parameters for subsequent voices
in parts with same name.
|
protected CheckedList<Vox> |
Container.voicesBySource
All voices appearing in the score, in source order
of ther first appearance.
|
Modifier and Type | Method and Description |
---|---|
Vox |
Vox.doclone()
Clones this object.
|
Vox |
__SAX_Parser.fill_Vox(Object res) |
Vox |
Event.get_voice()
The voice it belongs to.
|
Vox |
Vox.initFrom(Object o0)
Copies values of all common fields from the argument.
|
Vox |
__SAX_Parser.matchSAX_Vox() |
Modifier and Type | Method and Description |
---|---|
CheckedSet<Vox> |
EventSet.get_voices()
All voices events of which appear in the set.
|
CheckedMap_RD<String,Vox> |
Container.get_voices()
Not used in Vox; in TimeScape it holds only timeless
parameters for subsequent voices
in parts with same name.
|
CheckedList<Vox> |
Container.get_voicesBySource()
All voices appearing in the score, in source order
of ther first appearance.
|
protected CheckedMap_RD<String,Vox> |
__SAX_Parser.parse_1() |
protected CheckedSet<Vox> |
__SAX_Parser.parse_12() |
protected CheckedList<Vox> |
__SAX_Parser.parse_2() |
Modifier and Type | Method and Description |
---|---|
void |
__SAX_Writer.action(Vox e0) |
protected void |
SingleMatch.action(Vox e0) |
protected void |
Match.action(Vox e0) |
protected void |
__Formatter.action(Vox el) |
protected void |
__TREEGEN__.Inner1.Inner2.action(Vox e0) |
protected void |
MATCH_ONLY_00.action(Vox e0) |
protected void |
Dump.action(Vox e0) |
protected void |
Match.descend(Vox e0) |
protected void |
Dump.descend(Vox e0) |
void |
__SAX_Writer.dumpfields(Vox e0) |
void |
__SAX_Parser.XMLPARSER_Vox.fillFields(Vox newobj) |
void |
MATCH_ONLY_00.match(Vox e0) |
void |
__SAX_Parser.XMLPARSER_Vox.parsefields(Vox newobj) |
protected void |
Match.post(Vox e0) |
protected void |
Match.pre(Vox e0) |
protected void |
Dump.printscalars(Vox e0) |
void |
Container.put_voices(String key0,
Vox value)
Convenience un-Currying method.
|
boolean |
Event.set_voice(Vox val)
The voice it belongs to.
|
protected Format |
__Formatter.toFormat(Vox el) |
Modifier and Type | Method and Description |
---|---|
boolean |
Container.set_voices(CheckedMap_RD<String,Vox> val)
Not used in Vox; in TimeScape it holds only timeless
parameters for subsequent voices
in parts with same name.
|
boolean |
EventSet.set_voices(CheckedSet<Vox> val)
All voices events of which appear in the set.
|
boolean |
Container.set_voicesBySource(CheckedList<Vox> val)
All voices appearing in the score, in source order
of ther first appearance.
|
Constructor and Description |
---|
Event(Location<XMLDocumentIdentifier> location,
Vox voice,
Tp when)
Constructor generated according to specification #0
Constructor defined according to directive "C 0/..". |