holoscan::HoloscanEntityData

Beta
View as Markdown

DDS data type for Holoscan pub/sub messages.

This structure is used for two kinds of DDS messages:

  • Main-topic messages: serialized_data carries a CodecRegistry-serialized Holoscan Entity (which may reference GPU tensors). The metadata fields contains_gpu_tensors and gpu_device_id describe the entity payload. descriptor_format_version is 0 and protocol_name / publisher_gid are empty.
  • Sidecar messages (native buffer descriptors): serialized_data carries native-descriptor bytes produced by FastDdsTransport::send_native_descriptor(). descriptor_format_version (> 0) and protocol_name identify the wire format, and publisher_gid associates the descriptor with a main-topic publisher.

Common metadata fields:

  • source_operator: Tracing/debugging (identifies the publishing operator)
  • timestamp_ns: Message timestamping (for latency measurement, ordering)
#include <holoscan/fastdds_holoscan_entity_type_support.hpp>

Member variables

NameTypeDescription
serialized_datastd::vector< uint8_t >Message payload bytes.
source_operatorstd::stringName of the operator that produced this message.
timestamp_nsint64_tTimestamp in nanoseconds (typically from std::chrono::steady_clock).
contains_gpu_tensorsboolTrue if serialized_data contains GPU tensor references that need staging.
gpu_device_idint32_tGPU device ID where tensors originated (for device affinity).
publisher_gidstd::stringGID of the main-topic publisher (hex string, e.g.
descriptor_format_versionuint8_tNative descriptor wire format version (0 for regular/main-topic payloads).
protocol_namestd::stringNative descriptor protocol identifier (empty for regular/main-topic payloads).