Index
Motif

inheritance tree

 Database

class definition

[concrete class] a data abstraction which encapsulates the two databases in the two attributes motifDescriptionDB and motifVariationDB. An instance of this class is required by MotifMixin, initMotifMixin.
A motif database is a list of arbitrary values. Example:
[motif(pitchContour:[1 1 0] comment:beethovensFifth)
motif(pitchContour:[2 0 1] comment:test)]
The format of all motif entries should be uniform. The motif database is used by the procedures defined in the motif constraints database.
NB: In case the motif database gets determined only during search, it is important that all variables have only local scope in the constraint script and consequently the database instance as well is local in the constraint script.
The motif constraint database is a list of binary procedures. The first motifVariation argument is always the constrained motif and the second argument is a 0/1-integer which states whether the constraint is applied or not (arbitrary constraints can be turned into reified constraints with the help of Combinator.'reify').

class Database (Inheritance-free)
   feat !DatabaseType
   attr motifDescriptionDB motifVariationDB
end