Skip to main content

ClusterHandler

Trait ClusterHandler 

Source
pub trait ClusterHandler {
    const CLUSTER: Cluster<'static>;
Show 18 methods // Required methods fn dataver(&self) -> u32; fn dataver_changed(&self); fn current_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error> where P: TLVBuilderParent; fn target_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error> where P: TLVBuilderParent; fn handle_set_target( &self, ctx: impl InvokeContext, request: SetTargetRequest<'_>, ) -> Result<(), Error>; fn handle_step( &self, ctx: impl InvokeContext, request: StepRequest<'_>, ) -> Result<(), Error>; // Provided methods fn lifecycle( &self, _ctx: impl HandlerContext, _op: LifecycleOp, ) -> Result<(), Error> { ... } fn run( &self, _ctx: impl HandlerContext, ) -> impl Future<Output = Result<(), Error>> { ... } fn resolution(&self, ctx: impl ReadContext) -> Result<u16, Error> { ... } fn step_value(&self, ctx: impl ReadContext) -> Result<u16, Error> { ... } fn unit(&self, ctx: impl ReadContext) -> Result<ClosureUnitEnum, Error> { ... } fn unit_range<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, UnitRangeStructBuilder<P>>, ) -> Result<P, Error> where P: TLVBuilderParent { ... } fn limit_range<P>( &self, ctx: impl ReadContext, builder: RangePercent100thsStructBuilder<P>, ) -> Result<P, Error> where P: TLVBuilderParent { ... } fn translation_direction( &self, ctx: impl ReadContext, ) -> Result<TranslationDirectionEnum, Error> { ... } fn rotation_axis( &self, ctx: impl ReadContext, ) -> Result<RotationAxisEnum, Error> { ... } fn overflow(&self, ctx: impl ReadContext) -> Result<OverflowEnum, Error> { ... } fn modulation_type( &self, ctx: impl ReadContext, ) -> Result<ModulationTypeEnum, Error> { ... } fn latch_control_modes( &self, ctx: impl ReadContext, ) -> Result<LatchControlModesBitmap, Error> { ... }
}
Expand description

The handler trait for the cluster.

Required Associated Constants§

Source

const CLUSTER: Cluster<'static>

The cluster-metadata corresponding to this handler trait.

Required Methods§

Source

fn dataver(&self) -> u32

Source

fn dataver_changed(&self)

Source

fn current_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error>

Source

fn target_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error>

Source

fn handle_set_target( &self, ctx: impl InvokeContext, request: SetTargetRequest<'_>, ) -> Result<(), Error>

Source

fn handle_step( &self, ctx: impl InvokeContext, request: StepRequest<'_>, ) -> Result<(), Error>

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<T> ClusterHandler for &T
where T: ClusterHandler,

Source§

const CLUSTER: Cluster<'static> = T::CLUSTER

Source§

fn dataver(&self) -> u32

Source§

fn dataver_changed(&self)

Source§

fn lifecycle( &self, ctx: impl HandlerContext, op: LifecycleOp, ) -> Result<(), Error>

Source§

fn run( &self, ctx: impl HandlerContext, ) -> impl Future<Output = Result<(), Error>>

Source§

fn current_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error>

Source§

fn target_state<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, DimensionStateStructBuilder<P>>, ) -> Result<P, Error>

Source§

fn resolution(&self, ctx: impl ReadContext) -> Result<u16, Error>

Source§

fn step_value(&self, ctx: impl ReadContext) -> Result<u16, Error>

Source§

fn unit(&self, ctx: impl ReadContext) -> Result<ClosureUnitEnum, Error>

Source§

fn unit_range<P>( &self, ctx: impl ReadContext, builder: NullableBuilder<P, UnitRangeStructBuilder<P>>, ) -> Result<P, Error>

Source§

fn limit_range<P>( &self, ctx: impl ReadContext, builder: RangePercent100thsStructBuilder<P>, ) -> Result<P, Error>

Source§

fn translation_direction( &self, ctx: impl ReadContext, ) -> Result<TranslationDirectionEnum, Error>

Source§

fn rotation_axis( &self, ctx: impl ReadContext, ) -> Result<RotationAxisEnum, Error>

Source§

fn overflow(&self, ctx: impl ReadContext) -> Result<OverflowEnum, Error>

Source§

fn modulation_type( &self, ctx: impl ReadContext, ) -> Result<ModulationTypeEnum, Error>

Source§

fn latch_control_modes( &self, ctx: impl ReadContext, ) -> Result<LatchControlModesBitmap, Error>

Source§

fn handle_set_target( &self, ctx: impl InvokeContext, request: SetTargetRequest<'_>, ) -> Result<(), Error>

Source§

fn handle_step( &self, ctx: impl InvokeContext, request: StepRequest<'_>, ) -> Result<(), Error>

Implementors§