/[svn]/linuxsampler/trunk/src/engines/gig/Engine.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/gig/Engine.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 285 by schoenebeck, Thu Oct 14 21:31:26 2004 UTC revision 392 by schoenebeck, Sat Feb 19 02:40:24 2005 UTC
# Line 72  namespace LinuxSampler { namespace gig { Line 72  namespace LinuxSampler { namespace gig {
72             ~Engine();             ~Engine();
73    
74              // abstract methods derived from class 'LinuxSampler::Engine'              // abstract methods derived from class 'LinuxSampler::Engine'
75              virtual void   LoadInstrument(const char* FileName, uint Instrument);              virtual void   PrepareLoadInstrument(const char* FileName, uint Instrument);
76                virtual void   LoadInstrument();
77              virtual void   Reset();              virtual void   Reset();
78              virtual void   Enable();              virtual void   Enable();
79              virtual void   Disable();              virtual void   Disable();
# Line 100  namespace LinuxSampler { namespace gig { Line 101  namespace LinuxSampler { namespace gig {
101              virtual String Version();              virtual String Version();
102              virtual String EngineName();              virtual String EngineName();
103              virtual String InstrumentFileName();              virtual String InstrumentFileName();
104                virtual String InstrumentName();
105              virtual int    InstrumentIndex();              virtual int    InstrumentIndex();
106              virtual int    InstrumentStatus();              virtual int    InstrumentStatus();
107    
108              // abstract methods derived from interface class 'InstrumentConsumer'              // abstract methods derived from interface class 'InstrumentConsumer'
109              virtual void ResourceToBeUpdated(::gig::Instrument* pResource, void*& pUpdateArg);              virtual void ResourceToBeUpdated(::gig::Instrument* pResource, void*& pUpdateArg);
110              virtual void ResourceUpdated(::gig::Instrument* pOldResource, ::gig::Instrument* pNewResource, void* pUpdateArg);              virtual void ResourceUpdated(::gig::Instrument* pOldResource, ::gig::Instrument* pNewResource, void* pUpdateArg);
111          protected:          //protected:
112              struct midi_key_info_t {              struct midi_key_info_t {
113                  RTList<Voice>*  pActiveVoices;  ///< Contains the active voices associated with the MIDI key.                  RTList<Voice>*  pActiveVoices;  ///< Contains the active voices associated with the MIDI key.
114                  bool            KeyPressed;     ///< Is true if the respective MIDI key is currently pressed.                  bool            KeyPressed;     ///< Is true if the respective MIDI key is currently pressed.
# Line 148  namespace LinuxSampler { namespace gig { Line 150  namespace LinuxSampler { namespace gig {
150              bool                    SustainPedal;          ///< true if sustain pedal is down              bool                    SustainPedal;          ///< true if sustain pedal is down
151              double                  GlobalVolume;          ///< overall volume (a value < 1.0 means attenuation, a value > 1.0 means amplification)              double                  GlobalVolume;          ///< overall volume (a value < 1.0 means attenuation, a value > 1.0 means amplification)
152              int                     Pitch;                 ///< Current (absolute) MIDI pitch value.              int                     Pitch;                 ///< Current (absolute) MIDI pitch value.
153                int                     CurrentKeyDimension;   ///< Current value (0-127) for the keyboard dimension, altered by pressing a keyswitching key.
154              int                     ActiveVoiceCount;      ///< number of currently active voices              int                     ActiveVoiceCount;      ///< number of currently active voices
155              int                     ActiveVoiceCountMax;   ///< the maximum voice usage since application start              int                     ActiveVoiceCountMax;   ///< the maximum voice usage since application start
156              bool                    SuspensionRequested;              bool                    SuspensionRequested;
157              ConditionServer         EngineDisabled;              ConditionServer         EngineDisabled;
158              String                  InstrumentFile;              String                  InstrumentFile;
159              int                     InstrumentIdx;              int                     InstrumentIdx;
160                String                  InstrumentIdxName;
161              int                     InstrumentStat;              int                     InstrumentStat;
162              int8_t                  ScaleTuning[12];       ///< contains optional detune factors (-64..+63 cents) for all 12 semitones of an octave              int8_t                  ScaleTuning[12];       ///< contains optional detune factors (-64..+63 cents) for all 12 semitones of an octave
163              RTList<Voice>::Iterator itLastStolenVoice;      ///< Only for voice stealing: points to the last voice which was theft in current audio fragment, NULL otherwise.              RTList<Voice>::Iterator itLastStolenVoice;      ///< Only for voice stealing: points to the last voice which was theft in current audio fragment, NULL otherwise.
# Line 165  namespace LinuxSampler { namespace gig { Line 169  namespace LinuxSampler { namespace gig {
169              void ProcessPitchbend(Pool<Event>::Iterator& itPitchbendEvent);              void ProcessPitchbend(Pool<Event>::Iterator& itPitchbendEvent);
170              void ProcessControlChange(Pool<Event>::Iterator& itControlChangeEvent);              void ProcessControlChange(Pool<Event>::Iterator& itControlChangeEvent);
171              void ProcessSysex(Pool<Event>::Iterator& itSysexEvent);              void ProcessSysex(Pool<Event>::Iterator& itSysexEvent);
172              Pool<Voice>::Iterator LaunchVoice(Pool<Event>::Iterator& itNoteOnEvent, int iLayer = 0, bool ReleaseTriggerVoice = false, bool VoiceStealing = true);              Pool<Voice>::Iterator LaunchVoice(Pool<Event>::Iterator& itNoteOnEvent, int iLayer, bool ReleaseTriggerVoice, bool VoiceStealing);
173              void StealVoice(Pool<Event>::Iterator& itNoteOnEvent);              void StealVoice(Pool<Event>::Iterator& itNoteOnEvent);
174              void FreeVoice(Pool<Voice>::Iterator& itVoice);              void FreeVoice(Pool<Voice>::Iterator& itVoice);
175                void FreeKey(midi_key_info_t* pKey);
176              void ResetSynthesisParameters(Event::destination_t dst, float val);              void ResetSynthesisParameters(Event::destination_t dst, float val);
177              void ResetInternal();              void ResetInternal();
178    

Legend:
Removed from v.285  
changed lines
  Added in v.392

  ViewVC Help
Powered by ViewVC