rumeter_component/
lib.rs

1use async_trait::async_trait;
2use record::RecordData;
3
4pub mod group;
5pub mod record;
6pub mod samplers;
7pub mod output;
8
9#[async_trait]
10pub trait Sampler {
11    async fn run(&self) -> RecordData;
12}
13
14#[async_trait]
15pub trait Controller {
16    async fn run(&self) -> Vec<RecordData>;
17}
18
19pub trait Output {
20    fn write(&mut self, data: RecordData);
21}