vsdk  7.1.1
Vsdk::Audio::ProducerModuleImpl< T >

Producer modules should inherit this one. More...

Inheritance diagram for Vsdk::Audio::ProducerModuleImpl< T >:
Vsdk::Audio::ProducerModule

Static Public Member Functions

template<typename... Args>
static auto make (Args &&... args) -> std::shared_ptr< T >
 

Protected Member Functions

 ProducerModuleImpl ()=default
 
- Protected Member Functions inherited from Vsdk::Audio::ProducerModule
 ProducerModule ()=default
 
template<typename... Args>
void setLastError (char const *fmt, Args &&... args)
 
void setLastError (std::string error)
 
void dispatchBuffer (Buffer buffer, bool last)
 
template<typename T >
void dispatchAudio (T &&data, int sampleRate, int channelCount, bool isLast)
 

Additional Inherited Members

- Public Types inherited from Vsdk::Audio::ProducerModule
using Iterator = details::Iterator< decltype(_subscribers)>
 Iterator pointing to a subscriber of this producer. More...
 
- Public Member Functions inherited from Vsdk::Audio::ProducerModule
virtual ~ProducerModule ()=0
 
auto subscribeFirst (AudioCallback c) -> Iterator
 Subscribes as first in the list of audio buffer receivers for this producer. More...
 
auto subscribeLast (AudioCallback c) -> Iterator
 Subscribes as last in the list of audio buffer receivers for this producer. More...
 
void unsubscribe (Iterator it)
 Unsubscribes from this producer audio buffer dispatch list. More...
 
virtual bool open ()
 
virtual bool run ()
 
virtual bool start ()
 
virtual bool stop ()
 
virtual bool resume ()
 Non-blocking call. More...
 
virtual bool close ()
 
auto lastError () const -> std::string const &
 

Detailed Description

template<class T>
class Vsdk::Audio::ProducerModuleImpl< T >

Producer modules should inherit this one.

Constructor & Destructor Documentation

◆ ProducerModuleImpl()

template<class T >
Vsdk::Audio::ProducerModuleImpl< T >::ProducerModuleImpl ( )
protecteddefault

Member Function Documentation

◆ make()

template<class T >
template<typename... Args>
static auto Vsdk::Audio::ProducerModuleImpl< T >::make ( Args &&...  args) -> std::shared_ptr<T>
static