591 |
void DeleteDimension(dimension_def_t* pDimDef); |
void DeleteDimension(dimension_def_t* pDimDef); |
592 |
virtual void UpdateChunks(); |
virtual void UpdateChunks(); |
593 |
protected: |
protected: |
|
typedef std::list<dimension_def_t*> DimensionList; |
|
|
|
|
594 |
uint8_t VelocityTable[128]; ///< For velocity dimensions with custom defined zone ranges only: used for fast converting from velocity MIDI value to dimension bit number. |
uint8_t VelocityTable[128]; ///< For velocity dimensions with custom defined zone ranges only: used for fast converting from velocity MIDI value to dimension bit number. |
|
DimensionList DimensionDefinitions; |
|
595 |
|
|
596 |
Region(Instrument* pInstrument, RIFF::List* rgnList); |
Region(Instrument* pInstrument, RIFF::List* rgnList); |
597 |
void LoadDimensionRegions(RIFF::List* rgn); |
void LoadDimensionRegions(RIFF::List* rgn); |
634 |
// own methods |
// own methods |
635 |
Region* GetRegion(unsigned int Key); |
Region* GetRegion(unsigned int Key); |
636 |
protected: |
protected: |
|
Region** pRegions; ///< Pointer array to the regions |
|
637 |
Region* RegionKeyTable[128]; ///< fast lookup for the corresponding Region of a MIDI key |
Region* RegionKeyTable[128]; ///< fast lookup for the corresponding Region of a MIDI key |
|
int RegionIndex; |
|
638 |
|
|
639 |
Instrument(File* pFile, RIFF::List* insList, progress_t* pProgress = NULL); |
Instrument(File* pFile, RIFF::List* insList, progress_t* pProgress = NULL); |
640 |
~Instrument(); |
~Instrument(); |
671 |
void DeleteInstrument(Instrument* pInstrument); |
void DeleteInstrument(Instrument* pInstrument); |
672 |
~File(); |
~File(); |
673 |
protected: |
protected: |
674 |
typedef std::list<Sample*> SampleList; |
std::list<RIFF::File*> ExtensionFiles; |
|
typedef std::list<Instrument*> InstrumentList; |
|
|
|
|
|
SampleList* pSamples; |
|
|
SampleList::iterator SamplesIterator; |
|
|
InstrumentList* pInstruments; |
|
|
InstrumentList::iterator InstrumentsIterator; |
|
675 |
|
|
676 |
void LoadSamples(progress_t* pProgress = NULL); |
// overridden protected methods from DLS::File |
677 |
void LoadInstruments(progress_t* pProgress = NULL); |
virtual void LoadSamples(); |
678 |
|
virtual void LoadInstruments(); |
679 |
|
// own protected methods |
680 |
|
virtual void LoadSamples(progress_t* pProgress); |
681 |
|
virtual void LoadInstruments(progress_t* pProgress); |
682 |
friend class Region; |
friend class Region; |
|
|
|
|
std::list<RIFF::File*> ExtensionFiles; |
|
683 |
}; |
}; |
684 |
|
|
685 |
/** Will be thrown whenever a gig specific error occurs while trying to access a Gigasampler File. */ |
/** Will be thrown whenever a gig specific error occurs while trying to access a Gigasampler File. */ |