Expand description
This module contains all the main definition of the traits you need to implement or interact with to create a Copper task.
Structs§
- Bincode
Adapter - Bincode Adapter for Freezable tasks This allows the use of the bincode API directly to freeze and thaw tasks.
- CuCompact
String - CuMsg
- CuMsg is the envelope holding the msg payload and the metadata between tasks.
- CuMsg
Metadata - CuMsgMetadata is a structure that contains metadata common to all CuMsgs.
Traits§
- CuMsg
Pack - CuMsg
Payload - CuSink
Task - A Sink Task is a task that only consumes messages. For example drivers for actuators are Sink Tasks.
- CuSrc
Task - A Src Task is a task that only produces messages. For example drivers for sensors are Src Tasks. They are in push mode from the runtime. To set the frequency of the pulls and align them to any hw, see the runtime configuration. Note: A source has the privilege to have a clock passed to it vs a frozen clock.
- CuTask
- This is the most generic Task of copper. It is a “transform” task deriving an output from an input.
- Freezable
- The internal state of a task needs to be serializable so the framework can take a snapshot of the task graph.