Blender V2.61 - r43446
|
#include <AUD_EffectReader.h>
Public Member Functions | |
AUD_EffectReader (AUD_Reference< AUD_IReader > reader) | |
virtual | ~AUD_EffectReader () |
virtual bool | isSeekable () const |
virtual void | seek (int position) |
virtual int | getLength () const |
virtual int | getPosition () const |
virtual AUD_Specs | getSpecs () const |
virtual void | read (int &length, bool &eos, sample_t *buffer) |
Protected Attributes | |
AUD_Reference< AUD_IReader > | m_reader |
This reader is a base class for all effect readers that take one other reader as input.
Definition at line 40 of file AUD_EffectReader.h.
AUD_EffectReader::AUD_EffectReader | ( | AUD_Reference< AUD_IReader > | reader | ) |
Creates a new effect reader.
reader | The reader to read from. |
Definition at line 32 of file AUD_EffectReader.cpp.
References m_reader.
AUD_EffectReader::~AUD_EffectReader | ( | ) | [virtual] |
Destroys the reader.
Definition at line 37 of file AUD_EffectReader.cpp.
int AUD_EffectReader::getLength | ( | ) | const [virtual] |
Returns an approximated length of the source in samples.
Implements AUD_IReader.
Reimplemented in AUD_DelayReader, AUD_LimiterReader, AUD_LoopReader, AUD_ReverseReader, AUD_JOSResampleReader, AUD_LinearResampleReader, and AUD_SRCResampleReader.
Definition at line 51 of file AUD_EffectReader.cpp.
References m_reader.
int AUD_EffectReader::getPosition | ( | ) | const [virtual] |
Returns the position of the source as a sample count value.
Implements AUD_IReader.
Reimplemented in AUD_DelayReader, AUD_LimiterReader, AUD_LoopReader, AUD_ReverseReader, AUD_JOSResampleReader, AUD_LinearResampleReader, and AUD_SRCResampleReader.
Definition at line 56 of file AUD_EffectReader.cpp.
References m_reader.
AUD_Specs AUD_EffectReader::getSpecs | ( | ) | const [virtual] |
Returns the specification of the reader.
Implements AUD_IReader.
Reimplemented in AUD_PitchReader, AUD_ChannelMapperReader, AUD_JOSResampleReader, AUD_LinearResampleReader, and AUD_SRCResampleReader.
Definition at line 61 of file AUD_EffectReader.cpp.
References m_reader.
Referenced by AUD_ReverseReader::read().
bool AUD_EffectReader::isSeekable | ( | ) | const [virtual] |
Tells whether the source provides seeking functionality or not.
Implements AUD_IReader.
Definition at line 41 of file AUD_EffectReader.cpp.
References m_reader.
Referenced by AUD_ReverseReader::AUD_ReverseReader().
void AUD_EffectReader::read | ( | int & | length, |
bool & | eos, | ||
sample_t * | buffer | ||
) | [virtual] |
Request to read the next length samples out of the source. The buffer supplied has the needed size.
[in,out] | length | The count of samples that should be read. Shall contain the real count of samples after reading, in case there were only fewer samples available. A smaller value also indicates the end of the reader. |
[out] | eos | End of stream, whether the end is reached or not. |
[in] | buffer | The pointer to the buffer to read into. |
Implements AUD_IReader.
Reimplemented in AUD_BaseIIRFilterReader, AUD_DelayReader, AUD_FaderReader, AUD_LimiterReader, AUD_LoopReader, AUD_ReverseReader, AUD_ChannelMapperReader, AUD_ConverterReader, AUD_JOSResampleReader, AUD_LinearResampleReader, and AUD_SRCResampleReader.
Definition at line 66 of file AUD_EffectReader.cpp.
References m_reader.
void AUD_EffectReader::seek | ( | int | position | ) | [virtual] |
Seeks to a specific position in the source.
position | The position to seek for measured in samples. To get from a given time to the samples you simply have to multiply the time value in seconds with the sample rate of the reader. |
Implements AUD_IReader.
Reimplemented in AUD_DelayReader, AUD_LimiterReader, AUD_LoopReader, AUD_ReverseReader, AUD_JOSResampleReader, AUD_LinearResampleReader, and AUD_SRCResampleReader.
Definition at line 46 of file AUD_EffectReader.cpp.
References m_reader.
AUD_Reference<AUD_IReader> AUD_EffectReader::m_reader [protected] |
The reader to read from.
Definition at line 51 of file AUD_EffectReader.h.
Referenced by AUD_EffectReader(), AUD_LimiterReader::AUD_LimiterReader(), AUD_SRCResampleReader::doCallback(), AUD_DelayReader::getLength(), AUD_LoopReader::getLength(), getLength(), AUD_LimiterReader::getLength(), AUD_LinearResampleReader::getLength(), AUD_SRCResampleReader::getLength(), AUD_LimiterReader::getPosition(), getPosition(), AUD_LoopReader::getPosition(), AUD_LinearResampleReader::getPosition(), AUD_DelayReader::getPosition(), AUD_SRCResampleReader::getSpecs(), AUD_PitchReader::getSpecs(), getSpecs(), AUD_ChannelMapperReader::getSpecs(), AUD_LinearResampleReader::getSpecs(), AUD_BandPassReader::getType(), isSeekable(), AUD_FaderReader::read(), AUD_LimiterReader::read(), AUD_BandPassReader::read(), AUD_DelayReader::read(), AUD_BaseIIRFilterReader::read(), AUD_LinearResampleReader::read(), read(), AUD_LoopReader::read(), AUD_ConverterReader::read(), AUD_ChannelMapperReader::read(), AUD_SRCResampleReader::read(), AUD_ReverseReader::read(), AUD_SRCResampleReader::seek(), AUD_LimiterReader::seek(), AUD_DelayReader::seek(), AUD_LinearResampleReader::seek(), seek(), and AUD_LoopReader::seek().