libgig  4.4.1
DLS::Articulator Class Reference

Abstract base class for classes that provide articulation information (thus for Instrument and Region class). More...

#include <DLS.h>

Inheritance diagram for DLS::Articulator:
DLS::Storage DLS::Instrument DLS::Region gig::Instrument gig::Region

Public Member Functions

 Articulator (RIFF::List *ParentList)
 
ArticulationGetArticulation (size_t pos)
 Returns Articulation at supplied pos position within the articulation list. More...
 
ArticulationGetFirstArticulation ()
 Returns the first Articulation in the list of articulations. More...
 
ArticulationGetNextArticulation ()
 Returns the next Articulation from the list of articulations. More...
 
virtual void UpdateChunks (progress_t *pProgress)
 Apply all articulations to the respective RIFF chunks. More...
 
virtual void DeleteChunks ()
 Remove all RIFF chunks associated with this Articulator object. More...
 
virtual void CopyAssign (const Articulator *orig)
 Not yet implemented in this version, since the .gig format does not need to copy DLS articulators and so far nobody used pure DLS instrument AFAIK.
 

Protected Types

typedef std::vector< Articulation * > ArticulationList
 

Protected Member Functions

void LoadArticulations ()
 

Protected Attributes

RIFF::ListpParentList
 
ArticulationList * pArticulations
 
ArticulationList::iterator ArticulationsIterator
 

Detailed Description

Abstract base class for classes that provide articulation information (thus for Instrument and Region class).

Definition at line 343 of file DLS.h.

Member Function Documentation

◆ DeleteChunks()

void DLS::Articulator::DeleteChunks ( )
virtual

Remove all RIFF chunks associated with this Articulator object.

See Storage::DeleteChunks() for details.

Implements DLS::Storage.

Reimplemented in DLS::Instrument, and DLS::Region.

Definition at line 291 of file DLS.cpp.

Referenced by DLS::Region::DeleteChunks(), and DLS::Instrument::DeleteChunks().

◆ GetArticulation()

Articulation * DLS::Articulator::GetArticulation ( size_t  pos)

Returns Articulation at supplied pos position within the articulation list.

If supplied pos is out of bounds then NULL is returned.

Parameters
pos- position of sought Articulation in articulation list
Returns
pointer address to requested articulation or NULL if pos is out of bounds

Definition at line 200 of file DLS.cpp.

◆ GetFirstArticulation()

Articulation * DLS::Articulator::GetFirstArticulation ( )

Returns the first Articulation in the list of articulations.

You have to call this method once before you can use GetNextArticulation().

Returns
pointer address to first Articulation or NULL if there is none
See also
GetNextArticulation()
Deprecated:
This method is not reentrant-safe, use GetArticulation() instead.

Definition at line 216 of file DLS.cpp.

◆ GetNextArticulation()

Articulation * DLS::Articulator::GetNextArticulation ( )

Returns the next Articulation from the list of articulations.

You have to call GetFirstArticulation() once before you can use this method. By calling this method multiple times it iterates through the available articulations.

Returns
pointer address to the next Articulation or NULL if end reached
See also
GetFirstArticulation()
Deprecated:
This method is not reentrant-safe, use GetArticulation() instead.

Definition at line 234 of file DLS.cpp.

References RIFF::List::GetListType(), RIFF::List::GetSubChunkAt(), and RIFF::List::GetSubList().

◆ UpdateChunks()

void DLS::Articulator::UpdateChunks ( progress_t pProgress)
virtual

Apply all articulations to the respective RIFF chunks.

You have to call File::Save() to make changes persistent.

Parameters
pProgress- callback function for progress notification

Implements DLS::Storage.

Reimplemented in gig::Instrument, gig::Region, DLS::Instrument, and DLS::Region.

Definition at line 277 of file DLS.cpp.

Referenced by DLS::Region::UpdateChunks(), and DLS::Instrument::UpdateChunks().


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