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

Diff of /linuxsampler/trunk/src/engines/AbstractEngine.h

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

revision 2600 by schoenebeck, Sat Jun 7 00:16:03 2014 UTC revision 2611 by schoenebeck, Mon Jun 9 19:20:37 2014 UTC
# Line 104  namespace LinuxSampler { Line 104  namespace LinuxSampler {
104              AudioChannel* pDedicatedVoiceChannelLeft;  ///< encapsulates a special audio rendering buffer (left) for rendering and routing audio on a per voice basis (this is a very special case and only used for voices which lie on a note which was set with individual, dedicated FX send level)              AudioChannel* pDedicatedVoiceChannelLeft;  ///< encapsulates a special audio rendering buffer (left) for rendering and routing audio on a per voice basis (this is a very special case and only used for voices which lie on a note which was set with individual, dedicated FX send level)
105              AudioChannel* pDedicatedVoiceChannelRight; ///< encapsulates a special audio rendering buffer (right) for rendering and routing audio on a per voice basis (this is a very special case and only used for voices which lie on a note which was set with individual, dedicated FX send level)              AudioChannel* pDedicatedVoiceChannelRight; ///< encapsulates a special audio rendering buffer (right) for rendering and routing audio on a per voice basis (this is a very special case and only used for voices which lie on a note which was set with individual, dedicated FX send level)
106    
             typedef ResourceConsumer<VMParserContext> ScriptConsumer;  
   
             class ScriptResourceManager : public ResourceManager<String, VMParserContext> {  
                 protected:  
                     // implementation of derived abstract methods from 'ResourceManager'  
                     virtual VMParserContext* Create(String Key, ScriptConsumer* pConsumer, void*& pArg);  
                     virtual void         Destroy(VMParserContext* pResource, void* pArg);  
                     virtual void         OnBorrow(VMParserContext* pResource, ScriptConsumer* pConsumer, void*& pArg) {} // ignore  
                 public:  
                     ScriptResourceManager(AbstractEngine* parent) : parent(parent) {}  
                     virtual ~ScriptResourceManager() {}  
                 private:  
                     AbstractEngine* parent;  
             } scripts;  
   
107              friend class AbstractVoice;              friend class AbstractVoice;
108              friend class AbstractEngineChannel;              friend class AbstractEngineChannel;
109              template<class V, class R, class I> friend class EngineChannelBase;              template<class V, class R, class I> friend class EngineChannelBase;
110              template<class EC, class R, class S, class D> friend class VoiceBase;              template<class EC, class R, class S, class D> friend class VoiceBase;
111    
112          protected:          //protected:
113              ArrayList<EngineChannel*>  engineChannels; ///< All engine channels of a Engine instance.              ArrayList<EngineChannel*>  engineChannels; ///< All engine channels of a Engine instance.
114              ConditionServer            EngineDisabled;              ConditionServer            EngineDisabled;
115              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
# Line 164  namespace LinuxSampler { Line 149  namespace LinuxSampler {
149              virtual void ProcessChannelPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itChannelPressureEvent) = 0;              virtual void ProcessChannelPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itChannelPressureEvent) = 0;
150              virtual void ProcessPolyphonicKeyPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNotePressureEvent) = 0;              virtual void ProcessPolyphonicKeyPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNotePressureEvent) = 0;
151              virtual int  GetMinFadeOutSamples() = 0;              virtual int  GetMinFadeOutSamples() = 0;
152              virtual InstrumentScriptVM* CreateInstrumentScriptVM();              virtual void CreateInstrumentScriptVM();
153    
154          private:          private:
155              static std::map<Format, std::map<AudioOutputDevice*,AbstractEngine*> > engines;              static std::map<Format, std::map<AudioOutputDevice*,AbstractEngine*> > engines;

Legend:
Removed from v.2600  
changed lines
  Added in v.2611

  ViewVC Help
Powered by ViewVC