Audacity 3.2.0
Public Types | Public Member Functions | List of all members
AudioGraph::Sink Class Referenceabstract

Downstream receiver of sample streams, taking Buffers as external context. More...

#include <AudioGraphSink.h>

Inheritance diagram for AudioGraph::Sink:
[legend]

Public Types

using Buffers = AudioGraph::Buffers
 

Public Member Functions

virtual ~Sink ()
 
virtual bool AcceptsBuffers (const Buffers &buffers) const =0
 
virtual bool Acquire (Buffers &data)=0
 Guarantee empty space in Buffers before they are written. More...
 
virtual bool Release (const Buffers &data, size_t curBlockSize)=0
 Acknowledge receipt of data in Buffers, which caller may then Advance() More...
 

Detailed Description

Downstream receiver of sample streams, taking Buffers as external context.

Definition at line 24 of file AudioGraphSink.h.

Member Typedef Documentation

◆ Buffers

Definition at line 26 of file AudioGraphSink.h.

Constructor & Destructor Documentation

◆ ~Sink()

AudioGraph::Sink::~Sink ( )
virtualdefault

Member Function Documentation

◆ AcceptsBuffers()

virtual bool AudioGraph::Sink::AcceptsBuffers ( const Buffers buffers) const
pure virtual

Implemented in WaveTrackSink.

Referenced by PerTrackEffect::ProcessTrack(), and AudioGraph::Task::Task().

Here is the caller graph for this function:

◆ Acquire()

virtual bool AudioGraph::Sink::Acquire ( Buffers data)
pure virtual

Guarantee empty space in Buffers before they are written.

Returns
success
Postcondition
result: !result || data.BlockSize() <= data.Remaining()

Implemented in WaveTrackSink.

◆ Release()

virtual bool AudioGraph::Sink::Release ( const Buffers data,
size_t  curBlockSize 
)
pure virtual

Acknowledge receipt of data in Buffers, which caller may then Advance()

Returns
success
Precondition
AcceptsBuffers(data)
curBlockSize <= data.BlockSize()

Implemented in WaveTrackSink.


The documentation for this class was generated from the following files: