Skip to main content

Crate zerodds_corba_ccm_lib

Crate zerodds_corba_ccm_lib 

Source
Expand description

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).

Contains three production-ready CCM components that can be used as a template or directly in plans:

  • dds_bridgeDdsBridgeComponent: bidirectional CCM↔DDS bridge, maps CCM EventSinks onto DDS topics and DDS readers onto CCM EventSources.
  • persistencePersistenceStorageComponent: Persistent State Service §10 (/storage).
  • telemetryTelemetryComponent: emits component lifecycle metrics via the DCPS topic __ZeroDDS_CcmTelemetry.

§Example

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);

Re-exports§

pub use dds_bridge::BridgeError;
pub use dds_bridge::DdsBridgeComponent;
pub use dds_bridge::MappingDirection;
pub use dds_bridge::TopicMapping;
pub use persistence::PersistenceError;
pub use persistence::PersistenceStorageComponent;
pub use persistence::StorageEntry;
pub use telemetry::TelemetryComponent;
pub use telemetry::TelemetryEvent;
pub use telemetry::TelemetryKind;

Modules§

dds_bridge
DdsBridgeComponent — bidirectional CCM↔DDS bridge.
persistence
PersistenceStorageComponent — Persistent State Service §10.
telemetry
TelemetryComponent — component lifecycle metric emitter.