|
Blender
V2.59
|
#include <AUD_EffectReader.h>

Public Member Functions | |
| AUD_EffectReader (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, sample_t *&buffer) |
Protected Attributes | |
| AUD_IReader * | m_reader |
This reader is a base class for all effect readers that take one other reader as input.
Definition at line 41 of file AUD_EffectReader.h.
| AUD_EffectReader::AUD_EffectReader | ( | AUD_IReader * | reader | ) |
Creates a new effect reader.
| reader | The reader to read from. |
Definition at line 34 of file AUD_EffectReader.cpp.
References m_reader.
| AUD_EffectReader::~AUD_EffectReader | ( | ) | [virtual] |
| int AUD_EffectReader::getLength | ( | ) | const [virtual] |
Returns an approximated length of the source in samples. For readers of the type buffer this has to return a correct value!
Implements AUD_IReader.
Reimplemented in AUD_SRCResampleReader, AUD_LinearResampleReader, AUD_DelayReader, AUD_LoopReader, AUD_ReverseReader, and AUD_LimiterReader.
Definition at line 54 of file AUD_EffectReader.cpp.
References AUD_IReader::getLength(), and 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_SRCResampleReader, AUD_LinearResampleReader, AUD_DelayReader, AUD_LoopReader, AUD_ReverseReader, and AUD_LimiterReader.
Definition at line 59 of file AUD_EffectReader.cpp.
References AUD_IReader::getPosition(), and m_reader.
| AUD_Specs AUD_EffectReader::getSpecs | ( | ) | const [virtual] |
Returns the specification of the reader.
Implements AUD_IReader.
Reimplemented in AUD_SRCResampleReader, AUD_LinearResampleReader, AUD_ChannelMapperReader, AUD_ConverterReader, and AUD_PitchReader.
Definition at line 64 of file AUD_EffectReader.cpp.
References AUD_IReader::getSpecs(), and 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 44 of file AUD_EffectReader.cpp.
References AUD_IReader::isSeekable(), and m_reader.
Referenced by AUD_ReverseReader::AUD_ReverseReader().
| void AUD_EffectReader::read | ( | int & | length, |
| sample_t *& | buffer | ||
| ) | [virtual] |
Request to read the next length samples out of the source. The buffer for reading has to stay valid until the next call of this method or until the reader is deleted.
| [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] | buffer | The pointer to the buffer with the samples. |
Implements AUD_IReader.
Reimplemented in AUD_BaseIIRFilterReader, AUD_SRCResampleReader, AUD_BandPassReader, AUD_LinearResampleReader, AUD_FaderReader, AUD_ChannelMapperReader, AUD_DelayReader, AUD_LoopReader, AUD_ReverseReader, AUD_ConverterReader, and AUD_LimiterReader.
Definition at line 69 of file AUD_EffectReader.cpp.
References m_reader, and AUD_IReader::read().
| void AUD_EffectReader::seek | ( | int | position | ) | [virtual] |
Seeks to a specific position in the source. This function must work for buffer type readers.
| 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_SRCResampleReader, AUD_LinearResampleReader, AUD_DelayReader, AUD_LoopReader, AUD_ReverseReader, and AUD_LimiterReader.
Definition at line 49 of file AUD_EffectReader.cpp.
References m_reader, and AUD_IReader::seek().
AUD_IReader* AUD_EffectReader::m_reader [protected] |
The reader to read from.
Definition at line 52 of file AUD_EffectReader.h.
Referenced by AUD_EffectReader(), AUD_LimiterReader::AUD_LimiterReader(), AUD_SRCResampleReader::doCallback(), getLength(), AUD_LimiterReader::getLength(), AUD_LoopReader::getLength(), AUD_DelayReader::getLength(), AUD_LinearResampleReader::getLength(), AUD_SRCResampleReader::getLength(), getPosition(), AUD_LimiterReader::getPosition(), AUD_LoopReader::getPosition(), AUD_DelayReader::getPosition(), AUD_PitchReader::getSpecs(), getSpecs(), AUD_BandPassReader::getType(), isSeekable(), AUD_LimiterReader::read(), read(), AUD_ConverterReader::read(), AUD_LoopReader::read(), AUD_ReverseReader::read(), AUD_DelayReader::read(), AUD_ChannelMapperReader::read(), AUD_FaderReader::read(), AUD_LinearResampleReader::read(), AUD_BandPassReader::read(), AUD_BaseIIRFilterReader::read(), seek(), AUD_LimiterReader::seek(), AUD_LoopReader::seek(), AUD_DelayReader::seek(), AUD_LinearResampleReader::seek(), AUD_SRCResampleReader::seek(), and ~AUD_EffectReader().