DLS.h File Reference

#include "RIFF.h"

Go to the source code of this file.

Namespaces

namespace  DLS

Classes

struct  DLS::version_t
 Quadtuple version number ("major.minor.release.build"). More...
struct  DLS::dlsid_t
 Every subject of an DLS file and the file itself can have an unique, computer generated ID. More...
struct  DLS::range_t
 Lower and upper limit of a range. More...
struct  DLS::sample_loop_t
 Defines Sample Loop Points. More...
class  DLS::Connection
 Defines a connection within the synthesis model. More...
struct  DLS::Connection::conn_block_t
class  DLS::Articulation
 Provides access to the defined connections used for the synthesis model. More...
class  DLS::Articulator
 Abstract base class for classes that provide articulation information (thus for Instrument and Region class). More...
class  DLS::Info
 Optional information for DLS files, instruments, samples, etc. More...
struct  DLS::Info::string_length_t
class  DLS::Resource
 Abstract base class which encapsulates data structures which all DLS resources are able to provide. More...
class  DLS::Sampler
 Abstract base class which provides mandatory informations about sample players in general. More...
class  DLS::Sample
 Encapsulates sample waves used for playback. More...
class  DLS::Region
 Defines Region information of an Instrument. More...
class  DLS::Instrument
 Provides all neccessary information for the synthesis of a DLS Instrument. More...
struct  DLS::Instrument::midi_locale_t
class  DLS::File
 Parses DLS Level 1 and 2 compliant files and provides abstract access to the data. More...
class  DLS::Exception
 Will be thrown whenever a DLS specific error occurs while trying to access a DLS File. More...

Defines

#define RIFF_TYPE_DLS   0x20534C44
#define LIST_TYPE_WVPL   0x6C707677
#define LIST_TYPE_DWPL   0x6C707764
 Seen on some files instead of a wvpl list chunk.
#define LIST_TYPE_WAVE   0x65766177
#define LIST_TYPE_LINS   0X736E696C
#define LIST_TYPE_INS   0X20736E69
#define LIST_TYPE_LRGN   0x6E67726C
#define LIST_TYPE_LART   0x7472616C
#define LIST_TYPE_LAR2   0x3272616C
#define LIST_TYPE_RGN   0x206E6772
#define LIST_TYPE_RGN2   0x326E6772
#define CHUNK_ID_IARL   0x4C524149
#define CHUNK_ID_IART   0x54524149
#define CHUNK_ID_ICMS   0x534D4349
#define CHUNK_ID_IGNR   0x524E4749
#define CHUNK_ID_IKEY   0x59454B49
#define CHUNK_ID_IMED   0x44454D49
#define CHUNK_ID_ISBJ   0x4A425349
#define CHUNK_ID_ISRC   0x43525349
#define CHUNK_ID_ISRF   0x46525349
#define CHUNK_ID_ITCH   0x48435449
#define CHUNK_ID_VERS   0x73726576
#define CHUNK_ID_DLID   0x64696C64
#define CHUNK_ID_FMT   0x20746D66
#define CHUNK_ID_DATA   0x61746164
#define CHUNK_ID_INSH   0x68736E69
#define CHUNK_ID_RGNH   0x686E6772
#define CHUNK_ID_WLNK   0x6B6E6C77
#define CHUNK_ID_PTBL   0x6C627470
#define CHUNK_ID_WSMP   0x706D7377
#define CHUNK_ID_COLH   0x686C6F63
#define CHUNK_ID_ARTL   0x6C747261
#define CHUNK_ID_ART2   0x32747261
#define DLS_WAVE_FORMAT_PCM   0x0001

Typedefs

typedef std::string DLS::String

Enumerations

enum  DLS::conn_src_t {
  DLS::conn_src_none = 0x0000, DLS::conn_src_lfo = 0x0001, DLS::conn_src_keyonvelocity = 0x0002, DLS::conn_src_keynumber = 0x0003,
  DLS::conn_src_eg1 = 0x0004, DLS::conn_src_eg2 = 0x0005, DLS::conn_src_pitchwheel = 0x0006, DLS::conn_src_polypressure = 0x0007,
  DLS::conn_src_channelpressure = 0x0008, DLS::conn_src_vibrato = 0x0009, DLS::conn_src_cc1 = 0x0081, DLS::conn_src_cc7 = 0x0087,
  DLS::conn_src_cc10 = 0x008A, DLS::conn_src_cc11 = 0x008B, DLS::conn_src_cc91 = 0x00DB, DLS::conn_src_cc93 = 0x00DD,
  DLS::conn_src_rpn0 = 0x0100, DLS::conn_src_rpn1 = 0x0101, DLS::conn_src_rpn2 = 0x0102
}
 Connection Sources. More...
