Skip to main content

IComponentProcess

Trait IComponentProcess 

Source
pub trait IComponentProcess<TConfig, TMsg>
where TMsg: MsgDataBound,
{ // Required method fn process<'life0, 'async_trait>( &'life0 self, config: TConfig, in_out: MsgBusLinker<TMsg>, ) -> Pin<Box<dyn Future<Output = CmpResult> + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; }
Expand description

Трейт основной функции компонента

Каждый компонент должен определить данный трейт

Required Methods§

Source

fn process<'life0, 'async_trait>( &'life0 self, config: TConfig, in_out: MsgBusLinker<TMsg>, ) -> Pin<Box<dyn Future<Output = CmpResult> + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Основная функция компонента

Implementors§

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Компонент для добавления сообщений из побочного потока

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: 'static + MsgDataBound,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg> IComponentProcess<Config<TMsg>, TMsg> for Component<Config<TMsg>, TMsg>
where TMsg: MsgDataBound + 'static,

Source§

impl<TMsg, I, Q, S> IComponentProcess<Config<TMsg, I, Q, S>, TMsg> for Component<Config<TMsg, I, Q, S>, TMsg>
where TMsg: MsgDataBound + 'static, I: Clone + Default + Send + Serialize + 'static + Sync, Q: Clone + Default + Send + Serialize + 'static + Sync, S: Clone + Default + Send + Serialize + 'static + Sync, FunctionBlockBase<I, Q, S>: IFunctionBlock<I, Q, S>,

Source§

impl<TMsg, TBuffer> IComponentProcess<Config<TMsg, TBuffer>, TMsg> for Component<Config<TMsg, TBuffer>, TMsg>
where TMsg: MsgDataBound + 'static, TBuffer: 'static + BufferBound,

Source§

impl<TMsg, TBuffer> IComponentProcess<Config<TMsg, TBuffer>, TMsg> for Component<Config<TMsg, TBuffer>, TMsg>
where TMsg: MsgDataBound + 'static, TBuffer: 'static + BufferBound,

Source§

impl<TMsg, TFnPeriodic> IComponentProcess<Config<TMsg, TFnPeriodic>, TMsg> for Component<Config<TMsg, TFnPeriodic>, TMsg>
where TMsg: 'static + MsgDataBound, TFnPeriodic: 'static + FnMut() -> Vec<TMsg> + Send + Sync,

Source§

impl<TMsg, TFnSingle> IComponentProcess<Config<TMsg, TFnSingle>, TMsg> for Component<Config<TMsg, TFnSingle>, TMsg>
where TMsg: MsgDataBound + 'static, TFnSingle: FnOnce() -> Vec<TMsg> + Send + Sync,

Source§

impl<TMsg, TI2c> IComponentProcess<Config<TMsg, TI2c>, TMsg> for Component<Config<TMsg, TI2c>, TMsg>
where TMsg: MsgDataBound + 'static, TI2c: I2c + 'static,

Source§

impl<TMsg, TI2c, TI2cRequest, TI2cResponse, TBufferData> IComponentProcess<Config<TMsg, TI2c, TI2cRequest, TI2cResponse, TBufferData>, TMsg> for Component<Config<TMsg, TI2c, TI2cRequest, TI2cResponse, TBufferData>, TMsg>
where TMsg: MsgDataBound + 'static, TI2c: I2c + 'static, TI2cRequest: Debug + DeserializeOwned + 'static, TI2cResponse: Debug + Serialize + 'static, TBufferData: BufferData + 'static,

Source§

impl<TMsg, TRmt> IComponentProcess<Config<TMsg, TRmt>, TMsg> for Component<Config<TMsg, TRmt>, TMsg>
where TMsg: MsgDataBound + 'static, TRmt: RmtChannel + 'static,

Source§

impl<TMsg, TSpi> IComponentProcess<Config<TMsg, TSpi>, TMsg> for Component<Config<TMsg, TSpi>, TMsg>
where TMsg: MsgDataBound + 'static, TSpi: Spi + SpiAnyPins + 'static,

Source§

impl<TMsg, TStorageData> IComponentProcess<Config<TMsg, TStorageData>, TMsg> for Component<Config<TMsg, TStorageData>, TMsg>
where TMsg: MsgDataBound + 'static, TStorageData: Debug + Default + DeserializeOwned + PartialEq + Serialize + 'static,