20 #ifndef ESSENTIA_SOURCE_H
21 #define ESSENTIA_SOURCE_H
31 template<
typename TokenType>
109 template<
typename TokenType>
122 template <
typename T>
142 namespace streaming {
146 template <
typename TokenType>
151 template <
typename TokenType>
const std::string & name() const
Definition: types.h:284
ReaderID addReader()
Definition: source.h:112
Definition: streamingalgorithm.h:140
std::string fullName() const
const Algorithm * parent() const
Definition: connector.h:53
virtual BufferInfo bufferInfo() const =0
virtual void releaseForWrite(int released)=0
virtual int availableForWrite(bool contiguous=true) const =0
virtual void setBufferType(BufferUsage::BufferUsageType type)=0
virtual int totalTokensWritten() const =0
virtual ReaderID addReader(bool startFromZero=false)=0
virtual std::vector< T > & writeView()=0
virtual void removeReader(ReaderID id)=0
virtual bool acquireForWrite(int requested)=0
virtual void setBufferInfo(const BufferInfo &info)=0
virtual const T & lastTokenProduced() const =0
Definition: phantombuffer.h:60
Definition: sourcebase.h:52
virtual bool acquire(int n)
Definition: source.h:85
void removeReader(ReaderID id)
Definition: source.h:71
std::vector< TokenType > & tokens()
Definition: source.h:76
void release()
Definition: source.h:89
virtual void setBufferType(BufferUsage::BufferUsageType type)
Definition: source.h:53
MultiRateBuffer< TokenType > & typedBuffer()
Definition: source.h:51
virtual int available() const
Definition: source.h:95
const MultiRateBuffer< TokenType > & typedBuffer() const
Definition: source.h:50
virtual BufferInfo bufferInfo() const
Definition: source.h:57
virtual void setBufferInfo(const BufferInfo &info)
Definition: source.h:61
virtual void reset()
Definition: source.h:99
int totalProduced() const
Definition: source.h:65
ReaderID addReader()
Definition: source.h:67
virtual void * getFirstToken()
Definition: source.h:81
const TokenType & lastTokenProduced() const
Definition: source.h:78
Source(Algorithm *parent=0)
Definition: source.h:147
MultiRateBuffer< TokenType > * _buffer
Definition: source.h:33
const void * buffer() const
Definition: source.h:47
~Source()
Definition: source.h:43
void * buffer()
Definition: source.h:48
virtual void * getTokens()
Definition: source.h:80
virtual void release(int n)
Definition: source.h:91
TokenType & firstToken()
Definition: source.h:77
Source(const std::string &name)
Definition: source.h:152
void acquire()
Definition: source.h:83
void release()
Definition: streamconnector.h:59
bool acquire()
Definition: streamconnector.h:49
BufferUsageType
Definition: types.h:436
@ forSingleFrames
Definition: types.h:437
const T & lastTokenProduced(const SourceBase &source)
Definition: source.h:123
Definition: algorithm.h:28
std::string nameOfType(const std::type_info &type)
int ReaderID
Definition: types.h:344
#define USE_TYPE_INFO(TokenType)
Definition: types.h:332