Expand description
XRCE Agent — DDS participant wrapper with a pull model (spec §7.3).
Crate zerodds-xrce-agent.
§Spec mapping
OMG DDS-XRCE 1.0 §7.3: “the XRCE Agent represents the XRCE client in the DDS data space; client-pull model for disconnected devices.”
We provide an in-process agent state machine XrceAgent with:
register_client(client_key)— a client is registered by ClientKey; the agent creates one object slot per client.create_object(...)— spec §7.8.3 CREATE path.delete_object(...)— spec §7.8.3 DELETE path.submit_sample(reader, payload)— DDS-side push: places a sample into the pull queue of a DataReader.pull_sample(client_key, reader)— spec §7.3 client-pull model.
The agent itself encapsulates no DDS stack — that is the job of the integrating application. We only provide the object management + pull queue.
Safety classification: STANDARD.
Structs§
- Trace
Event - Trace event for operation tracing (spec §8.5).
- Xrce
Agent - In-memory XRCE agent.
Enums§
- Agent
Error - Agent-specific error classes.
Traits§
- Trace
Sink - Trace-sink trait. An implementation logs each event to an
external system (e.g.
tracing::info!).