chalkydri::subsystem

Trait Subsystem

Source
pub(crate) trait Subsystem<'fr>: Sized + Actor {
    type Config;
    type Output: Send + 'static;
    type Error: Debug + Send + 'static;

    // Required method
    async fn init(cfg: Self::Config) -> Result<Addr<Self>, Self::Error>;
}
Expand description

A processing subsystem

Subsystems implement different computer vision tasks, such as AprilTags or object detection.

A subsystem should be generic, not something that is only used for some specific aspect of a game. For example, note detection for the 2024 game, Crescendo, would go under the object detection subsystem, rather than a brand new subsystem.

Make sure to pay attention to and respect each subsystem’s documentation and structure.

Required Associated Types§

Source

type Config

The actual frame processing [Actor]

May be Self The subsystem’s configuration type

Source

type Output: Send + 'static

Source

type Error: Debug + Send + 'static

Required Methods§

Source

async fn init(cfg: Self::Config) -> Result<Addr<Self>, Self::Error>

Initialize the subsystem

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§