This class extends the length of an SDIFFile indefinitely by looping between its frames. More...
#include <LoopingSDIFFileReader.hxx>
Public Member Functions | |
LoopingSDIFFileReader (const SDIFInConfig &argSDIFInConfig) | |
You MUST give the instance the filename of the SDIF file to read. | |
~LoopingSDIFFileReader () | |
bool | Configure (const SDIFInConfig &c) |
You MUST to give the instance the filename of the SDIF file to read. | |
virtual Frame * | ReadFrame () |
This method returns the next frame from the internal buffer. | |
bool | isLooping () |
This returns true if and only if this class has been given some loop points. | |
void | AddLoop (SimpleLoopMetadata &aSimpleLoop) |
Adds a single loop point for a sample. | |
void | SetListOfLoops (std::vector< SimpleLoopMetadata > &theLoopList) |
Adds a list of loop points for a sample. | |
void | ClearLoops () |
Clears all of the loop points previously set. | |
std::vector< SimpleLoopMetadata > & | GetListOfLoops () |
Returns all of the loop points previously set. | |
void | Reset () |
Resets the SDIFFileReader to read the very first frame from the file again thereby restarting the attack stage of the sample. |
This class extends the length of an SDIFFile indefinitely by looping between its frames.
It supports looping between multiple loop points with crossfading.
Definition at line 23 of file LoopingSDIFFileReader.hxx.
CLAM::LoopingSDIFFileReader::LoopingSDIFFileReader | ( | const SDIFInConfig & | argSDIFInConfig | ) |
You MUST give the instance the filename of the SDIF file to read.
in the SDIFInConfig object.
Definition at line 4 of file LoopingSDIFFileReader.cxx.
References DEFAULT_NUMBER_OF_CROSSFADE_FRAMES.
CLAM::LoopingSDIFFileReader::~LoopingSDIFFileReader | ( | ) |
Definition at line 19 of file LoopingSDIFFileReader.cxx.
void CLAM::LoopingSDIFFileReader::AddLoop | ( | SimpleLoopMetadata & | aSimpleLoop | ) |
Adds a single loop point for a sample.
Definition at line 37 of file LoopingSDIFFileReader.cxx.
void CLAM::LoopingSDIFFileReader::ClearLoops | ( | ) |
Clears all of the loop points previously set.
Definition at line 42 of file LoopingSDIFFileReader.cxx.
bool CLAM::LoopingSDIFFileReader::Configure | ( | const SDIFInConfig & | c | ) |
You MUST to give the instance the filename of the SDIF file to read.
in the SDIFInConfig object. You can further specify which kinds of objects to read from the SDIFFile. See the doc for SDIFInConfig.
Reimplemented from CLAM::BufferedSDIFFileReader.
Definition at line 24 of file LoopingSDIFFileReader.cxx.
std::vector< SimpleLoopMetadata > & CLAM::LoopingSDIFFileReader::GetListOfLoops | ( | ) |
Returns all of the loop points previously set.
Definition at line 47 of file LoopingSDIFFileReader.cxx.
bool CLAM::LoopingSDIFFileReader::isLooping | ( | ) |
This returns true if and only if this class has been given some loop points.
Definition at line 32 of file LoopingSDIFFileReader.cxx.
Frame * CLAM::LoopingSDIFFileReader::ReadFrame | ( | ) | [virtual] |
This method returns the next frame from the internal buffer.
Reimplemented from CLAM::BufferedSDIFFileReader.
Definition at line 66 of file LoopingSDIFFileReader.cxx.
void CLAM::LoopingSDIFFileReader::Reset | ( | ) |
Resets the SDIFFileReader to read the very first frame from the file again thereby restarting the attack stage of the sample.
Definition at line 258 of file LoopingSDIFFileReader.cxx.
void CLAM::LoopingSDIFFileReader::SetListOfLoops | ( | std::vector< SimpleLoopMetadata > & | theLoopList | ) |
Adds a list of loop points for a sample.
(Note the data structure is actually a vector rather than a list.
Definition at line 52 of file LoopingSDIFFileReader.cxx.