/[svn]/libgig/trunk/src/DLS.h
ViewVC logotype

Diff of /libgig/trunk/src/DLS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3478 by schoenebeck, Thu Feb 21 20:10:08 2019 UTC revision 3940 by schoenebeck, Fri Jun 18 13:47:46 2021 UTC
# Line 2  Line 2 
2   *                                                                         *   *                                                                         *
3   *   libgig - C++ cross-platform Gigasampler format file access library    *   *   libgig - C++ cross-platform Gigasampler format file access library    *
4   *                                                                         *   *                                                                         *
5   *   Copyright (C) 2003-2019 by Christian Schoenebeck                      *   *   Copyright (C) 2003-2021 by Christian Schoenebeck                      *
6   *                              <cuse@users.sourceforge.net>               *   *                              <cuse@users.sourceforge.net>               *
7   *                                                                         *   *                                                                         *
8   *   This library is free software; you can redistribute it and/or modify  *   *   This library is free software; you can redistribute it and/or modify  *
# Line 343  namespace DLS { Line 343  namespace DLS {
343      class Articulator : public Storage {      class Articulator : public Storage {
344          public:          public:
345              Articulator(RIFF::List* ParentList);              Articulator(RIFF::List* ParentList);
346              Articulation* GetFirstArticulation();              Articulation* GetArticulation(size_t pos);
347              Articulation* GetNextArticulation();              Articulation* GetFirstArticulation() LIBGIG_DEPRECATED_API("Use GetArticulation() instead.");
348                Articulation* GetNextArticulation() LIBGIG_DEPRECATED_API("Use GetArticulation() instead.");
349              virtual void  UpdateChunks(progress_t* pProgress) OVERRIDE;              virtual void  UpdateChunks(progress_t* pProgress) OVERRIDE;
350              virtual void  DeleteChunks() OVERRIDE;              virtual void  DeleteChunks() OVERRIDE;
351              virtual void  CopyAssign(const Articulator* orig);              virtual void  CopyAssign(const Articulator* orig);
352          protected:          protected:
353              typedef std::list<Articulation*> ArticulationList;              typedef std::vector<Articulation*> ArticulationList;
354              RIFF::List*                 pParentList;              RIFF::List*                 pParentList;
355              ArticulationList*           pArticulations;              ArticulationList*           pArticulations;
356              ArticulationList::iterator  ArticulationsIterator;              ArticulationList::iterator  ArticulationsIterator;
# Line 529  namespace DLS { Line 530  namespace DLS {
530              uint32_t MIDIProgram;    ///< Specifies the MIDI Program Change Number this Instrument should be assigned to.              uint32_t MIDIProgram;    ///< Specifies the MIDI Program Change Number this Instrument should be assigned to.
531              uint32_t Regions;        ///< Reflects the number of <i>Region</i> defintions this Instrument has.              uint32_t Regions;        ///< Reflects the number of <i>Region</i> defintions this Instrument has.
532    
533              Region*  GetFirstRegion();              Region*  GetRegionAt(size_t pos);
534              Region*  GetNextRegion();              Region*  GetFirstRegion() LIBGIG_DEPRECATED_API("Use GetRegionAt() instead.");
535                Region*  GetNextRegion() LIBGIG_DEPRECATED_API("Use GetRegionAt() instead.");
536              Region*  AddRegion();              Region*  AddRegion();
537              void     DeleteRegion(Region* pRegion);              void     DeleteRegion(Region* pRegion);
538              virtual void UpdateChunks(progress_t* pProgress) OVERRIDE;              virtual void UpdateChunks(progress_t* pProgress) OVERRIDE;
539              virtual void DeleteChunks() OVERRIDE;              virtual void DeleteChunks() OVERRIDE;
540              virtual void CopyAssign(const Instrument* orig);              virtual void CopyAssign(const Instrument* orig);
541          protected:          protected:
542              typedef std::list<Region*> RegionList;              typedef std::vector<Region*> RegionList;
543              struct midi_locale_t {              struct midi_locale_t {
544                  uint32_t bank;                  uint32_t bank;
545                  uint32_t instrument;                  uint32_t instrument;
# Line 567  namespace DLS { Line 569  namespace DLS {
569              File(RIFF::File* pRIFF);              File(RIFF::File* pRIFF);
570              String      GetFileName();              String      GetFileName();
571              void        SetFileName(const String& name);              void        SetFileName(const String& name);
572              Sample*     GetFirstSample();     ///< Returns a pointer to the first <i>Sample</i> object of the file, <i>NULL</i> otherwise.              Sample*     GetSample(size_t index);
573              Sample*     GetNextSample();      ///< Returns a pointer to the next <i>Sample</i> object of the file, <i>NULL</i> otherwise.              Sample*     GetFirstSample() LIBGIG_DEPRECATED_API("Use GetSample() instead.");
574                Sample*     GetNextSample() LIBGIG_DEPRECATED_API("Use GetSample() instead.");
575              Sample*     AddSample();              Sample*     AddSample();
576              void        DeleteSample(Sample* pSample);              void        DeleteSample(Sample* pSample);
577              Instrument* GetFirstInstrument(); ///< Returns a pointer to the first <i>Instrument</i> object of the file, <i>NULL</i> otherwise.              Instrument* GetFirstInstrument(); ///< Returns a pointer to the first <i>Instrument</i> object of the file, <i>NULL</i> otherwise.
578              Instrument* GetNextInstrument();  ///< Returns a pointer to the next <i>Instrument</i> object of the file, <i>NULL</i> otherwise.              Instrument* GetNextInstrument();  ///< Returns a pointer to the next <i>Instrument</i> object of the file, <i>NULL</i> otherwise.
579              Instrument* AddInstrument();              Instrument* AddInstrument();
580              void        DeleteInstrument(Instrument* pInstrument);              void        DeleteInstrument(Instrument* pInstrument);
581                RIFF::File* GetRiffFile();
582              RIFF::File* GetExtensionFile(int index);              RIFF::File* GetExtensionFile(int index);
583              virtual void UpdateChunks(progress_t* pProgress) OVERRIDE;              virtual void UpdateChunks(progress_t* pProgress) OVERRIDE;
584              virtual void Save(const String& Path, progress_t* pProgress = NULL);              virtual void Save(const String& Path, progress_t* pProgress = NULL);
585              virtual void Save(progress_t* pProgress = NULL);              virtual void Save(progress_t* pProgress = NULL);
586              virtual ~File();              virtual ~File();
587          protected:          protected:
588              typedef std::list<Sample*>     SampleList;              typedef std::vector<Sample*>     SampleList;
589              typedef std::list<Instrument*> InstrumentList;              typedef std::list<Instrument*> InstrumentList;
590    
591              RIFF::File*              pRIFF;              RIFF::File*              pRIFF;

Legend:
Removed from v.3478  
changed lines
  Added in v.3940

  ViewVC Help
Powered by ViewVC