zerodds-rtc
OMG RTC 1.0 (formal/2008-04-04) — Robotic Technology Component.
Lightweight RTC + ExecutionContext + Lifecycle-State-Machine +
Periodic/Stimulus/Mode-Profile + Resource-Introspection. Local PSM
(§6.3) konform; no_std + alloc, forbid(unsafe_code). Safety
classification: STANDARD.
Spec-Mapping
| Spec | Abschnitt |
|---|---|
| OMG RTC 1.0 | §5.2.1 ReturnCode_t |
| OMG RTC 1.0 | §5.2.2.2 LightweightRTObject |
| OMG RTC 1.0 | §5.2.2.3 LifeCycle |
| OMG RTC 1.0 | §5.2.2.4 Component-Action-Trait |
| OMG RTC 1.0 | §5.2.2.5 / §5.2.2.6 ExecutionContext |
| OMG RTC 1.0 | §5.2.2.7 ExecutionKind |
| OMG RTC 1.0 | §5.3 Execution-Semantics (Periodic/Stimulus/Modes) |
| OMG RTC 1.0 | §5.4 Resource Data Model |
| OMG RTC 1.0 | §6.3 Local PSM |
Was ist drin
return_code—ReturnCodemit allen 6 Status-Codes plusis_ok()/into_result()Helper.lifecycle—LifeCycleState,ExecutionKind,ComponentAction-Trait + State-Machine-Enforcement.object—LightweightRtObject,ExecutionContextHandle.execution—ExecutionContext,ExecutionContextOperations-Trait.semantics—DataFlowComponentAction(Periodic),FsmComponentAction(Stimulus),MultiModeComponentAction+ModeOfOperation(Modes).resource—Introspection,ComponentProfile,PortProfile,ConnectorProfile,PortDirection,ProfileId.
Was nicht abgedeckt ist
- CORBA PSM (§6.5) — verlangt CORBA-ORB; ZeroDDS hat keinen.
- Lightweight CCM PSM (§6.4) — verlangt LwCCM-Container; siehe
crates/ccm/welche die IDL-Equivalent-Transformation liefert, aber keinen Container bereitstellt. - §5.4 Discovery-/Wire-Aspekt — partial: Resource-Daten-Modell ist im Crate, der Discovery-Wire-Aspekt nicht.
Beispiel
use ReturnCode;
// Spec §5.2.1.1: ReturnCode::Ok ist der einzige OK-Code.
assert!;
assert!;
assert_eq!;
Tests