A PatternEngine is an interface for generating patterns.
The pattern itself does not define semantics (the meaning of the pattern is defined by the component that uses the pattern, e.g., SequenceEngines). The provided numbers in a pattern, for example, could be interpreted as chord offsets or as halftones. Patterns may contain wildcards, which have a special meaning that depends on what the SequenceEngine has defined the wildcards to mean.
|StringPatternEngine||Generates a pattern directly from the provided string. Gives you the most control over the results.|
|RandomFragmentPatternEngine||Generates a random pattern using provided pattern fragments. Gives you mediocre control over the results.|
|RandomPatternEngine||Generates a random pattern using lists of pitches, note lengths and pause lengths. Gives you the least control over the results.|
|CrescendoPatternEngine||Generates a crescendo or decrescendo from a given pattern fragment. Suitable for conditional patterns in the DrumSequenceEngine.|