Enum organelle::Impulse [] [src]

pub enum Impulse<R: Synapse> {
    AddDendrite(Uuid, R, R::Dendrite),
    AddTerminal(Uuid, R, R::Terminal),
    Start(UuidSender<Impulse<R>>, Handle),
    Stop,
    Error(Error),
    Probe(SettingsSender<SomaData>),
}

a group of control signals passed between somas

Variants

add a dendrite for input to the soma

you should always expect to handle this impulse if the soma has any inputs. if your soma has inputs, it is best to wrap it with an Axon which can be used for validation purposes.

add a terminal for output to the soma

you should always expect to handle this impulse if the soma has any outputs. if your soma has outputs, it is best to wrap it with an Axon which can be used for validation purposes.

notify the soma that it has received all of its inputs and outputs

you should always expect to handle this impulse because it will be passed to each soma regardless of configuration

stop the event loop and exit gracefully

you should not expect to handle this impulse at any time, it is handled for you by the event loop

terminate the event loop with an error

this impulse will automatically be triggered if a soma update resolves with an error.

you should not expect to handle this impulse at any time, it is handled for you by the event loop

send a probe throughout the organelle

Methods

impl<R> Impulse<R> where
    R: Synapse
[src]

[src]

convert from another type of impulse

Trait Implementations

impl<R: Debug + Synapse> Debug for Impulse<R> where
    R::Dendrite: Debug,
    R::Terminal: Debug
[src]

[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl<R> !Send for Impulse<R>

impl<R> !Sync for Impulse<R>