micromegas_telemetry/
block_wire_format.rs1use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
9pub struct BlockPayload {
10 pub dependencies: Vec<u8>,
11 pub objects: Vec<u8>,
12}
13
14#[derive(Debug, Clone, Serialize, Deserialize)]
20pub struct Block {
21 #[serde(
22 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
23 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
24 )]
25 pub block_id: uuid::Uuid,
26 #[serde(
27 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
28 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
29 )]
30 pub stream_id: uuid::Uuid,
31 #[serde(
32 deserialize_with = "micromegas_transit::uuid_utils::uuid_from_string",
33 serialize_with = "micromegas_transit::uuid_utils::uuid_to_string"
34 )]
35 pub process_id: uuid::Uuid,
36 pub begin_time: String,
38 pub begin_ticks: i64,
39 pub end_time: String,
40 pub end_ticks: i64,
41 pub payload: BlockPayload,
42 pub object_offset: i64,
43 pub nb_objects: i32,
44}