pub struct MultiBranch<N, T, X> where
    N: Size<T>,
    N: Size<X>,
    T: Float,
    X: AudioNode<Sample = T>,
    X::Inputs: Size<T>,
    X::Outputs: Size<T> + Mul<N>,
    <X::Outputs as Mul<N>>::Output: Size<T>, 
{ /* private fields */ }
Expand description

Branch into a bunch of similar nodes in parallel.

Implementations

Access a contained node.

Access a contained node.

Trait Implementations

Unique ID for hashing.

Sample type for input and output.

Input arity.

Output arity.

Reset the input state of the component to an initial state where it has not processed any samples. In other words, reset time to zero. The sample rate can be set optionally. The default sample rate is 44.1 kHz. The default implementation does nothing. Read more

Process one sample.

Process up to 64 (MAX_BUFFER_SIZE) samples. The number of input and output buffers must match the number of inputs and outputs, respectively. All input and output buffers must be at least as large as size. The default implementation is a fallback that calls into tick. Read more

Ping contained AudioNodes to obtain a deterministic pseudorandom hash. The local hash includes children, too. Leaf nodes should not need to override this. If probe is true, then this is a probe for computing the network hash and set_hash should not be called yet. Read more

Route constants, latencies and frequency responses at frequency Hz from inputs to outputs. Return output signal. Default implementation marks all outputs unknown. Read more

Set node pseudorandom phase hash. Override this to use the hash. This is called from ping. It should not be called by users. The default implementation does nothing. Read more

Number of inputs.

Number of outputs.

Retrieve the next mono sample from a generator. The node must have no inputs and exactly 1 output. Read more

Retrieve the next stereo sample (left, right) from a generator. The node must have no inputs and 1 or 2 outputs. If there is just one output, duplicate it. Read more

Filter the next mono sample x. The node must have exactly 1 input and 1 output. Read more

Filter the next stereo sample (x, y). The node must have exactly 2 inputs and 2 outputs. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.