|
MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
|
Specialized buffer for audio input with listener dispatch. More...
#include <InputAudioBuffer.hpp>
Inheritance diagram for MayaFlux::Buffers::InputAudioBuffer:
Collaboration diagram for MayaFlux::Buffers::InputAudioBuffer:Public Member Functions | |
| InputAudioBuffer (uint32_t channel_id, uint32_t num_samples) | |
| Constructor - only BufferManager can create. | |
| InputAudioBuffer (const InputAudioBuffer &)=delete | |
| Deleted copy constructor - input buffers are unique resources. | |
| InputAudioBuffer & | operator= (const InputAudioBuffer &)=delete |
| InputAudioBuffer (InputAudioBuffer &&)=delete | |
| Move constructor for resource management. | |
| InputAudioBuffer & | operator= (InputAudioBuffer &&)=delete |
| ~InputAudioBuffer ()=default | |
| void | write_to (std::shared_ptr< AudioBuffer > buffer) |
| Writes buffer data to a specific listener buffer. | |
| void | register_listener (std::shared_ptr< AudioBuffer > buffer) |
| Registers a buffer as a listener of this input. | |
| void | unregister_listener (std::shared_ptr< AudioBuffer > buffer) |
| Unregisters a listener buffer. | |
| const std::vector< std::shared_ptr< AudioBuffer > > & | get_listeners () const |
| Gets all registered listeners. | |
| void | clear_listeners () |
| Clears all registered listeners. | |
Public Member Functions inherited from MayaFlux::Buffers::AudioBuffer | |
| AudioBuffer () | |
| Creates a new uninitialized audio buffer. | |
| AudioBuffer (uint32_t channel_id, uint32_t num_samples=512) | |
| Creates a new audio buffer with specified channel and capacity. | |
| virtual | ~AudioBuffer () override=default |
| Virtual destructor for proper resource management. | |
| virtual void | setup (uint32_t channel, uint32_t num_samples) |
| Initializes the audio buffer with specified channel and capacity. | |
| virtual void | resize (uint32_t num_samples) |
| Adjusts the audio buffer's sample capacity. | |
| virtual void | clear () override |
| Resets all audio samples in the buffer to silence. | |
| virtual uint32_t | get_num_samples () const |
| Gets the current capacity of the audio buffer. | |
| virtual std::vector< double > & | get_data () |
| Gets mutable access to the buffer's underlying audio data. | |
| virtual const std::vector< double > & | get_data () const |
| Gets read-only access to the buffer's underlying audio data. | |
| virtual void | process_default () override |
| Applies the default audio transformation to the buffer's data. | |
| virtual uint32_t | get_channel_id () const |
| Gets the audio channel identifier for this buffer. | |
| void | set_channel_id (uint32_t id) |
| Sets the audio channel identifier for this buffer. | |
| virtual void | set_num_samples (uint32_t num_samples) |
| Sets the capacity of the audio buffer. | |
| virtual void | set_default_processor (std::shared_ptr< BufferProcessor > processor) override |
| Sets the default audio transformation processor for this buffer. | |
| virtual std::shared_ptr< BufferProcessor > | get_default_processor () const override |
| Gets the current default audio transformation processor. | |
| virtual std::shared_ptr< BufferProcessingChain > | get_processing_chain () override |
| Gets the audio transformation chain attached to this buffer. | |
| virtual void | set_processing_chain (std::shared_ptr< BufferProcessingChain > chain, bool force=false) override |
| Sets the audio transformation chain for this buffer. | |
| virtual double & | get_sample (uint32_t index) |
| Gets a reference to a specific audio sample in the buffer. | |
| virtual bool | has_data_for_cycle () const override |
| Checks if the audio buffer has data for the current processing cycle. | |
| virtual bool | needs_removal () const override |
| Checks if the buffer should be removed from the processing chain This is relevant when using SignalSourceContainers. | |
| virtual void | mark_for_processing (bool has_data) override |
| Marks the audio buffer for processing in the current cycle. | |
| virtual void | mark_for_removal () override |
| Marks the audio buffer for removal from processing chains. | |
| virtual void | enforce_default_processing (bool should_process) override |
| Controls whether the audio buffer should use default processing. | |
| virtual bool | needs_default_processing () override |
| Checks if the audio buffer should undergo default processing. | |
| bool | try_acquire_processing () override |
| Attempts to acquire processing rights for the buffer. | |
| void | release_processing () override |
| Releases processing rights for the buffer. | |
| bool | is_processing () const override |
| Checks if the buffer is currently being processed. | |
| virtual std::shared_ptr< AudioBuffer > | clone_to (uint32_t channel) |
| Creates a clone of this audio buffer for a specific channel. | |
| std::shared_ptr< Buffer > | clone_to (uint8_t dest_desc) override |
| Creates a clone of this buffer for a specific channel or usage enum. | |
| virtual bool | read_once (std::shared_ptr< AudioBuffer > buffer, bool force=false) |
| Reads audio data into the buffer from the audio backend. | |
| void | force_internal_usage (bool internal) override |
| Marks the buffer as internal-only, preventing root aggregation. | |
| bool | is_internal_only () const override |
| Checks if the buffer is marked as internal-only. | |
Public Member Functions inherited from MayaFlux::Buffers::Buffer | |
| virtual | ~Buffer ()=default |
| Virtual destructor for proper resource management. | |
Additional Inherited Members | |
Protected Member Functions inherited from MayaFlux::Buffers::AudioBuffer | |
| virtual std::shared_ptr< BufferProcessor > | create_default_processor () |
| Creates a default audio transformation processor for this buffer type. | |
Protected Attributes inherited from MayaFlux::Buffers::AudioBuffer | |
| uint32_t | m_channel_id |
| Audio channel identifier for this buffer. | |
| uint32_t | m_num_samples |
| Capacity of the buffer in audio samples. | |
| std::vector< double > | m_data |
| Vector storing the actual double-precision audio sample data. | |
| std::shared_ptr< BufferProcessor > | m_default_processor |
| Default audio transformation processor for this buffer. | |
| std::shared_ptr< BufferProcessingChain > | m_processing_chain |
| Audio transformation processing chain for this buffer. | |
| bool | m_has_data |
| Whether the audio buffer has data to process this cycle. | |
| bool | m_should_remove |
| Whether the audio buffer should be removed from processing chains. | |
| bool | m_process_default |
| Whether the audio buffer should be processed using its default processor. | |
Specialized buffer for audio input with listener dispatch.
Simple, focused input buffer that:
Definition at line 16 of file InputAudioBuffer.hpp.