enum  DLS::conn_dst_t {
  DLS::conn_dst_none = 0x0000, DLS::conn_dst_gain = 0x0001, DLS::conn_dst_reserved = 0x0002, DLS::conn_dst_pitch = 0x0003,
  DLS::conn_dst_pan = 0x0004, DLS::conn_dst_keynumber = 0x0005, DLS::conn_dst_left = 0x0010, DLS::conn_dst_right = 0x0011,
  DLS::conn_dst_center = 0x0012, DLS::conn_dst_lfe_channel = 0x0013, DLS::conn_dst_leftrear = 0x0014, DLS::conn_dst_rightrear = 0x0015,
  DLS::conn_dst_chorus = 0x0080, DLS::conn_dst_reverb = 0x0081, DLS::conn_dst_lfo_frequency = 0x0104, DLS::conn_dst_lfo_startdelay = 0x0105,
  DLS::conn_dst_vib_frequency = 0x0114, DLS::conn_dst_vib_startdelay = 0x0115, DLS::conn_dst_eg1_attacktime = 0x0206, DLS::conn_dst_eg1_decaytime = 0x0207,
  DLS::conn_dst_eg1_reserved = 0x0208, DLS::conn_dst_eg1_releasetime = 0x0209, DLS::conn_dst_eg1_sustainlevel = 0x020A, DLS::conn_dst_eg1_delaytime = 0x020B,
  DLS::conn_dst_eg1_holdtime = 0x020C, DLS::conn_dst_eg1_shutdowntime = 0x020D, DLS::conn_dst_eg2_attacktime = 0x030A, DLS::conn_dst_eg2_decaytime = 0x030B,
  DLS::conn_dst_eg2_reserved = 0x030C, DLS::conn_dst_eg2_releasetime = 0x030D, DLS::conn_dst_eg2_sustainlevel = 0x030E, DLS::conn_dst_eg2_delaytime = 0x030F,
  DLS::conn_dst_eg2_holdtime = 0x0310, DLS::conn_dst_filter_cutoff = 0x0500, DLS::conn_dst_filter_q = 0x0501
}
 Connection Destinations. More...
enum  DLS::conn_trn_t { DLS::conn_trn_none = 0x0000, DLS::conn_trn_concave = 0x0001, DLS::conn_trn_convex = 0x0002, DLS::conn_trn_switch = 0x0003 }
 Connection Transforms. More...

Functions

String DLS::libraryName ()
 Returns the name of this C++ library.
String DLS::libraryVersion ()
 Returns version of this C++ library.


Define Documentation

#define CHUNK_ID_ART2   0x32747261

Definition at line 96 of file DLS.h.

Referenced by DLS::Articulation::Articulation(), and DLS::Articulator::LoadArticulations().

#define CHUNK_ID_ARTL   0x6C747261

Definition at line 95 of file DLS.h.

Referenced by DLS::Articulation::Articulation(), and DLS::Articulator::LoadArticulations().

#define CHUNK_ID_COLH   0x686C6F63

Definition at line 94 of file DLS.h.

Referenced by gig::File::File(), DLS::File::File(), and DLS::File::UpdateChunks().

#define CHUNK_ID_DATA   0x61746164

Definition at line 88 of file DLS.h.

Referenced by DLS::Sample::Resize(), and DLS::Sample::Sample().

#define CHUNK_ID_DLID   0x64696C64

Definition at line 86 of file DLS.h.

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

#define CHUNK_ID_FMT   0x20746D66

Definition at line 87 of file DLS.h.

Referenced by gig::File::AddSample(), DLS::Sample::Sample(), and DLS::Sample::UpdateChunks().

#define CHUNK_ID_IARL   0x4C524149

Definition at line 75 of file DLS.h.

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

#define CHUNK_ID_IART   0x54524149

Definition at line 76 of file DLS.h.

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

#define CHUNK_ID_ICMS   0x534D4349

Definition at line 77 of file DLS.h.

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

#define CHUNK_ID_IGNR   0x524E4749

Definition at line 78 of file DLS.h.

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

#define CHUNK_ID_IKEY   0x59454B49

Definition at line 79 of file DLS.h.

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

