pub struct UpdateContext<'a> {
pub node_id: NodeID,
pub stream_info: Option<&'a StreamInfo>,
/* private fields */
}Expand description
A context for AudioNode::update.
Fields§
§node_id: NodeIDThe ID of this audio node.
stream_info: Option<&'a StreamInfo>Information about the running audio stream. If no audio stream is running,
then this will be None.
Implementations§
Source§impl<'a> UpdateContext<'a>
impl<'a> UpdateContext<'a>
pub fn new( node_id: NodeID, stream_info: Option<&'a StreamInfo>, custom_state: &'a mut Option<Box<dyn Any>>, event_queue: &'a mut Vec<NodeEvent>, ) -> Self
Sourcepub fn queue_event(&mut self, event: NodeEventType)
pub fn queue_event(&mut self, event: NodeEventType)
Queue an event to send to this node’s processor counterpart.
Sourcepub fn schedule_event(&mut self, event: NodeEventType, time: EventInstant)
pub fn schedule_event(&mut self, event: NodeEventType, time: EventInstant)
Queue an event to send to this node’s processor counterpart, at a certain time.
§Performance
Note that for most nodes that handle scheduled events, this will split the buffer into chunks and process those chunks. If two events are scheduled too close to one another in time then that chunk may be too small for the audio processing to be fully vectorized.
Sourcepub fn custom_state<T: 'static>(&self) -> Option<&T>
pub fn custom_state<T: 'static>(&self) -> Option<&T>
Get an immutable reference to the custom state that was created in
AudioNodeInfo::custom_state.
Sourcepub fn custom_state_mut<T: 'static>(&mut self) -> Option<&mut T>
pub fn custom_state_mut<T: 'static>(&mut self) -> Option<&mut T>
Get a mutable reference to the custom state that was created in
AudioNodeInfo::custom_state.
Auto Trait Implementations§
impl<'a> Freeze for UpdateContext<'a>
impl<'a> !RefUnwindSafe for UpdateContext<'a>
impl<'a> !Send for UpdateContext<'a>
impl<'a> !Sync for UpdateContext<'a>
impl<'a> Unpin for UpdateContext<'a>
impl<'a> !UnwindSafe for UpdateContext<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.