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

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

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

revision 1686 by schoenebeck, Thu Feb 14 14:58:50 2008 UTC revision 1789 by iliev, Sat Nov 1 19:01:27 2008 UTC
# Line 22  Line 22 
22  #define __LS_ENGINECHANNEL_H__  #define __LS_ENGINECHANNEL_H__
23    
24  #include "../EventListeners.h"  #include "../EventListeners.h"
25    #include "../common/atomic.h"
26  #include "../drivers/audio/AudioOutputDevice.h"  #include "../drivers/audio/AudioOutputDevice.h"
27  #include "../drivers/midi/midi.h"  #include "../drivers/midi/midi.h"
28  #include "../drivers/midi/MidiInputDevice.h"  #include "../drivers/midi/MidiInputDevice.h"
# Line 33  Line 34 
34  namespace LinuxSampler {  namespace LinuxSampler {
35    
36      // just symbol prototyping      // just symbol prototyping
37        class Sampler;
38        class SamplerChannel;
39      class AudioOutputDevice;      class AudioOutputDevice;
40      class MidiInputPort;      class MidiInputPort;
41      class FxSend;      class FxSend;
# Line 70  namespace LinuxSampler { Line 73  namespace LinuxSampler {
73              virtual bool    StatusChanged(bool bNewStatus = false) = 0;              virtual bool    StatusChanged(bool bNewStatus = false) = 0;
74              virtual float   Volume() = 0;              virtual float   Volume() = 0;
75              virtual void    Volume(float f) = 0;              virtual void    Volume(float f) = 0;
76                virtual float   Pan() = 0;
77                virtual void    Pan(float f) = 0;
78              virtual uint    Channels() = 0;              virtual uint    Channels() = 0;
79              virtual void    Connect(AudioOutputDevice* pAudioOut) = 0;              virtual void    Connect(AudioOutputDevice* pAudioOut) = 0;
80              virtual void    DisconnectAudioOutputDevice() = 0;              virtual void    DisconnectAudioOutputDevice() = 0;
# Line 297  namespace LinuxSampler { Line 302  namespace LinuxSampler {
302               */               */
303              void SetDiskStreamCount(uint Streams);              void SetDiskStreamCount(uint Streams);
304    
305              int iSamplerChannelIndex; ///< FIXME: nasty hack, might be removed (should be 'virtual EngineChannel* EngineChannel() = 0;', but due to cyclic dependencies only a void* solution would be possible ATM)              SamplerChannel* GetSamplerChannel();
306                
307                void SetSamplerChannel(SamplerChannel* pChannel);
308    
309                /** Returns the sampler to which this channel belongs */
310                Sampler* GetSampler();
311    
312          protected:          protected:
313              EngineChannel();              EngineChannel();
# Line 326  namespace LinuxSampler { Line 336  namespace LinuxSampler {
336              bool    bProgramChangeReceived;              bool    bProgramChangeReceived;
337              bool    bMidiRpnReceived;              bool    bMidiRpnReceived;
338              int     iMidiInstrumentMap;              int     iMidiInstrumentMap;
339              uint    uiVoiceCount;              atomic_t voiceCount;
340              uint    uiDiskStreamCount;              atomic_t diskStreamCount;
341                SamplerChannel* pSamplerChannel;
342              ListenerList<FxSendCountListener*> llFxSendCountListeners;              ListenerList<FxSendCountListener*> llFxSendCountListeners;
343      };      };
344    

Legend:
Removed from v.1686  
changed lines
  Added in v.1789

  ViewVC Help
Powered by ViewVC