libgig  3.3.0
DLS::Region Class Reference

Defines Region information of an Instrument. More...

#include <DLS.h>

Inheritance diagram for DLS::Region:
DLS::Resource DLS::Articulator DLS::Sampler gig::Region

Public Member Functions

SampleGetSample ()
 
void SetSample (Sample *pSample)
 Assign another sample to this Region. More...
 
virtual void SetKeyRange (uint16_t Low, uint16_t High)
 Modifies the key range of this Region and makes sure the respective chunks are in correct order. More...
 
virtual void UpdateChunks ()
 Apply Region settings to the respective RIFF chunks. More...
 
ResourceGetParent ()
 
void GenerateDLSID ()
 Generates a new DLSID for the resource. More...
 
ArticulationGetFirstArticulation ()
 
ArticulationGetNextArticulation ()
 
void AddSampleLoop (sample_loop_t *pLoopDef)
 Adds a new sample loop with the provided loop definition. More...
 
void DeleteSampleLoop (sample_loop_t *pLoopDef)
 Deletes an existing sample loop. More...
 
virtual void SetGain (int32_t gain)
 

Public Attributes

range_t KeyRange
 
range_t VelocityRange
 
uint16_t KeyGroup
 
uint16_t Layer
 
bool SelfNonExclusive
 
bool PhaseMaster
 
uint16_t PhaseGroup
 
bool MultiChannel
 
uint32_t Channel
 
InfopInfo
 Points (in any case) to an Info object, providing additional, optional infos and comments. More...
 
dlsid_tpDLSID
 Points to a dlsid_t structure if the file provided a DLS ID else is NULL. More...
 
uint8_t UnityNote
 
int16_t FineTune
 
int32_t Gain
 
bool NoSampleDepthTruncation
 
bool NoSampleCompression
 
uint32_t SampleLoops
 Reflects the number of sample loops. More...
 
sample_loop_tpSampleLoops
 Points to the beginning of a sample loop array, or is NULL if there are no loops defined. More...
 

Protected Types

typedef std::list< Articulation * > ArticulationList
 

Protected Member Functions

 Region (Instrument *pInstrument, RIFF::List *rgnList)
 
virtual ~Region ()
 Destructor. More...
 
void LoadArticulations ()
 

Protected Attributes

RIFF::ListpCkRegion
 
uint32_t WavePoolTableIndex
 
SamplepSample
 
uint16_t FormatOptionFlags
 
uint16_t WaveLinkOptionFlags
 
ResourcepParent
 
RIFF::ListpResourceList
 
RIFF::ListpParentList
 
ArticulationListpArticulations
 
ArticulationList::iterator ArticulationsIterator
 
RIFF::ListpParentList
 
uint32_t uiHeaderSize
 
uint32_t SamplerOptions
 

Friends

class Instrument
 

Detailed Description

Defines Region information of an Instrument.

Definition at line 418 of file DLS.h.

Member Typedef Documentation

typedef std::list<Articulation*> DLS::Articulator::ArticulationList
protectedinherited

Definition at line 290 of file DLS.h.

Constructor & Destructor Documentation

DLS::Region::~Region ( )
protectedvirtual

Destructor.

Removes RIFF chunks associated with this Region.

Reimplemented in gig::Region.

Definition at line 910 of file DLS.cpp.

References RIFF::List::DeleteSubChunk(), RIFF::Chunk::GetParent(), pCkRegion, and DLS::Resource::pParent.

Member Function Documentation

void DLS::Sampler::AddSampleLoop ( sample_loop_t pLoopDef)
inherited

Adds a new sample loop with the provided loop definition.

Parameters
pLoopDef- points to a loop definition that is to be copied

Definition at line 576 of file DLS.cpp.

References DLS::Sampler::pSampleLoops, DLS::Sampler::SampleLoops, and DLS::sample_loop_t::Size.

void DLS::Sampler::DeleteSampleLoop ( sample_loop_t pLoopDef)
inherited

Deletes an existing sample loop.

Parameters
pLoopDef- pointer to existing loop definition
Exceptions
Exception- if given loop definition does not exist

Definition at line 598 of file DLS.cpp.

References DLS::Sampler::pSampleLoops, and DLS::Sampler::SampleLoops.

void DLS::Resource::GenerateDLSID ( )
inherited

Generates a new DLSID for the resource.

Definition at line 450 of file DLS.cpp.

References DLS::dlsid_t::abData, DLS::Resource::pDLSID, DLS::dlsid_t::ulData1, DLS::dlsid_t::usData2, and DLS::dlsid_t::usData3.

Referenced by gig::File::AddInstrument(), and gig::File::File().

Articulation * DLS::Articulator::GetFirstArticulation ( )
inherited
Articulation * DLS::Articulator::GetNextArticulation ( )
inherited
void DLS::Sampler::SetGain ( int32_t  gain)
virtualinherited

Reimplemented in gig::DimensionRegion.

Definition at line 531 of file DLS.cpp.

References DLS::Sampler::Gain.

Referenced by gig::DimensionRegion::SetGain().

void DLS::Region::SetKeyRange ( uint16_t  Low,
uint16_t  High 
)
virtual

Modifies the key range of this Region and makes sure the respective chunks are in correct order.

Parameters
Low- lower end of key range
High- upper end of key range

Reimplemented in gig::Region.

Definition at line 944 of file DLS.cpp.

