holoscan::FastDdsNativeBufferAdapter
holoscan::FastDdsNativeBufferAdapter
Fast-DDS native-buffer adapter: thin wrapper that creates ipc::Context<FastDdsTransport>.
Inherits from: holoscan::HoloIpcCudaNativeBufferAdapterBase< ipc::transport::fastdds::FastDdsTransport > (public)
Constructors
FastDdsNativeBufferAdapter
Methods
initialize
Initialize with the DomainParticipant from FastDdsPubSubContext.
The participant is retained indirectly through the holoipc Fast-DDS transport and must outlive this adapter (including its shutdown). When policy is NativeBufferPolicy::kDisabled, participant is ignored and may be null.
This method is idempotent: repeated calls after a successful initialization are no-ops that log a warning and return success, keeping the original policy and context.
shutdown
is_initialized
policy
set_acquire_timeout
set_export_ttl
set_use_eager_acquire
default_protocol_name
supports_protocol
can_export_tensor
descriptor_format_version
export_tensor
NativeBufferProtocolAdapter interface: converts NativeTensorMetadata to CudaTensorDescriptor and delegates to the CudaTensorDescriptor overload.
import_tensor_generic
NativeBufferProtocolAdapter interface: delegates to import_tensor() and converts the NativeBufferHolder into a generic ImportedNativeTensor.
import_tensor
Decode a DNBX payload and acquire the CUDA IPC mapping via holoipc.
In strict mode (default): sends ACQUIRED, waits for ACK, then opens handle. In eager mode: opens handle locally first, then sends ACQUIRED (no ACK wait). Returns an RAII NativeBufferHolder whose destruction sends RELEASED.
pending_export_count
set_on_pending_export_count_changed
evict_stale_exports
initialize_common
Called by derived-class initialize() after creating the ipc::Context.
Static methods
decode_exported_tensor
Parse DNBX wire format back into ExportedTensorDescriptor.
Wire layout: magic | version | handle_type | ipc_version | hipc_blob | key | reply_topic