libgig  3.3.0.svn21
gig::MidiRuleAlternator Class Reference

MIDI rule to automatically cycle through specified sequences of different articulations. More...

#include <gig.h>

Inheritance diagram for gig::MidiRuleAlternator:
gig::MidiRule

Classes

struct  pattern_t
 

Public Types

enum  selector_t { selector_none, selector_key_switch, selector_controller }
 

Public Attributes

uint8_t Articulations
 Number of articulations in the instrument. More...
 
String pArticulations [32]
 Names of the articulations. More...
 
range_t PlayRange
 Key range of the playable keys in the instrument. More...
 
uint8_t Patterns
 Number of alternator patterns. More...
 
struct gig::MidiRuleAlternator::pattern_t pPatterns [32]
 A pattern is a sequence of articulation numbers. More...
 
selector_t Selector
 Method by which pattern is chosen. More...
 
range_t KeySwitchRange
 Key range for key switch selector. More...
 
uint8_t Controller
 CC number for controller selector. More...
 
bool Polyphonic
 If alternator should step forward only when all notes are off. More...
 
bool Chained
 If all patterns should be chained together. More...
 

Protected Member Functions

 MidiRuleAlternator (RIFF::Chunk *_3ewg)
 
 MidiRuleAlternator ()
 
void UpdateChunks (uint8_t *pData) const
 

Friends

class Instrument
 

Detailed Description

MIDI rule to automatically cycle through specified sequences of different articulations.

The instrument must be using the smartmidi dimension.

Definition at line 804 of file gig.h.

Member Enumeration Documentation

Enumerator
selector_none 
selector_key_switch 
selector_controller 

Definition at line 825 of file gig.h.

Constructor & Destructor Documentation

gig::MidiRuleAlternator::MidiRuleAlternator ( RIFF::Chunk _3ewg)
protected
gig::MidiRuleAlternator::MidiRuleAlternator ( )
protected

Definition at line 4062 of file gig.cpp.

References gig::range_t::high, KeySwitchRange, gig::range_t::low, and PlayRange.

Member Function Documentation

void gig::MidiRuleAlternator::UpdateChunks ( uint8_t *  pData) const
protectedvirtual

Friends And Related Function Documentation

friend class Instrument
friend

Definition at line 841 of file gig.h.

Member Data Documentation

uint8_t gig::MidiRuleAlternator::Articulations

Number of articulations in the instrument.

Definition at line 806 of file gig.h.

Referenced by UpdateChunks().

bool gig::MidiRuleAlternator::Chained

If all patterns should be chained together.

Definition at line 835 of file gig.h.

Referenced by UpdateChunks().

uint8_t gig::MidiRuleAlternator::Controller

CC number for controller selector.

Definition at line 832 of file gig.h.

Referenced by UpdateChunks().

range_t gig::MidiRuleAlternator::KeySwitchRange

Key range for key switch selector.

Definition at line 831 of file gig.h.

Referenced by MidiRuleAlternator(), and UpdateChunks().

String gig::MidiRuleAlternator::pArticulations[32]

Names of the articulations.

Definition at line 807 of file gig.h.

Referenced by UpdateChunks().

uint8_t gig::MidiRuleAlternator::Patterns

Number of alternator patterns.

Definition at line 811 of file gig.h.

Referenced by UpdateChunks().

range_t gig::MidiRuleAlternator::PlayRange

Key range of the playable keys in the instrument.

Definition at line 809 of file gig.h.

Referenced by MidiRuleAlternator(), and UpdateChunks().

bool gig::MidiRuleAlternator::Polyphonic

If alternator should step forward only when all notes are off.

Definition at line 834 of file gig.h.

Referenced by UpdateChunks().

struct gig::MidiRuleAlternator::pattern_t gig::MidiRuleAlternator::pPatterns[32]

A pattern is a sequence of articulation numbers.

Referenced by UpdateChunks().

selector_t gig::MidiRuleAlternator::Selector

Method by which pattern is chosen.

Definition at line 830 of file gig.h.

Referenced by UpdateChunks().


The documentation for this class was generated from the following files: