1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// SPDX-License-Identifier: Apache-2.0
// Copyright 2026 ZeroDDS Contributors
//! `zerodds-corba-ccm-lib` — Production-Ready CCM-Components.
//!
//! Crate `zerodds-corba-ccm-lib`. Safety classification: **STANDARD**.
//! Spec: OMG CCM 4.0 (`formal/2006-04-01`) §6 + §10 (Persistent State).
//!
//! Enthaelt drei produktionsreife CCM-Components, die als Schablone
//! oder direkt in Plans verwendet werden koennen:
//!
//! * [`dds_bridge`] — `DdsBridgeComponent`: bidirektionale CCM↔DDS-
//! Bruecke, mappt CCM-EventSinks auf DDS-Topics und DDS-Reader auf
//! CCM-EventSources.
//! * [`persistence`] — `PersistenceStorageComponent`: Persistent
//! State Service §10 (`/storage`).
//! * [`telemetry`] — `TelemetryComponent`: emittiert Component-
//! Lifecycle-Metriken via DCPS-Topic `__ZeroDDS_CcmTelemetry`.
//!
//! ## Beispiel
//!
//! ```
//! use zerodds_corba_ccm_lib::{MappingDirection, TopicMapping};
//! let m = TopicMapping {
//! port_name: "in".into(),
//! topic_name: "Sensor".into(),
//! type_name: "sensors::Tick".into(),
//! direction: MappingDirection::SinkSubscribesTopic,
//! };
//! assert_eq!(m.direction, MappingDirection::SinkSubscribesTopic);
//! ```
extern crate alloc;
extern crate std;
pub use ;
pub use ;
pub use ;