Producer modules with an accessible constructor should inherit this one. More...
Public Member Functions | |
ProducerModuleImpl ()=default | |
Public Member Functions inherited from Vsdk::Audio::ProducerModule | |
ProducerModule () | |
ProducerModule (ProducerModule &&) | |
ProducerModule & | operator= (ProducerModule &&) |
virtual | ~ProducerModule ()=0 |
ProducerModule (ProducerModule const &)=delete | |
ProducerModule & | operator= (ProducerModule const &)=delete |
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) noexcept |
Unsubscribes from this producer audio buffer dispatch list. More... | |
auto | lastError () const -> std::string |
auto | state () const -> State |
bool | isOpened () const |
bool | isRunning () const |
bool | isStarted () const |
bool | isPaused () const |
bool | isIdle () const |
bool | isClosed () const |
bool | open () noexcept |
Attempts to open the underlying resource(s) of the producer. More... | |
bool | run () noexcept |
bool | start () noexcept |
bool | pause () noexcept |
Attempts to pause a started producer. More... | |
bool | resume () noexcept |
Attempts to resume a paused producer. More... | |
bool | stop () noexcept |
Attempts to stop a started producer. More... | |
bool | close () noexcept |
Static Public Member Functions | |
template<typename... Args> | |
static auto | make (Args &&... args) -> std::shared_ptr< T > |
Additional Inherited Members | |
Public Types inherited from Vsdk::Audio::ProducerModule | |
enum | State { State::Closed, State::Opened, State::Running, State::Started, State::Paused, State::Idle } |
using | Iterator = details::Iterator< decltype(_subscribers)> |
Iterator pointing to a subscriber of this producer. More... | |
Protected Member Functions inherited from Vsdk::Audio::ProducerModule | |
virtual void | openImpl () |
virtual void | runImpl () |
virtual void | startImpl () |
virtual void | pauseImpl () |
virtual void | resumeImpl () |
virtual void | stopImpl () |
virtual void | closeImpl () |
void | dispatchBuffer (Buffer buffer, bool last) |
template<typename T > | |
void | dispatchAudio (T &&data, int sampleRate, int channelCount, bool isLast) |
Protected Attributes inherited from Vsdk::Audio::ProducerModule | |
std::atomic< State > | _state |
Producer modules with an accessible constructor should inherit this one.
|
default |
|
static |