File types.hpp

FileList > astutedds > rmw > types.hpp

Go to the source code of this file

Private PIMPL structs backing every RMW-provided handle. More...

  • #include <atomic>
  • #include <cstdint>
  • #include <map>
  • #include <mutex>
  • #include <new>
  • #include <string>
  • #include <utility>
  • #include <vector>
  • #include <fcntl.h>
  • #include <unistd.h>
  • #include <rmw/event_callback_type.h>
  • #include <rmw/qos_profiles.h>
  • #include <rmw/rmw.h>
  • #include <astutedds/c/astutedds.h>
  • #include <astutedds/rmw/identifier.hpp>
  • #include <astutedds/rmw/type_support.hpp>

Classes

Type Name
struct AstuteDDSClient
struct AstuteDDSContext
struct NodeEndpoint
struct AstuteDDSGuardCondition
struct AstuteDDSNode
struct AstuteDDSPublisher
struct AstuteDDSService
struct AstuteDDSSubscription
struct AstuteDDSWaitSet

Detailed Description

Every opaque RMW handle (rmw_context_t, rmw_node_t, rmw_publisher_t, …) carries a void * payload that the RMW is free to point at anything. This file defines the concrete structs those pointers refer to.

Design notes: * There is no shared mutable global state; everything is reached through these PIMPL structs, keeping the code testable and localised. * Each RMW handle owns exactly one of these; the RMW never deletes a handle it did not allocate. * AstuteDDSContext holds the one-per-process DomainParticipant plus the DataWriter/DataReader factories.


The documentation for this class was generated from the following file include/astutedds/rmw/types.hpp