51 std::shared_ptr<Nodes::Network::NodeNetwork> network,
53 bool clear_before_process =
true);
63 void processing_function(
const std::shared_ptr<Buffer>& buffer)
override;
66 [[nodiscard]]
float get_mix()
const {
return m_mix; }
68 void on_attach(
const std::shared_ptr<Buffer>& buffer)
override;
69 void on_detach(
const std::shared_ptr<Buffer>& buffer)
override;
72 std::shared_ptr<Nodes::Network::NodeNetwork>
m_network;
76 bool m_self_processing {};
110 uint32_t num_samples,
111 std::shared_ptr<Nodes::Network::NodeNetwork> network,
112 bool clear_before_process =
true);
119 void process_default()
override;
121 [[nodiscard]] std::shared_ptr<Nodes::Network::NodeNetwork>
get_network()
const {
return m_network; }
124 std::shared_ptr<BufferProcessor> create_default_processor()
override;
Concrete audio implementation of the Buffer interface for double-precision audio data.
Central computational transformation interface for continuous buffer processing.
void set_clear_before_process(bool value)
std::shared_ptr< Nodes::Network::NodeNetwork > get_network() const
std::shared_ptr< Nodes::Network::NodeNetwork > m_network
bool m_clear_before_process
bool get_clear_before_process() const
AudioBuffer that captures batch output from a NodeNetwork each cycle.
std::shared_ptr< Nodes::Network::NodeNetwork > m_network
bool m_clear_before_process
Processor that bridges NodeNetwork batch output into an AudioBuffer.
ProcessingToken
Bitfield enum defining processing characteristics and backend requirements for buffer operations.
std::vector< double > mix(const std::vector< std::vector< double > > &streams)
Mix multiple data streams with equal weighting.