micromegas_telemetry/
block_wire_format.rs1use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
9pub struct BlockPayload {
10 #[serde(with = "crate::serde_byte_buf")]
14 pub dependencies: Vec<u8>,
15 #[serde(with = "crate::serde_byte_buf")]
17 pub objects: Vec<u8>,
18}
19
20#[derive(Debug, Clone, Serialize, Deserialize)]
26pub struct Block {
27 #[serde(
28 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
29 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
30 )]
31 pub block_id: uuid::Uuid,
32 #[serde(
33 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
34 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
35 )]
36 pub stream_id: uuid::Uuid,
37 #[serde(
38 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
39 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
40 )]
41 pub process_id: uuid::Uuid,
42 pub begin_time: String,
44 pub begin_ticks: i64,
45 pub end_time: String,
46 pub end_ticks: i64,
47 pub payload: BlockPayload,
48 pub object_offset: i64,
49 pub nb_objects: i32,
50}