[][src]Struct oxygengine_core::events::EventChannel

pub struct EventChannel<E> { /* fields omitted */ }

Event channel

Methods

impl<E> EventChannel<E> where
    E: Event
[src]

pub fn new() -> EventChannel<E>[src]

Create a new EventChannel with a default size of 50

pub fn with_capacity(size: usize) -> EventChannel<E>[src]

Create a new EventChannel with the given starting capacity.

pub fn register_reader(&mut self) -> ReaderId<E>[src]

Register a reader.

To be able to read events, a reader id is required. This is because otherwise the channel wouldn't know where in the ringbuffer the reader has read to earlier. This information is stored in the reader id.

pub fn slice_write(&mut self, events: &[E]) where
    E: Clone
[src]

Deprecated:

please use iter_write instead

Write a slice of events into storage

pub fn iter_write<I>(&mut self, iter: I) where
    I: IntoIterator<Item = E>,
    <I as IntoIterator>::IntoIter: ExactSizeIterator
[src]

Write an iterator of events into storage

pub fn drain_vec_write(&mut self, events: &mut Vec<E>)[src]

Drain a vector of events into storage.

pub fn single_write(&mut self, event: E)[src]

Write a single event into storage.

Important traits for StorageIterator<'a, T>
pub fn read(&self, reader_id: &mut ReaderId<E>) -> StorageIterator<E>[src]

Read any events that have been written to storage since the readers last read.

Trait Implementations

impl<E> Default for EventChannel<E> where
    E: Event
[src]

Auto Trait Implementations

impl<E> Send for EventChannel<E> where
    E: Send

impl<E> Sync for EventChannel<E> where
    E: Sync

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Event for T where
    T: Send + Sync + 'static, 
[src]

impl<T> Erased for T

impl<T> Resource for T where
    T: Any + Send + Sync

impl<T> TryDefault for T where
    T: Default
[src]

fn unwrap_default() -> Self[src]

Calls try_default and panics on an error case.

impl<T> Any for T where
    T: Any

impl<T> Erased for T