31 |
#include "sfz.h" |
#include "sfz.h" |
32 |
|
|
33 |
namespace LinuxSampler { namespace sfz { |
namespace LinuxSampler { namespace sfz { |
34 |
|
const int MaxCCPerVoice = 128; // FIXME: too much? |
35 |
|
|
36 |
class Engine: public LinuxSampler::EngineBase<Voice, ::sfz::Region, ::sfz::Region, DiskThread, InstrumentResourceManager, ::sfz::Instrument> { |
class Engine: public LinuxSampler::EngineBase<Voice, ::sfz::Region, ::sfz::Region, DiskThread, InstrumentResourceManager, ::sfz::Instrument> { |
37 |
public: |
public: |
38 |
Engine() { } |
Engine(); |
39 |
virtual ~Engine() { } |
virtual ~Engine(); |
40 |
// implementation of abstract methods derived from class 'LinuxSampler::Engine' |
// implementation of abstract methods derived from class 'LinuxSampler::Engine' |
41 |
virtual bool DiskStreamSupported(); |
virtual bool DiskStreamSupported(); |
42 |
virtual String Description(); |
virtual String Description(); |
48 |
LinuxSampler::EngineChannel* pEngineChannel, |
LinuxSampler::EngineChannel* pEngineChannel, |
49 |
Pool<Event>::Iterator& itControlChangeEvent |
Pool<Event>::Iterator& itControlChangeEvent |
50 |
); |
); |
51 |
|
|
52 |
|
virtual void PostSetMaxVoices(int iVoices); |
53 |
|
|
54 |
friend class Voice; |
friend class Voice; |
55 |
|
friend class SfzSignalUnitRack; |
56 |
|
|
57 |
protected: |
protected: |
58 |
|
Pool<CCSignalUnit::CC>* pCCPool; |
59 |
|
Pool<Smoother>* pSmootherPool; |
60 |
|
|
61 |
virtual DiskThread* CreateDiskThread(); |
virtual DiskThread* CreateDiskThread(); |
62 |
|
|
63 |
virtual Pool<Voice>::Iterator LaunchVoice ( |
virtual Pool<Voice>::Iterator LaunchVoice ( |