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-2016 by Christian Schoenebeck * |
* Copyright (C) 2003-2017 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 * |
671 |
virtual void UpdateChunks(progress_t* pProgress); |
virtual void UpdateChunks(progress_t* pProgress); |
672 |
void CopyAssignMeta(const Sample* orig); |
void CopyAssignMeta(const Sample* orig); |
673 |
void CopyAssignWave(const Sample* orig); |
void CopyAssignWave(const Sample* orig); |
674 |
bool VerifyWaveData(); |
uint32_t GetWaveDataCRC32Checksum(); |
675 |
|
bool VerifyWaveData(uint32_t* pActually = NULL); |
676 |
protected: |
protected: |
677 |
static size_t Instances; ///< Number of instances of class Sample. |
static size_t Instances; ///< Number of instances of class Sample. |
678 |
static buffer_t InternalDecompressionBuffer; ///< Buffer used for decompression as well as for truncation of 24 Bit -> 16 Bit samples. |
static buffer_t InternalDecompressionBuffer; ///< Buffer used for decompression as well as for truncation of 24 Bit -> 16 Bit samples. |
687 |
unsigned long FileNo; ///< File number (> 0 when sample is stored in an extension file, 0 when it's in the gig) |
unsigned long FileNo; ///< File number (> 0 when sample is stored in an extension file, 0 when it's in the gig) |
688 |
RIFF::Chunk* pCk3gix; |
RIFF::Chunk* pCk3gix; |
689 |
RIFF::Chunk* pCkSmpl; |
RIFF::Chunk* pCkSmpl; |
690 |
uint32_t crc; ///< CRC-32 checksum of the raw sample data |
uint32_t crc; ///< Reflects CRC-32 checksum of the raw sample data at the last time when the sample's raw wave form data has been modified consciously by the user by calling Write(). |
691 |
|
|
692 |
Sample(File* pFile, RIFF::List* waveList, file_offset_t WavePoolOffset, unsigned long fileNo = 0); |
Sample(File* pFile, RIFF::List* waveList, file_offset_t WavePoolOffset, unsigned long fileNo = 0, int index = -1); |
693 |
~Sample(); |
~Sample(); |
694 |
uint32_t CalculateWaveDataChecksum(); |
uint32_t CalculateWaveDataChecksum(); |
695 |
|
|
1014 |
void SetScriptAsText(const String& text); |
void SetScriptAsText(const String& text); |
1015 |
void SetGroup(ScriptGroup* pGroup); |
void SetGroup(ScriptGroup* pGroup); |
1016 |
ScriptGroup* GetGroup() const; |
ScriptGroup* GetGroup() const; |
1017 |
|
void CopyAssign(const Script* orig); |
1018 |
protected: |
protected: |
1019 |
Script(ScriptGroup* group, RIFF::Chunk* ckScri); |
Script(ScriptGroup* group, RIFF::Chunk* ckScri); |
1020 |
virtual ~Script(); |
virtual ~Script(); |
1272 |
virtual void LoadScriptGroups(); |
virtual void LoadScriptGroups(); |
1273 |
void SetSampleChecksum(Sample* pSample, uint32_t crc); |
void SetSampleChecksum(Sample* pSample, uint32_t crc); |
1274 |
uint32_t GetSampleChecksum(Sample* pSample); |
uint32_t GetSampleChecksum(Sample* pSample); |
1275 |
|
uint32_t GetSampleChecksumByIndex(int index); |
1276 |
bool VerifySampleChecksumTable(); |
bool VerifySampleChecksumTable(); |
1277 |
bool RebuildSampleChecksumTable(); |
bool RebuildSampleChecksumTable(); |
1278 |
int GetWaveTableIndexOf(gig::Sample* pSample); |
int GetWaveTableIndexOf(gig::Sample* pSample); |