#define CHUNK_ID_IMED   0x44454D49

Definition at line 80 of file DLS.h.

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

#define CHUNK_ID_INSH   0x68736E69

Definition at line 89 of file DLS.h.

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

#define CHUNK_ID_ISBJ   0x4A425349

Definition at line 81 of file DLS.h.

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

#define CHUNK_ID_ISRC   0x43525349

Definition at line 82 of file DLS.h.

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

#define CHUNK_ID_ISRF   0x46525349

Definition at line 83 of file DLS.h.

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

#define CHUNK_ID_ITCH   0x48435449

Definition at line 84 of file DLS.h.

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

#define CHUNK_ID_PTBL   0x6C627470

Definition at line 92 of file DLS.h.

Referenced by DLS::File::__ensureMandatoryChunksExist(), DLS::File::File(), gig::Group::UpdateChunks(), and DLS::File::UpdateChunks().

#define CHUNK_ID_RGNH   0x686E6772

Definition at line 90 of file DLS.h.

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

#define CHUNK_ID_VERS   0x73726576

Definition at line 85 of file DLS.h.

Referenced by gig::File::File(), DLS::File::File(), and DLS::File::UpdateChunks().

#define CHUNK_ID_WLNK   0x6B6E6C77

Definition at line 91 of file DLS.h.

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

#define CHUNK_ID_WSMP   0x706D7377

Definition at line 93 of file DLS.h.

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

#define DLS_WAVE_FORMAT_PCM   0x0001

Definition at line 99 of file DLS.h.

Referenced by DLS::Sample::GetSize(), DLS::Sample::Read(), DLS::Sample::Resize(), DLS::Sample::Sample(), DLS::Sample::SetPos(), DLS::Sample::UpdateChunks(), and DLS::Sample::Write().

#define LIST_TYPE_DWPL   0x6C707764

Seen on some files instead of a wvpl list chunk.

Definition at line 66 of file DLS.h.

Referenced by DLS::File::LoadSamples().

#define LIST_TYPE_INS   0X20736E69

Definition at line 69 of file DLS.h.

Referenced by gig::File::AddInstrument(), DLS::File::AddInstrument(), gig::File::LoadInstruments(), DLS::File::LoadInstruments(), and DLS::Info::UpdateChunks().

#define LIST_TYPE_LAR2   0x3272616C

Definition at line 72 of file DLS.h.

Referenced by DLS::Articulator::LoadArticulations().

#define LIST_TYPE_LART   0x7472616C

Definition at line 71 of file DLS.h.

Referenced by gig::Instrument::Instrument(), DLS::Articulator::LoadArticulations(), and gig::Instrument::UpdateChunks().

#define LIST_TYPE_LINS   0X736E696C

Definition at line 68 of file DLS.h.

Referenced by DLS::File::__ensureMandatoryChunksExist(), gig::File::AddInstrument(), DLS::File::AddInstrument(), gig::File::LoadInstruments(), and DLS::File::LoadInstruments().

#define LIST_TYPE_LRGN   0x6E67726C

Definition at line 70 of file DLS.h.

Referenced by gig::Instrument::AddRegion(), DLS::Instrument::AddRegion(), gig::Instrument::Instrument(), and DLS::Instrument::LoadRegions().

#define LIST_TYPE_RGN   0x206E6772

Definition at line 73 of file DLS.h.

Referenced by gig::Instrument::AddRegion(), DLS::Instrument::AddRegion(), gig::Instrument::Instrument(), and DLS::Instrument::LoadRegions().

#define LIST_TYPE_RGN2   0x326E6772

Definition at line 74 of file DLS.h.

Referenced by DLS::Instrument::LoadRegions().

#define LIST_TYPE_WAVE   0x65766177

Definition at line 67 of file DLS.h.

Referenced by gig::File::AddSample(), DLS::File::AddSample(), gig::File::LoadSamples(), and DLS::File::LoadSamples().

#define LIST_TYPE_WVPL   0x6C707677

Definition at line 65 of file DLS.h.

Referenced by DLS::File::__ensureMandatoryChunksExist(), gig::File::AddSample(), DLS::File::AddSample(), gig::File::LoadSamples(), and DLS::File::LoadSamples().

#define RIFF_TYPE_DLS   0x20534C44

Definition at line 64 of file DLS.h.

Referenced by DLS::Info::UpdateChunks().


Generated on Sun May 1 03:22:46 2011 for libgig by  doxygen 1.5.2