#include <gig.h>
Inheritance diagram for gig::Instrument:
Public Member Functions | |
Region * | GetFirstRegion () |
Returns the first Region of the instrument. | |
Region * | GetNextRegion () |
Returns the next Region of the instrument. | |
Region * | GetRegion (unsigned int Key) |
Returns the appropriate Region for a triggered note. | |
Public Attributes | |
int32_t | Attenuation |
in dB | |
uint16_t | EffectSend |
int16_t | FineTune |
in cents | |
uint16_t | PitchbendRange |
Number of semitones pitchbend controller can pitch (default is 2). | |
bool | PianoReleaseMode |
range_t | DimensionKeyRange |
0-127 (where 0 means C1 and 127 means G9) | |
Protected Types | |
typedef std::list< Region * > | RegionList |
typedef std::list< Articulation * > | ArticulationList |
Protected Member Functions | |
Instrument (File *pFile, RIFF::List *insList, progress_t *pProgress=NULL) | |
~Instrument () | |
void | LoadRegions () |
Resource * | GetParent () |
Articulation * | GetFirstArticulation () |
Articulation * | GetNextArticulation () |
void | LoadArticulations () |
Protected Attributes | |
Region ** | pRegions |
Pointer array to the regions. | |
Region * | RegionKeyTable [128] |
fast lookup for the corresponding Region of a MIDI key | |
int | RegionIndex |
bool | IsDrum |
Indicates if the Instrument is a drum type, as they differ in the synthesis model of DLS from melodic instruments. | |
uint16_t | MIDIBank |
Reflects combination of MIDIBankCoarse and MIDIBankFine (bank 1 - bank 16384). | |
uint8_t | MIDIBankCoarse |
Reflects the MIDI Bank number for MIDI Control Change 0 (bank 1 - 128). | |
uint8_t | MIDIBankFine |
Reflects the MIDI Bank number for MIDI Control Change 32 (bank 1 - 128). | |
uint32_t | MIDIProgram |
Specifies the MIDI Program Change Number this Instrument should be assigned to. | |
uint32_t | Regions |
Reflects the number of Region defintions this Instrument has. | |
RIFF::List * | pCkInstrument |
RegionList::iterator | RegionsIterator |
Info * | pInfo |
Points (in any case) to an Info object, providing additional, optional infos and comments. | |
dlsid_t * | pDLSID |
Points to a dlsid_t structure if the file provided a DLS ID else is NULL. | |
Resource * | pParent |
RIFF::List * | pParentList |
ArticulationList * | pArticulations |
ArticulationList::iterator | ArticulationsIterator |
Friends | |
class | File |
Definition at line 656 of file gig.h.
|
Definition at line 303 of file DLS.h. Referenced by DLS::Articulator::LoadArticulations(). |
|
Definition at line 437 of file DLS.h. Referenced by DLS::Instrument::LoadRegions(). |
|
|
Reimplemented from DLS::Instrument. Definition at line 1677 of file gig.cpp. References pRegions, and DLS::Instrument::Regions. |
|
Definition at line 85 of file DLS.cpp. References DLS::Articulator::ArticulationsIterator, DLS::Articulator::LoadArticulations(), and DLS::Articulator::pArticulations. |
|
Returns the first Region of the instrument. You have to call this method once before you use GetNextRegion().
Reimplemented from DLS::Instrument. Definition at line 1710 of file gig.cpp. References pRegions, RegionIndex, and DLS::Instrument::Regions. Referenced by PrintRegions(). |
|
Definition at line 92 of file DLS.cpp. References DLS::Articulator::ArticulationsIterator, and DLS::Articulator::pArticulations. |
|
Returns the next Region of the instrument. You have to call GetFirstRegion() once before you can use this method. By calling this method multiple times it iterates through the available Regions.
Reimplemented from DLS::Instrument. Definition at line 1724 of file gig.cpp. References pRegions, RegionIndex, and DLS::Instrument::Regions. Referenced by PrintRegions(). |
|
Definition at line 350 of file DLS.h. References DLS::Resource::pParent. Referenced by DLS::Region::GetSample(), gig::Region::GetSampleFromWavePool(), and gig::Region::Region(). |
|
Returns the appropriate Region for a triggered note.
Definition at line 1693 of file gig.cpp. References pRegions, and RegionKeyTable. |
|
Definition at line 98 of file DLS.cpp. References DLS::Articulator::ArticulationList, RIFF::List::GetFirstSubList(), RIFF::List::GetListType(), RIFF::List::GetNextSubList(), RIFF::List::GetSubList(), LIST_TYPE_ART1, LIST_TYPE_ART2, LIST_TYPE_LAR2, LIST_TYPE_LART, DLS::Articulator::pArticulations, and DLS::Articulator::pParentList. Referenced by DLS::Articulator::GetFirstArticulation(). |
|
Definition at line 365 of file DLS.cpp. References RIFF::List::GetFirstSubList(), RIFF::List::GetListType(), RIFF::List::GetNextSubList(), RIFF::List::GetSubList(), LIST_TYPE_LRGN, LIST_TYPE_RGN, LIST_TYPE_RGN2, DLS::Instrument::pCkInstrument, DLS::Instrument::pRegions, and DLS::Instrument::RegionList. Referenced by DLS::Instrument::GetFirstRegion(). |
|
Reimplemented from DLS::Instrument. |
|
Definition at line 306 of file DLS.h. Referenced by DLS::Articulator::GetFirstArticulation(), and DLS::Articulator::GetNextArticulation(). |
|
in dB
Definition at line 669 of file gig.h. Referenced by Instrument(). |
|
0-127 (where 0 means C1 and 127 means G9)
Definition at line 674 of file gig.h. Referenced by Instrument(). |
|
Definition at line 670 of file gig.h. Referenced by Instrument(). |
|
in cents
Definition at line 671 of file gig.h. Referenced by Instrument(). |
|
Indicates if the Instrument is a drum type, as they differ in the synthesis model of DLS from melodic instruments.
Definition at line 427 of file DLS.h. Referenced by DLS::Instrument::Instrument(). |
|
Reflects combination of MIDIBankCoarse and MIDIBankFine (bank 1 - bank 16384).
Definition at line 428 of file DLS.h. Referenced by DLS::Instrument::Instrument(), and PrintInstruments(). |
|
Reflects the MIDI Bank number for MIDI Control Change 0 (bank 1 - 128).
Definition at line 429 of file DLS.h. Referenced by DLS::Instrument::Instrument(). |
|
Reflects the MIDI Bank number for MIDI Control Change 32 (bank 1 - 128).
Definition at line 430 of file DLS.h. Referenced by DLS::Instrument::Instrument(). |
|
Specifies the MIDI Program Change Number this Instrument should be assigned to.
Definition at line 431 of file DLS.h. Referenced by DLS::Instrument::Instrument(), and PrintInstruments(). |
|
Definition at line 305 of file DLS.h. Referenced by DLS::Articulator::Articulator(), DLS::Articulator::GetFirstArticulation(), DLS::Articulator::GetNextArticulation(), DLS::Articulator::LoadArticulations(), and DLS::Articulator::~Articulator(). |
|
Definition at line 443 of file DLS.h. Referenced by DLS::Instrument::Instrument(), and DLS::Instrument::LoadRegions(). |
|
Points to a dlsid_t structure if the file provided a DLS ID else is NULL.
Definition at line 348 of file DLS.h. Referenced by DLS::Resource::Resource(), and DLS::Resource::~Resource(). |
|
Definition at line 673 of file gig.h. Referenced by Instrument(). |
|
Points (in any case) to an Info object, providing additional, optional infos and comments.
Definition at line 347 of file DLS.h. Referenced by ExtractSamples(), main(), PrintDimensionRegions(), PrintInstruments(), PrintRegions(), PrintSamples(), DLS::Resource::Resource(), and DLS::Resource::~Resource(). |
|
Number of semitones pitchbend controller can pitch (default is 2).
Definition at line 672 of file gig.h. Referenced by Instrument(). |
|
Definition at line 352 of file DLS.h. Referenced by DLS::Resource::GetParent(), and DLS::Resource::Resource(). |
|
Definition at line 304 of file DLS.h. Referenced by DLS::Articulator::Articulator(), and DLS::Articulator::LoadArticulations(). |
|
Pointer array to the regions.
Reimplemented from DLS::Instrument. Definition at line 685 of file gig.h. Referenced by GetFirstRegion(), GetNextRegion(), GetRegion(), Instrument(), and ~Instrument(). |
|
Definition at line 687 of file gig.h. Referenced by GetFirstRegion(), GetNextRegion(), and Instrument(). |
|
fast lookup for the corresponding Region of a MIDI key
Definition at line 686 of file gig.h. Referenced by GetRegion(), and Instrument(). |
|
Reflects the number of Region defintions this Instrument has.
Definition at line 432 of file DLS.h. Referenced by GetFirstRegion(), GetNextRegion(), Instrument(), DLS::Instrument::Instrument(), and ~Instrument(). |
|
Definition at line 445 of file DLS.h. Referenced by DLS::Instrument::GetFirstRegion(), and DLS::Instrument::GetNextRegion(). |