cu29-value 1.3.0

This is a fork of Value with custom types added for Copper like the time and units.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! Version, bounds and native envelope layout for startup catalogs.

use bincode::Decode;
use bincode::Encode;
use serde::{Deserialize, Serialize};

pub(crate) const VERSION: u16 = 1;
/// Maximum uncompressed catalog size accepted by the readers (16 MiB).
pub const VALUE_DECODE_CATALOG_MAX_BYTES: usize = 16 * 1024 * 1024;

/// The recorded CopperList envelope layout.
#[derive(Clone, Copy, Debug, PartialEq, Eq, Encode, Decode, Serialize, Deserialize)]
pub enum ValueDecodeCatalogLayout {
    /// Shared presence/capture planes and delta-coded common metadata.
    Compact,
    /// Each message is encoded with its own metadata envelope.
    Flat,
}