Trait Task

Source
pub trait Task {
    // Required methods
    fn execute(&mut self) -> Schedule;
    fn name(&self) -> &String;
    fn input_count(&self) -> usize;
    fn output_count(&self) -> usize;
    fn input_id(&self, ch_id: usize) -> Option<ChannelId>;
    fn tx_count(&self, ch_id: usize) -> usize;

    // Provided method
    fn output_id(&self, ch_id: usize) -> Option<ChannelId> { ... }
}

Required Methods§

Source

fn execute(&mut self) -> Schedule

Source

fn name(&self) -> &String

Source

fn input_count(&self) -> usize

Source

fn output_count(&self) -> usize

Source

fn input_id(&self, ch_id: usize) -> Option<ChannelId>

Source

fn tx_count(&self, ch_id: usize) -> usize

Provided Methods§

Source

fn output_id(&self, ch_id: usize) -> Option<ChannelId>

Implementors§

Source§

impl<Input: Send> Task for SinkWrap<Input>

Source§

impl<Input: Send, Output: Send> Task for FilterWrap<Input, Output>

Source§

impl<Input: Send, Output: Send> Task for GatherWrap<Input, Output>

Source§

impl<Input: Send, Output: Send> Task for ScatterWrap<Input, Output>

Source§

impl<Input: Send, OutputA: Send, OutputB: Send> Task for YSplitWrap<Input, OutputA, OutputB>

Source§

impl<InputA: Send, InputB: Send, Output: Send> Task for YMergeWrap<InputA, InputB, Output>

Source§

impl<Output: 'static + Send> Task for SourceWrap<Output>