/[svn]/linuxsampler/trunk/src/engines/common/AbstractVoice.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/common/AbstractVoice.h

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

revision 2298 by iliev, Fri Dec 9 17:04:24 2011 UTC revision 2559 by schoenebeck, Sun May 18 17:38:25 2014 UTC
# Line 4  Line 4 
4   *                                                                         *   *                                                                         *
5   *   Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck    *   *   Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck    *
6   *   Copyright (C) 2005-2008 Christian Schoenebeck                         *   *   Copyright (C) 2005-2008 Christian Schoenebeck                         *
7   *   Copyright (C) 2009-2011 Christian Schoenebeck and Grigor Iliev        *   *   Copyright (C) 2009-2012 Christian Schoenebeck and Grigor Iliev        *
8   *                                                                         *   *                                                                         *
9   *   This program is free software; you can redistribute it and/or modify  *   *   This program is free software; you can redistribute it and/or modify  *
10   *   it under the terms of the GNU General Public License as published by  *   *   it under the terms of the GNU General Public License as published by  *
# Line 84  namespace LinuxSampler { Line 84  namespace LinuxSampler {
84              type_t       Type;         ///< Voice Type (bit field, a voice may have several types)              type_t       Type;         ///< Voice Type (bit field, a voice may have several types)
85              int          MIDIKey;      ///< MIDI key number of the key that triggered the voice              int          MIDIKey;      ///< MIDI key number of the key that triggered the voice
86              uint8_t      MIDIVelocity; ///< MIDI velocity of the key that triggered the voice              uint8_t      MIDIVelocity; ///< MIDI velocity of the key that triggered the voice
87              uint8_t      MIDIPan;      ///< the current MIDI pan value              int          MIDIPan;      ///< the current MIDI pan value plus the value from RegionInfo
88                            
89              SignalUnitRack* const pSignalUnitRack;              SignalUnitRack* const pSignalUnitRack;
90    
# Line 123  namespace LinuxSampler { Line 123  namespace LinuxSampler {
123              void UpdatePortamentoPos(Pool<Event>::Iterator& itNoteOffEvent);              void UpdatePortamentoPos(Pool<Event>::Iterator& itNoteOffEvent);
124              void Kill(Pool<Event>::Iterator& itKillEvent);              void Kill(Pool<Event>::Iterator& itKillEvent);
125              void CreateEq();              void CreateEq();
126                void onScaleTuningChanged();
127    
128              bool                Orphan;             ///< true if this voice is playing a sample from an instrument that is unloaded. When the voice dies, the sample (and dimension region) will be handed back to the instrument resource manager.              bool                Orphan;             ///< true if this voice is playing a sample from an instrument that is unloaded. When the voice dies, the sample (and dimension region) will be handed back to the instrument resource manager.
129              playback_state_t    PlaybackState;      ///< When a sample will be triggered, it will be first played from RAM cache and after a couple of sample points it will switch to disk streaming and at the end of a disk stream we have to add null samples, so the interpolator can do it's work correctly              playback_state_t    PlaybackState;      ///< When a sample will be triggered, it will be first played from RAM cache and after a couple of sample points it will switch to disk streaming and at the end of a disk stream we have to add null samples, so the interpolator can do it's work correctly
# Line 293  namespace LinuxSampler { Line 294  namespace LinuxSampler {
294    
295              virtual void    GetFirstEventOnKey(uint8_t MIDIKey, RTList<Event>::Iterator& itEvent) = 0;              virtual void    GetFirstEventOnKey(uint8_t MIDIKey, RTList<Event>::Iterator& itEvent) = 0;
296              virtual void    ProcessCCEvent(RTList<Event>::Iterator& itEvent) = 0;              virtual void    ProcessCCEvent(RTList<Event>::Iterator& itEvent) = 0;
297                virtual void    ProcessChannelPressureEvent(RTList<Event>::Iterator& itEvent) = 0;
298                virtual void    ProcessPolyphonicKeyPressureEvent(RTList<Event>::Iterator& itEvent) = 0;
299              virtual void    ProcessCutoffEvent(RTList<Event>::Iterator& itEvent) = 0;              virtual void    ProcessCutoffEvent(RTList<Event>::Iterator& itEvent) = 0;
300              virtual double  GetVelocityRelease(uint8_t MIDIKeyVelocity) = 0;              virtual double  GetVelocityRelease(uint8_t MIDIKeyVelocity) = 0;
301    
# Line 300  namespace LinuxSampler { Line 303  namespace LinuxSampler {
303    
304              virtual void    ProcessGroupEvent(RTList<Event>::Iterator& itEvent) = 0;              virtual void    ProcessGroupEvent(RTList<Event>::Iterator& itEvent) = 0;
305              void            EnterReleaseStage();              void            EnterReleaseStage();
306    
307                virtual int     CalculatePan(uint8_t pan) = 0;
308      };      };
309  } // namespace LinuxSampler  } // namespace LinuxSampler
310    

Legend:
Removed from v.2298  
changed lines
  Added in v.2559

  ViewVC Help
Powered by ViewVC