References DLS::Resource::GetParent(), DLS::range_t::high, KeyRange, DLS::Instrument::LoadRegions(), DLS::range_t::low, and DLS::Instrument::pRegions.

Referenced by gig::Region::SetKeyRange().

void DLS::Region::SetSample ( Sample pSample)

Assign another sample to this Region.

Parameters
pSample- sample to be assigned

Definition at line 932 of file DLS.cpp.

References pSample, and WavePoolTableIndex.

Friends And Related Function Documentation

friend class Instrument
friend

Definition at line 443 of file DLS.h.

Member Data Documentation

ArticulationList::iterator DLS::Articulator::ArticulationsIterator
protectedinherited
uint32_t DLS::Region::Channel

Definition at line 428 of file DLS.h.

Referenced by Region(), and UpdateChunks().

int16_t DLS::Sampler::FineTune
inherited

Definition at line 359 of file DLS.h.

Referenced by DLS::Sampler::Sampler(), and DLS::Sampler::UpdateChunks().

uint16_t DLS::Region::FormatOptionFlags
protected

Definition at line 438 of file DLS.h.

Referenced by Region(), and UpdateChunks().

int32_t DLS::Sampler::Gain
inherited
uint16_t DLS::Region::KeyGroup

Definition at line 422 of file DLS.h.

Referenced by Region(), and UpdateChunks().

range_t DLS::Region::KeyRange
Deprecated:
Only read, don't write! Use SetKeyRange() instead.

Definition at line 420 of file DLS.h.

Referenced by Region(), SetKeyRange(), UpdateChunks(), and gig::Instrument::UpdateRegionKeyTable().

uint16_t DLS::Region::Layer

Definition at line 423 of file DLS.h.

Referenced by Region(), and UpdateChunks().

bool DLS::Region::MultiChannel

Definition at line 427 of file DLS.h.

Referenced by Region(), and UpdateChunks().

bool DLS::Sampler::NoSampleCompression
inherited

Definition at line 362 of file DLS.h.

Referenced by DLS::Sampler::Sampler(), and DLS::Sampler::UpdateChunks().

bool DLS::Sampler::NoSampleDepthTruncation
inherited

Definition at line 361 of file DLS.h.

Referenced by DLS::Sampler::Sampler(), and DLS::Sampler::UpdateChunks().

RIFF::List* DLS::Region::pCkRegion
protected
dlsid_t* DLS::Resource::pDLSID
inherited

Points to a dlsid_t structure if the file provided a DLS ID else is NULL.

Definition at line 342 of file DLS.h.

Referenced by DLS::Resource::GenerateDLSID(), DLS::Resource::Resource(), DLS::Resource::UpdateChunks(), and DLS::Resource::~Resource().

uint16_t DLS::Region::PhaseGroup

Definition at line 426 of file DLS.h.

Referenced by Region(), and UpdateChunks().

bool DLS::Region::PhaseMaster

Definition at line 425 of file DLS.h.

Referenced by Region(), and UpdateChunks().

Info* DLS::Resource::pInfo
inherited

Points (in any case) to an Info object, providing additional, optional infos and comments.

Definition at line 341 of file DLS.h.

Referenced by gig::File::AddInstrument(), gig::File::File(), gig::Instrument::Instrument(), DLS::Resource::Resource(), gig::Sample::Sample(), DLS::Resource::UpdateChunks(), and DLS::Resource::~Resource().

Resource* DLS::Resource::pParent
protectedinherited
RIFF::List* DLS::Articulator::pParentList
protectedinherited
RIFF::List* DLS::Resource::pResourceList
protectedinherited

Definition at line 349 of file DLS.h.

Referenced by DLS::Resource::Resource(), and DLS::Resource::UpdateChunks().

Sample* DLS::Region::pSample
protected
sample_loop_t* DLS::Sampler::pSampleLoops
inherited

Points to the beginning of a sample loop array, or is NULL if there are no loops defined.

Definition at line 364 of file DLS.h.

Referenced by DLS::Sampler::AddSampleLoop(), DLS::Sampler::DeleteSampleLoop(), gig::DimensionRegion::DimensionRegion(), gig::Sample::ReadAndLoop(), DLS::Sampler::Sampler(), DLS::Sampler::UpdateChunks(), and DLS::Sampler::~Sampler().

uint32_t DLS::Sampler::SampleLoops
inherited
uint32_t DLS::Sampler::SamplerOptions
protectedinherited
bool DLS::Region::SelfNonExclusive

Definition at line 424 of file DLS.h.

Referenced by Region(), and UpdateChunks().

uint32_t DLS::Sampler::uiHeaderSize
protectedinherited

Definition at line 372 of file DLS.h.

Referenced by DLS::Sampler::Sampler(), and DLS::Sampler::UpdateChunks().

uint8_t DLS::Sampler::UnityNote
inherited

Definition at line 358 of file DLS.h.

Referenced by DLS::Sampler::Sampler(), and DLS::Sampler::UpdateChunks().

range_t DLS::Region::VelocityRange

Definition at line 421 of file DLS.h.

Referenced by Region(), and UpdateChunks().

uint16_t DLS::Region::WaveLinkOptionFlags
protected

Definition at line 439 of file DLS.h.

Referenced by Region(), and UpdateChunks().

uint32_t DLS::Region::WavePoolTableIndex
protected

The documentation for this class was generated from the following files: