- HandlerMinelayerData: BUILD_RTI Guards für RTI-Abhängigkeiten - svcTabCommon: Export-Header-Fix via Fallback-Target - TrainingAreaBase: Stub-Header für BUILD_RTI=OFF - ddsfts: Include-Pfad und Dependency-Fixes - BUILD_RTI=OFF Compilation vollständig unterstützt Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Entire-Checkpoint: 01M0JNZA586SACX1PRZ2DJAE5S
2834 lines
108 KiB
Plaintext
2834 lines
108 KiB
Plaintext
/******************************************************************************
|
|
* (c) Copyright, Real-Time Innovations, Copyright 2010
|
|
*
|
|
* All rights reserved.
|
|
*
|
|
* No duplications, whole or partial, manual or electronic, may be made
|
|
* without express written permission. Any such copies, or
|
|
* revisions thereof, must display this notice unaltered.
|
|
*
|
|
* This code contains trade secrets of Real-Time Innovations, Inc.
|
|
*
|
|
* This file contains the types used by RTI Data Distribution Service to monitor
|
|
* applications.
|
|
*
|
|
* THE CONTENTS OF THIS FILE, AS WELL AS THE EXISTENCE OF THIS FILE,
|
|
* ARE SUBJECT TO CHANGE WITHOUT ANY NOTICE.
|
|
*
|
|
* For any questions please contact support@rti.com
|
|
*****************************************************************************/
|
|
|
|
#define DOMAINID_TYPE_NATIVE long
|
|
#define BUILTIN_TOPIC_KEY_TYPE_NATIVE long
|
|
#define HANDLE_TYPE_NATIVE DDSMonitoring::RTIInstanceHandle
|
|
#define HANDLE_NIL_NATIVE {{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, 16, 0}
|
|
|
|
#define TheParticipantFactory
|
|
#define PARTICIPANT_QOS_DEFAULT
|
|
#define TOPIC_QOS_DEFAULT
|
|
#define PUBLISHER_QOS_DEFAULT
|
|
#define SUBSCRIBER_QOS_DEFAULT
|
|
#define DATAWRITER_QOS_DEFAULT
|
|
#define DATAREADER_QOS_DEFAULT
|
|
#define DATAWRITER_QOS_USE_TOPIC_QOS
|
|
#define DATAREADER_QOS_USE_TOPIC_QOS
|
|
|
|
module DDSMonitoring {
|
|
|
|
struct RTIInstanceHandle {
|
|
octet value[16];
|
|
unsigned long length;
|
|
boolean isValid;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
typedef DOMAINID_TYPE_NATIVE DomainId_t;
|
|
|
|
struct BuiltinTopicKey_t {
|
|
BUILTIN_TOPIC_KEY_TYPE_NATIVE value[4];
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
typedef HANDLE_TYPE_NATIVE InstanceHandle_t;
|
|
|
|
typedef long ReturnCode_t;
|
|
typedef long QosPolicyId_t;
|
|
typedef short DataRepresentationId_t;
|
|
|
|
struct Duration_t {
|
|
int32 sec;
|
|
uint32 nanosec;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
struct Time_t {
|
|
int64 sec;
|
|
uint32 nanosec;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
typedef sequence<string> StringSequence;
|
|
|
|
struct EndpointGroup_t {
|
|
string<255> role_name;
|
|
long quorum;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Pre-defined values
|
|
// ----------------------------------------------------------------------
|
|
|
|
// RTI: Can not be defined in IDL since InstanceHandle_t is not
|
|
// a primitive.
|
|
//const InstanceHandle_t HANDLE_NIL = HANDLE_NIL_NATIVE;
|
|
|
|
const long LENGTH_UNLIMITED = -1;
|
|
|
|
const long DURATION_INFINITE_SEC = 0x7fffffff;
|
|
const unsigned long DURATION_INFINITE_NSEC = 0x7fffffff;
|
|
|
|
const long DURATION_ZERO_SEC = 0;
|
|
const unsigned long DURATION_ZERO_NSEC = 0;
|
|
|
|
const long TIME_INVALID_SEC = -1;
|
|
const unsigned long TIME_INVALID_NSEC = 0xffffffff;
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Return codes
|
|
// ----------------------------------------------------------------------
|
|
const ReturnCode_t RETCODE_OK = 0;
|
|
const ReturnCode_t RETCODE_ERROR = 1;
|
|
const ReturnCode_t RETCODE_UNSUPPORTED = 2;
|
|
const ReturnCode_t RETCODE_BAD_PARAMETER = 3;
|
|
const ReturnCode_t RETCODE_PRECONDITION_NOT_MET = 4;
|
|
const ReturnCode_t RETCODE_OUT_OF_RESOURCES = 5;
|
|
const ReturnCode_t RETCODE_NOT_ENABLED = 6;
|
|
const ReturnCode_t RETCODE_IMMUTABLE_POLICY = 7;
|
|
const ReturnCode_t RETCODE_INCONSISTENT_POLICY = 8;
|
|
const ReturnCode_t RETCODE_ALREADY_DELETED = 9;
|
|
const ReturnCode_t RETCODE_TIMEOUT = 10;
|
|
const ReturnCode_t RETCODE_NO_DATA = 11;
|
|
const ReturnCode_t RETCODE_ILLEGAL_OPERATION = 12;
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Status to support listeners and conditions
|
|
// ----------------------------------------------------------------------
|
|
typedef unsigned long StatusKind;
|
|
typedef unsigned long StatusMask; // bit-mask StatusKind
|
|
|
|
const StatusKind INCONSISTENT_TOPIC_STATUS = 0x0001 << 0;
|
|
const StatusKind OFFERED_DEADLINE_MISSED_STATUS = 0x0001 << 1;
|
|
const StatusKind REQUESTED_DEADLINE_MISSED_STATUS = 0x0001 << 2;
|
|
const StatusKind OFFERED_INCOMPATIBLE_QOS_STATUS = 0x0001 << 5;
|
|
const StatusKind REQUESTED_INCOMPATIBLE_QOS_STATUS = 0x0001 << 6;
|
|
const StatusKind SAMPLE_LOST_STATUS = 0x0001 << 7;
|
|
const StatusKind SAMPLE_REJECTED_STATUS = 0x0001 << 8;
|
|
const StatusKind DATA_ON_READERS_STATUS = 0x0001 << 9;
|
|
const StatusKind DATA_AVAILABLE_STATUS = 0x0001 << 10;
|
|
const StatusKind LIVELINESS_LOST_STATUS = 0x0001 << 11;
|
|
const StatusKind LIVELINESS_CHANGED_STATUS = 0x0001 << 12;
|
|
const StatusKind PUBLICATION_MATCHED_STATUS = 0x0001 << 13;
|
|
const StatusKind SUBSCRIPTION_MATCHED_STATUS = 0x0001 << 14;
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
/* The "right"-most 24 bits of the StatusMask are reserved
|
|
* for standard statuses. The remaining 8 bits are for extended statuses.
|
|
*/
|
|
const StatusKind DATA_WRITER_APPLICATION_ACKNOWLEDGEMENT_STATUS = 0x00000001 << 22;
|
|
const StatusKind DATA_WRITER_INSTANCE_REPLACED_STATUS = 0x00000001 << 23;
|
|
const StatusKind RELIABLE_WRITER_CACHE_CHANGED_STATUS = 0x00000001 << 24;
|
|
const StatusKind RELIABLE_READER_ACTIVITY_CHANGED_STATUS = 0x00000001 << 25;
|
|
const StatusKind DATA_WRITER_CACHE_STATUS = 0x00000001 << 26;
|
|
const StatusKind DATA_WRITER_PROTOCOL_STATUS = 0x00000001 << 27;
|
|
const StatusKind DATA_READER_CACHE_STATUS = 0x00000001 << 28;
|
|
const StatusKind DATA_READER_PROTOCOL_STATUS = 0x00000001 << 29;
|
|
const StatusKind DATA_WRITER_DESTINATION_UNREACHABLE_STATUS = 0x00000001 << 30;
|
|
const StatusKind DATA_WRITER_SAMPLE_REMOVED_STATUS = 0x00000001 << 31;
|
|
|
|
struct InconsistentTopicStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum SampleLostStatusKind {
|
|
NOT_LOST,
|
|
LOST_BY_WRITER,
|
|
LOST_BY_INSTANCES_LIMIT,
|
|
LOST_BY_REMOTE_WRITERS_PER_INSTANCE_LIMIT,
|
|
LOST_BY_INCOMPLETE_COHERENT_SET,
|
|
LOST_BY_LARGE_COHERENT_SET,
|
|
LOST_BY_SAMPLES_PER_REMOTE_WRITER_LIMIT,
|
|
LOST_BY_VIRTUAL_WRITERS_LIMIT,
|
|
LOST_BY_REMOTE_WRITERS_PER_SAMPLE_LIMIT,
|
|
LOST_BY_AVAILABILITY_WAITING_TIME,
|
|
LOST_BY_REMOTE_WRITER_SAMPLES_PER_VIRTUAL_QUEUE_LIMIT,
|
|
LOST_BY_OUT_OF_MEMORY,
|
|
LOST_BY_UNKNOWN_INSTANCE,
|
|
LOST_BY_DESERIALIZATION_FAILURE,
|
|
LOST_BY_DECODE_FAILURE,
|
|
LOST_BY_SAMPLES_PER_INSTANCE_LIMIT,
|
|
LOST_BY_SAMPLES_LIMIT
|
|
};
|
|
|
|
struct SampleLostStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
SampleLostStatusKind last_reason;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum SampleRejectedStatusKind {
|
|
NOT_REJECTED,
|
|
/* Not used */
|
|
REJECTED_BY_INSTANCES_LIMIT,
|
|
REJECTED_BY_SAMPLES_LIMIT,
|
|
REJECTED_BY_SAMPLES_PER_INSTANCE_LIMIT,
|
|
/***** RTI EXTENSIONS *****/
|
|
/* Deprecated */
|
|
REJECTED_BY_REMOTE_WRITERS_LIMIT,
|
|
/* Deprecated */
|
|
REJECTED_BY_REMOTE_WRITERS_PER_INSTANCE_LIMIT,
|
|
REJECTED_BY_SAMPLES_PER_REMOTE_WRITER_LIMIT,
|
|
/* Deprecated */
|
|
REJECTED_BY_VIRTUAL_WRITERS_LIMIT,
|
|
/* Deprecated */
|
|
REJECTED_BY_REMOTE_WRITERS_PER_SAMPLE_LIMIT,
|
|
REJECTED_BY_REMOTE_WRITER_SAMPLES_PER_VIRTUAL_QUEUE_LIMIT,
|
|
REJECTED_BY_DECODE_FAILURE
|
|
};
|
|
|
|
enum TransportMulticastQosPolicyKind {
|
|
AUTOMATIC_TRANSPORT_MULTICAST_QOS,
|
|
UNICAST_ONLY_TRANSPORT_MULTICAST_QOS
|
|
};
|
|
|
|
struct SampleRejectedStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
SampleRejectedStatusKind last_reason;
|
|
InstanceHandle_t last_instance_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct LivelinessLostStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct LivelinessChangedStatus {
|
|
long alive_count;
|
|
long not_alive_count;
|
|
long alive_count_change;
|
|
long not_alive_count_change;
|
|
InstanceHandle_t last_publication_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct OfferedDeadlineMissedStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
InstanceHandle_t last_instance_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct RequestedDeadlineMissedStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
InstanceHandle_t last_instance_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct QosPolicyCount {
|
|
QosPolicyId_t policy_id;
|
|
long count;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
struct OfferedIncompatibleQosStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
QosPolicyId_t last_policy_id;
|
|
/* we assume we will not have more than 64 qos policies */
|
|
sequence<QosPolicyCount, 64> policies;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct RequestedIncompatibleQosStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
QosPolicyId_t last_policy_id;
|
|
/* we assume we will not have more than 64 qos policies */
|
|
sequence<QosPolicyCount, 64> policies;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct PublicationMatchedStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
long current_count;
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
long current_count_peak;
|
|
|
|
long current_count_change;
|
|
|
|
InstanceHandle_t last_subscription_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct SubscriptionMatchedStatus {
|
|
long total_count;
|
|
long total_count_change;
|
|
|
|
long current_count;
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
long current_count_peak;
|
|
|
|
long current_count_change;
|
|
|
|
InstanceHandle_t last_publication_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct DataReaderCacheStatus {
|
|
long long sample_count_peak;
|
|
long long sample_count;
|
|
long long old_source_timestamp_dropped_sample_count;
|
|
long long tolerance_source_timestamp_dropped_sample_count;
|
|
long long ownership_dropped_sample_count;
|
|
long long content_filter_dropped_sample_count;
|
|
long long time_based_filter_dropped_sample_count;
|
|
long long expired_dropped_sample_count;
|
|
long long virtual_duplicate_dropped_sample_count;
|
|
long long replaced_dropped_sample_count;
|
|
long long writer_removed_batch_sample_dropped_sample_count;
|
|
long long total_samples_dropped_by_instance_replacement;
|
|
long long alive_instance_count;
|
|
long long alive_instance_count_peak;
|
|
long long no_writers_instance_count;
|
|
long long no_writers_instance_count_peak;
|
|
long long disposed_instance_count;
|
|
long long disposed_instance_count_peak;
|
|
long long detached_instance_count;
|
|
long long detached_instance_count_peak;
|
|
long long compressed_sample_count;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct SequenceNumber_t {
|
|
long high;
|
|
unsigned long low;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct DataReaderProtocolStatus {
|
|
long long received_sample_count;
|
|
long long received_sample_count_change;
|
|
|
|
long long received_sample_bytes;
|
|
long long received_sample_bytes_change;
|
|
|
|
long long duplicate_sample_count;
|
|
long long duplicate_sample_count_change;
|
|
|
|
long long duplicate_sample_bytes;
|
|
long long duplicate_sample_bytes_change;
|
|
|
|
long long filtered_sample_count;
|
|
long long filtered_sample_count_change;
|
|
|
|
long long filtered_sample_bytes;
|
|
long long filtered_sample_bytes_change;
|
|
|
|
long long received_heartbeat_count;
|
|
long long received_heartbeat_count_change;
|
|
|
|
long long received_heartbeat_bytes;
|
|
long long received_heartbeat_bytes_change;
|
|
|
|
long long sent_ack_count;
|
|
long long sent_ack_count_change;
|
|
|
|
long long sent_ack_bytes;
|
|
long long sent_ack_bytes_change;
|
|
|
|
long long sent_nack_count;
|
|
long long sent_nack_count_change;
|
|
|
|
long long sent_nack_bytes;
|
|
long long sent_nack_bytes_change;
|
|
|
|
long long received_gap_count;
|
|
long long received_gap_count_change;
|
|
|
|
long long received_gap_bytes;
|
|
long long received_gap_bytes_change;
|
|
|
|
long long rejected_sample_count;
|
|
long long rejected_sample_count_change;
|
|
|
|
SequenceNumber_t first_available_sample_sequence_number;
|
|
SequenceNumber_t last_available_sample_sequence_number;
|
|
SequenceNumber_t last_committed_sample_sequence_number;
|
|
long uncommitted_sample_count;
|
|
|
|
long long out_of_range_rejected_sample_count;
|
|
|
|
long long received_fragment_count;
|
|
long long dropped_fragment_count;
|
|
long long reassembled_sample_count;
|
|
long long sent_nack_fragment_count;
|
|
long long sent_nack_fragment_bytes;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct DataWriterCacheStatus {
|
|
long long sample_count_peak;
|
|
long long sample_count;
|
|
long long alive_instance_count;
|
|
long long alive_instance_count_peak;
|
|
long long disposed_instance_count;
|
|
long long disposed_instance_count_peak;
|
|
long long unregistered_instance_count;
|
|
long long unregistered_instance_count_peak;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct DataWriterProtocolStatus {
|
|
long long pushed_sample_count;
|
|
long long pushed_sample_count_change;
|
|
|
|
long long pushed_sample_bytes;
|
|
long long pushed_sample_bytes_change;
|
|
|
|
long long filtered_sample_count;
|
|
long long filtered_sample_count_change;
|
|
|
|
long long filtered_sample_bytes;
|
|
long long filtered_sample_bytes_change;
|
|
|
|
long long sent_heartbeat_count;
|
|
long long sent_heartbeat_count_change;
|
|
|
|
long long sent_heartbeat_bytes;
|
|
long long sent_heartbeat_bytes_change;
|
|
|
|
long long pulled_sample_count;
|
|
long long pulled_sample_count_change;
|
|
|
|
long long pulled_sample_bytes;
|
|
long long pulled_sample_bytes_change;
|
|
|
|
long long received_ack_count;
|
|
long long received_ack_count_change;
|
|
|
|
long long received_ack_bytes;
|
|
long long received_ack_bytes_change;
|
|
|
|
long long received_nack_count;
|
|
long long received_nack_count_change;
|
|
|
|
long long received_nack_bytes;
|
|
long long received_nack_bytes_change;
|
|
|
|
long long sent_gap_count;
|
|
long long sent_gap_count_change;
|
|
|
|
long long sent_gap_bytes;
|
|
long long sent_gap_bytes_change;
|
|
|
|
long long rejected_sample_count;
|
|
long long rejected_sample_count_change;
|
|
|
|
long send_window_size;
|
|
|
|
SequenceNumber_t first_available_sequence_number;
|
|
SequenceNumber_t last_available_sequence_number;
|
|
SequenceNumber_t first_unacknowledged_sample_sequence_number;
|
|
SequenceNumber_t first_available_sample_virtual_sequence_number;
|
|
SequenceNumber_t last_available_sample_virtual_sequence_number;
|
|
SequenceNumber_t first_unacknowledged_sample_virtual_sequence_number;
|
|
InstanceHandle_t first_unacknowledged_sample_subscription_handle;
|
|
SequenceNumber_t first_unelapsed_keep_duration_sample_sequence_number;
|
|
|
|
long long pushed_fragment_count;
|
|
long long pushed_fragment_bytes;
|
|
long long pulled_fragment_count;
|
|
long long pulled_fragment_bytes;
|
|
long long received_nack_fragment_count;
|
|
long long received_nack_fragment_bytes;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct ReliableWriterCacheEventCount {
|
|
long total_count;
|
|
long total_count_change;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct ReliableWriterCacheChangedStatus {
|
|
ReliableWriterCacheEventCount empty_reliable_writer_cache;
|
|
ReliableWriterCacheEventCount full_reliable_writer_cache;
|
|
|
|
ReliableWriterCacheEventCount low_watermark_reliable_writer_cache;
|
|
ReliableWriterCacheEventCount high_watermark_reliable_writer_cache;
|
|
|
|
long unacknowledged_sample_count;
|
|
long unacknowledged_sample_count_peak;
|
|
long long replaced_unacknowledged_sample_count;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
struct ReliableReaderActivityChangedStatus {
|
|
long active_count;
|
|
long inactive_count;
|
|
|
|
long active_count_change;
|
|
long inactive_count_change;
|
|
|
|
InstanceHandle_t last_instance_handle;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION *****/
|
|
typedef unsigned long CompressionIdMask;
|
|
|
|
const CompressionIdMask COMPRESSION_ID_ZLIB = 0x0001 << 0;
|
|
const CompressionIdMask COMPRESSION_ID_BZIP2 = 0x0001 << 1;
|
|
const CompressionIdMask COMPRESSION_ID_LZ4 = 0x0001 << 2;
|
|
const CompressionIdMask COMPRESSION_ID_MASK_NONE = 0;
|
|
const CompressionIdMask COMPRESSION_ID_MASK_ALL =
|
|
COMPRESSION_ID_ZLIB | COMPRESSION_ID_BZIP2 | COMPRESSION_ID_LZ4;
|
|
const CompressionIdMask COMPRESSION_ID_MASK_DEFAULT =
|
|
COMPRESSION_ID_MASK_NONE;
|
|
|
|
struct CompressionSettings_t {
|
|
CompressionIdMask compression_ids;
|
|
unsigned long writer_compression_level;
|
|
long writer_compression_threshold;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Listeners
|
|
// ----------------------------------------------------------------------
|
|
// Sample states to support reads
|
|
typedef unsigned long SampleStateKind;
|
|
const SampleStateKind READ_SAMPLE_STATE = 0x0001 << 0;
|
|
const SampleStateKind NOT_READ_SAMPLE_STATE = 0x0001 << 1;
|
|
|
|
// This is a bit-mask SampleStateKind
|
|
typedef unsigned long SampleStateMask;
|
|
const SampleStateMask ANY_SAMPLE_STATE = 0xffff;
|
|
|
|
// View states to support reads
|
|
typedef unsigned long ViewStateKind;
|
|
const ViewStateKind NEW_VIEW_STATE = 0x0001 << 0;
|
|
const ViewStateKind NOT_NEW_VIEW_STATE = 0x0001 << 1;
|
|
|
|
// This is a bit-mask ViewStateKind
|
|
typedef unsigned long ViewStateMask;
|
|
const ViewStateMask ANY_VIEW_STATE = 0xffff;
|
|
|
|
// Instance states to support reads
|
|
typedef unsigned long InstanceStateKind;
|
|
const InstanceStateKind ALIVE_INSTANCE_STATE = 0x0001 << 0;
|
|
const InstanceStateKind NOT_ALIVE_DISPOSED_INSTANCE_STATE = 0x0001 << 1;
|
|
const InstanceStateKind NOT_ALIVE_NO_WRITERS_INSTANCE_STATE = 0x0001 << 2;
|
|
|
|
// This is a bit-mask InstanceStateKind
|
|
typedef unsigned long InstanceStateMask;
|
|
const InstanceStateMask ANY_INSTANCE_STATE = 0xffff;
|
|
const InstanceStateMask NOT_ALIVE_INSTANCE_STATE = 0x006;
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Qos
|
|
// ----------------------------------------------------------------------
|
|
const string USERDATA_QOS_POLICY_NAME = "UserData";
|
|
const string DURABILITY_QOS_POLICY_NAME = "Durability";
|
|
const string PRESENTATION_QOS_POLICY_NAME = "Presentation";
|
|
const string DEADLINE_QOS_POLICY_NAME = "Deadline";
|
|
const string LATENCYBUDGET_QOS_POLICY_NAME = "LatencyBudget";
|
|
const string OWNERSHIP_QOS_POLICY_NAME = "Ownership";
|
|
const string OWNERSHIPSTRENGTH_QOS_POLICY_NAME = "OwnershipStrength";
|
|
const string LIVELINESS_QOS_POLICY_NAME = "Liveliness";
|
|
const string TIMEBASEDFILTER_QOS_POLICY_NAME = "TimeBasedFilter";
|
|
const string PARTITION_QOS_POLICY_NAME = "Partition";
|
|
const string RELIABILITY_QOS_POLICY_NAME = "Reliability";
|
|
const string DESTINATIONORDER_QOS_POLICY_NAME = "DestinationOrder";
|
|
const string HISTORY_QOS_POLICY_NAME = "History";
|
|
const string RESOURCELIMITS_QOS_POLICY_NAME = "ResourceLimits";
|
|
const string ENTITYFACTORY_QOS_POLICY_NAME = "EntityFactory";
|
|
const string WRITERDATALIFECYCLE_QOS_POLICY_NAME = "WriterDataLifecycle";
|
|
const string READERDATALIFECYCLE_QOS_POLICY_NAME = "ReaderDataLifecycle";
|
|
const string TOPICDATA_QOS_POLICY_NAME = "TopicData";
|
|
const string GROUPDATA_QOS_POLICY_NAME = "GroupData";
|
|
const string LIFESPAN_QOS_POLICY_NAME = "Lifespan";
|
|
const string DURABILITYSERVICE_POLICY_NAME = "DurabilityService";
|
|
const string TRANSPORTPRIORITY_QOS_POLICY_NAME = "TransportPriority";
|
|
const string DATA_REPRESENTATION_QOS_POLICY_NAME = "DataRepresentation";
|
|
const string TYPE_CONSISTENCY_ENFORCEMENT_QOS_POLICY_NAME = "TypeConsistencyEnforcement";
|
|
const string DATATAG_QOS_POLICY_NAME = "DataTag";
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
const string ASYNCHRONOUSPUBLISHER_QOS_POLICY_NAME = "AsynchronousPublisher";
|
|
const string TYPESUPPORT_QOS_POLICY_NAME = "TypeSupport";
|
|
const string WIREPROTOCOL_QOS_POLICY_NAME = "WireProtocol";
|
|
const string DISCOVERY_QOS_POLICY_NAME = "Discovery";
|
|
const string DATAREADERRESOURCELIMITS_QOS_POLICY_NAME = "DataReaderResourceLimits";
|
|
const string DATAWRITERRESOURCELIMITS_QOS_POLICY_NAME = "DataWriterResourceLimits";
|
|
const string DATAREADERPROTOCOL_QOS_POLICY_NAME = "DataReaderProtocol";
|
|
const string DATAWRITERPROTOCOL_QOS_POLICY_NAME = "DataWriterProtocol";
|
|
const string DOMAINPARTICIPANTRESOURCELIMITS_QOS_POLICY_NAME = "DomainParticipantResourceLimits";
|
|
const string EVENT_QOS_POLICY_NAME = "Event";
|
|
const string DATABASE_QOS_POLICY_NAME = "Database";
|
|
const string RECEIVERPOOL_QOS_POLICY_NAME = "ReceiverPool";
|
|
const string DISCOVERYCONFIG_QOS_POLICY_NAME = "DiscoveryConfig";
|
|
const string USEROBJECT_QOS_POLICY_NAME = "UserObject";
|
|
const string SYSTEMRESOURCELIMITS_QOS_POLICY_NAME = "SystemResourceLimits";
|
|
const string TRANSPORTSELECTION_QOS_POLICY_NAME = "TransportSelection";
|
|
const string TRANSPORTUNICAST_QOS_POLICY_NAME = "TransportUnicast";
|
|
const string TRANSPORTMULTICAST_QOS_POLICY_NAME = "TransportMulticast";
|
|
const string DDS_TRANSPORTMULTICASTMAPPING_QOS_POLICY_NAME = "TransportMulticastMapping";
|
|
const string TRANSPORTBUILTIN_QOS_POLICY_NAME = "TransportBuiltin";
|
|
const string PUBLISHMODE_QOS_POLICY_NAME = "PublishMode";
|
|
const string PROPERTY_QOS_POLICY_NAME = "Property";
|
|
const string ENTITYNAME_QOS_POLICY_NAME = "EntityName";
|
|
const string SERVICE_QOS_POLICY_NAME = "Service";
|
|
const string BATCH_QOS_POLICY_NAME = "Batch";
|
|
const string PROFILE_QOS_POLICY_NAME = "Profile";
|
|
const string LOCATORFILTER_QOS_POLICY_NAME = "LocatorFilter";
|
|
const string MULTICHANNEL_QOS_POLICY_NAME = "MultiChannel";
|
|
const string TRANSPORTENCAPSULATION_QOS_POLICY_NAME = "TransportEncapsulation";
|
|
const string PUBLISHERPROTOCOL_QOS_POLICY_NAME = "PublisherProtocol";
|
|
const string SUBSCRIBERPROTOCOL_QOS_POLICY_NAME = "SubscriberProtocol";
|
|
const string TOPICPROTOCOL_QOS_POLICY_NAME = "TopicProtocol";
|
|
const string TOPICQUERYDISPATCH_QOS_POLICY_NAME = "TopicQueryDispatch";
|
|
const string DATAWRITERTRANSFERMODE_QOS_POLICY_NAME = "DataWriterTransferMode";
|
|
const string DOMAINPARTICIPANTPROTOCOL_QOS_POLICY_NAME = "DomainParticipantProtocol";
|
|
|
|
const QosPolicyId_t INVALID_QOS_POLICY_ID = 0;
|
|
const QosPolicyId_t USERDATA_QOS_POLICY_ID = 1;
|
|
const QosPolicyId_t DURABILITY_QOS_POLICY_ID = 2;
|
|
const QosPolicyId_t PRESENTATION_QOS_POLICY_ID = 3;
|
|
const QosPolicyId_t DEADLINE_QOS_POLICY_ID = 4;
|
|
const QosPolicyId_t LATENCYBUDGET_QOS_POLICY_ID = 5;
|
|
const QosPolicyId_t OWNERSHIP_QOS_POLICY_ID = 6;
|
|
const QosPolicyId_t OWNERSHIPSTRENGTH_QOS_POLICY_ID = 7;
|
|
const QosPolicyId_t LIVELINESS_QOS_POLICY_ID = 8;
|
|
const QosPolicyId_t TIMEBASEDFILTER_QOS_POLICY_ID = 9;
|
|
const QosPolicyId_t PARTITION_QOS_POLICY_ID = 10;
|
|
const QosPolicyId_t RELIABILITY_QOS_POLICY_ID = 11;
|
|
const QosPolicyId_t DESTINATIONORDER_QOS_POLICY_ID = 12;
|
|
const QosPolicyId_t HISTORY_QOS_POLICY_ID = 13;
|
|
const QosPolicyId_t RESOURCELIMITS_QOS_POLICY_ID = 14;
|
|
const QosPolicyId_t ENTITYFACTORY_QOS_POLICY_ID = 15;
|
|
const QosPolicyId_t WRITERDATALIFECYCLE_QOS_POLICY_ID = 16;
|
|
const QosPolicyId_t READERDATALIFECYCLE_QOS_POLICY_ID = 17;
|
|
const QosPolicyId_t TOPICDATA_QOS_POLICY_ID = 18;
|
|
const QosPolicyId_t GROUPDATA_QOS_POLICY_ID = 19;
|
|
const QosPolicyId_t TRANSPORTPRIORITY_QOS_POLICY_ID = 20;
|
|
const QosPolicyId_t LIFESPAN_QOS_POLICY_ID = 21;
|
|
const QosPolicyId_t DURABILITYSERVICE_QOS_POLICY_ID = 22;
|
|
const QosPolicyId_t DATA_REPRESENTATION_QOS_POLICY = 23;
|
|
const QosPolicyId_t TYPE_CONSISTENCY_ENFORCEMENT_QOS_POLICY_ID = 24;
|
|
const QosPolicyId_t DATATAG_QOS_POLICY_ID = 25;
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
const QosPolicyId_t WIREPROTOCOL_QOS_POLICY_ID = 1000;
|
|
const QosPolicyId_t DISCOVERY_QOS_POLICY_ID = 1001;
|
|
const QosPolicyId_t DATAREADERRESOURCELIMITS_QOS_POLICY_ID = 1003;
|
|
const QosPolicyId_t DATAWRITERRESOURCELIMITS_QOS_POLICY_ID = 1004;
|
|
const QosPolicyId_t DATAREADERPROTOCOL_QOS_POLICY_ID = 1005;
|
|
const QosPolicyId_t DATAWRITERPROTOCOL_QOS_POLICY_ID = 1006;
|
|
const QosPolicyId_t DOMAINPARTICIPANTRESOURCELIMITS_QOS_POLICY_ID = 1007;
|
|
const QosPolicyId_t EVENT_QOS_POLICY_ID = 1008;
|
|
const QosPolicyId_t DATABASE_QOS_POLICY_ID = 1009;
|
|
const QosPolicyId_t RECEIVERPOOL_QOS_POLICY_ID = 1010;
|
|
const QosPolicyId_t DISCOVERYCONFIG_QOS_POLICY_ID = 1011;
|
|
const QosPolicyId_t USEROBJECT_QOS_POLICY_ID = 1013;
|
|
const QosPolicyId_t SYSTEMRESOURCELIMITS_QOS_POLICY_ID = 1014;
|
|
const QosPolicyId_t TRANSPORTSELECTION_QOS_POLICY_ID = 1015;
|
|
const QosPolicyId_t TRANSPORTUNICAST_QOS_POLICY_ID = 1016;
|
|
const QosPolicyId_t TRANSPORTMULTICAST_QOS_POLICY_ID = 1017;
|
|
const QosPolicyId_t TRANSPORTBUILTIN_QOS_POLICY_ID = 1018;
|
|
const QosPolicyId_t TYPESUPPORT_QOS_POLICY_ID = 1019;
|
|
const QosPolicyId_t PROPERTY_QOS_POLICY_ID = 1020;
|
|
const QosPolicyId_t PUBLISHMODE_QOS_POLICY_ID = 1021;
|
|
const QosPolicyId_t ASYNCHRONOUSPUBLISHER_QOS_POLICY_ID = 1022;
|
|
const QosPolicyId_t ENTITYNAME_QOS_POLICY_ID = 1023;
|
|
const QosPolicyId_t SERVICE_QOS_POLICY_ID = 1025;
|
|
const QosPolicyId_t BATCH_QOS_POLICY_ID = 1026;
|
|
const QosPolicyId_t PROFILE_QOS_POLICY_ID = 1027;
|
|
const QosPolicyId_t LOCATORFILTER_QOS_POLICY_ID = 1028;
|
|
const QosPolicyId_t MULTICHANNEL_QOS_POLICY_ID = 1029;
|
|
const QosPolicyId_t TRANSPORTENCAPSULATION_QOS_POLICY_ID = 1030;
|
|
const QosPolicyId_t PUBLISHERPROTOCOL_QOS_POLICY_ID = 1031;
|
|
const QosPolicyId_t SUBSCRIBERPROTOCOL_QOS_POLICY_ID = 1032;
|
|
const QosPolicyId_t TOPICPROTOCOL_QOS_POLICY_ID = 1033;
|
|
const QosPolicyId_t DOMAINPARTICIPANTPROTOCOL_QOS_POLICY_ID = 1034;
|
|
const QosPolicyId_t TOPICQUERYDISPATCH_QOS_POLICY_ID =1038;
|
|
const QosPolicyId_t DATAWRITERTRANSFERMODE_QOS_POLICY_ID = 1039;
|
|
|
|
struct UserDataQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, should be 256 by default */
|
|
sequence<octet, 256> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct TopicDataQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, should be 256 by default */
|
|
sequence<octet, 256> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct GroupDataQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, should be 256 by default */
|
|
sequence<octet, 256> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct TransportPriorityQosPolicy {
|
|
long value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
|
|
struct LifespanQosPolicy {
|
|
Duration_t duration;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DataRepresentationQosPolicy {
|
|
sequence<DataRepresentationId_t, 4> value;
|
|
CompressionSettings_t compression_settings;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct AvailabilityQosPolicy {
|
|
boolean enable_required_subscriptions;
|
|
Duration_t max_data_availability_waiting_time;
|
|
Duration_t max_endpoint_availability_waiting_time;
|
|
sequence<EndpointGroup_t, 256> required_matched_endpoint_groups;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct AllocationSettings_t {
|
|
long initial_count;
|
|
long max_count;
|
|
long incremental_count;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
enum PersistentJournalKind {
|
|
DELETE_PERSISTENT_JOURNAL,
|
|
TRUNCATE_PERSISTENT_JOURNAL,
|
|
PERSIST_PERSISTENT_JOURNAL,
|
|
MEMORY_PERSISTENT_JOURNAL,
|
|
WAL_PERSISTENT_JOURNAL,
|
|
OFF_PERSISTENT_JOURNAL
|
|
};
|
|
|
|
enum PersistentSynchronizationKind {
|
|
NORMAL_PERSISTENT_SYNCHRONIZATION,
|
|
FULL_PERSISTENT_SYNCHRONIZATION,
|
|
OFF_PERSISTENT_SYNCHRONIZATION
|
|
};
|
|
|
|
@nested
|
|
@appendable
|
|
struct PersistentStorageSettings {
|
|
boolean enable;
|
|
string<255> file_name;
|
|
string<255> trace_file_name;
|
|
PersistentJournalKind journal_kind;
|
|
PersistentSynchronizationKind synchronization_kind;
|
|
boolean vacuum;
|
|
boolean restore;
|
|
AllocationSettings_t writer_instance_cache_allocation;
|
|
AllocationSettings_t writer_sample_cache_allocation;
|
|
boolean writer_memory_state;
|
|
unsigned long reader_checkpoint_frequency;
|
|
};
|
|
|
|
enum DurabilityQosPolicyKind {
|
|
VOLATILE_DURABILITY_QOS,
|
|
TRANSIENT_LOCAL_DURABILITY_QOS,
|
|
TRANSIENT_DURABILITY_QOS,
|
|
PERSISTENT_DURABILITY_QOS
|
|
};
|
|
|
|
struct DurabilityQosPolicy {
|
|
DurabilityQosPolicyKind kind;
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
boolean direct_communication;
|
|
long writer_depth;
|
|
PersistentStorageSettings storage_settings;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum PresentationQosPolicyAccessScopeKind {
|
|
INSTANCE_PRESENTATION_QOS,
|
|
TOPIC_PRESENTATION_QOS,
|
|
GROUP_PRESENTATION_QOS,
|
|
HIGHEST_OFFERED_PRESENTATION_QOS
|
|
};
|
|
|
|
struct PresentationQosPolicy {
|
|
PresentationQosPolicyAccessScopeKind access_scope;
|
|
|
|
boolean coherent_access;
|
|
boolean ordered_access;
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
boolean drop_incomplete_coherent_set;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DeadlineQosPolicy {
|
|
Duration_t period;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct LatencyBudgetQosPolicy {
|
|
Duration_t duration;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum OwnershipQosPolicyKind {
|
|
SHARED_OWNERSHIP_QOS,
|
|
EXCLUSIVE_OWNERSHIP_QOS
|
|
};
|
|
|
|
struct OwnershipQosPolicy {
|
|
OwnershipQosPolicyKind kind;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct OwnershipStrengthQosPolicy {
|
|
long value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum LivelinessQosPolicyKind {
|
|
AUTOMATIC_LIVELINESS_QOS,
|
|
MANUAL_BY_PARTICIPANT_LIVELINESS_QOS,
|
|
MANUAL_BY_TOPIC_LIVELINESS_QOS
|
|
};
|
|
|
|
struct LivelinessQosPolicy {
|
|
LivelinessQosPolicyKind kind;
|
|
Duration_t lease_duration;
|
|
long assertions_per_lease_duration;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct TimeBasedFilterQosPolicy {
|
|
Duration_t minimum_separation;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct PartitionQosPolicy {
|
|
/* Total accumulated length limited by DomainParticipantResourceLimitsQosPolicy,
|
|
should be 256 in total by default, max partitions of 64 */
|
|
sequence<string<255>, 64> name;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum ReliabilityQosPolicyKind {
|
|
BEST_EFFORT_RELIABILITY_QOS,
|
|
RELIABLE_RELIABILITY_QOS
|
|
};
|
|
|
|
enum ReliabilityQosPolicyAcknowledgmentModeKind {
|
|
PROTOCOL_ACKNOWLEDGEMENT_MODE,
|
|
APPLICATION_AUTO_ACKNOWLEDGEMENT_MODE,
|
|
APPLICATION_ORDERED_ACKNOWLEDGEMENT_MODE,
|
|
APPLICATION_EXPLICIT_ACKNOWLEDGEMENT_MODE
|
|
};
|
|
|
|
enum InstanceStateConsistencyKind {
|
|
NO_RECOVER_INSTANCE_STATE_CONSISTENCY,
|
|
RECOVER_INSTANCE_STATE_CONSISTENCY
|
|
};
|
|
|
|
struct ReliabilityQosPolicy {
|
|
ReliabilityQosPolicyKind kind;
|
|
Duration_t max_blocking_time;
|
|
ReliabilityQosPolicyAcknowledgmentModeKind acknowledgementKind;
|
|
InstanceStateConsistencyKind instance_state_consistency_kind;
|
|
boolean exact_reliability_kind_match;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum DestinationOrderQosPolicyKind {
|
|
BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS,
|
|
BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS
|
|
};
|
|
|
|
enum TypeConsistencyKind {
|
|
DISALLOW_TYPE_COERCION,
|
|
ALLOW_TYPE_COERCION,
|
|
AUTO_TYPE_COERCION
|
|
};
|
|
|
|
struct TypeConsistencyEnforcementQosPolicy {
|
|
TypeConsistencyKind kind;
|
|
boolean ignore_sequence_bounds;
|
|
boolean ignore_string_bounds;
|
|
boolean ignore_member_names;
|
|
boolean prevent_type_widening;
|
|
boolean force_type_validation;
|
|
boolean ignore_enum_literal_names;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
enum DestinationOrderQosPolicyScopeKind {
|
|
INSTANCE_SCOPE_DESTINATIONORDER_QOS,
|
|
TOPIC_SCOPE_DESTINATIONORDER_QOS
|
|
};
|
|
|
|
struct DestinationOrderQosPolicy {
|
|
DestinationOrderQosPolicyKind kind;
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
DestinationOrderQosPolicyScopeKind scope;
|
|
Duration_t source_timestamp_tolerance;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
enum HistoryQosPolicyKind {
|
|
KEEP_LAST_HISTORY_QOS,
|
|
KEEP_ALL_HISTORY_QOS
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum RefilterQosPolicyKind {
|
|
NONE_REFILTER_QOS,
|
|
ALL_REFILTER_QOS,
|
|
ON_DEMAND_REFILTER_QOS
|
|
};
|
|
|
|
struct HistoryQosPolicy {
|
|
HistoryQosPolicyKind kind;
|
|
long depth;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct ResourceLimitsQosPolicy {
|
|
long max_samples;
|
|
long max_instances;
|
|
long max_samples_per_instance;
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
long initial_samples;
|
|
long initial_instances;
|
|
long instance_hash_buckets;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct EntityFactoryQosPolicy {
|
|
boolean autoenable_created_entities;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct WriterDataLifecycleQosPolicy {
|
|
boolean autodispose_unregistered_instances;
|
|
Duration_t autopurge_unregistered_instances_delay;
|
|
Duration_t autopurge_disposed_instances_delay;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct ReaderDataLifecycleQosPolicy {
|
|
Duration_t autopurge_nowriter_samples_delay;
|
|
Duration_t autopurge_disposed_samples_delay;
|
|
Duration_t autopurge_disposed_instances_delay;
|
|
Duration_t autopurge_nowriter_instances_delay;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DurabilityServiceQosPolicy {
|
|
Duration_t service_cleanup_delay;
|
|
|
|
HistoryQosPolicyKind history_kind;
|
|
|
|
long history_depth;
|
|
long max_samples;
|
|
long max_instances;
|
|
long max_samples_per_instance;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct SystemResourceLimitsQosPolicy {
|
|
long max_objects_per_thread;
|
|
long initial_objects_per_thread;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ProfileQosPolicy {
|
|
/** should be unlimited in theory **/
|
|
sequence<string<2000>, 256> string_profile;
|
|
/** should be unlimited in theory **/
|
|
sequence<string<255>, 256> url_profile;
|
|
|
|
boolean ignore_user_profile;
|
|
boolean ignore_environment_profile;
|
|
boolean ignore_resource_profile;
|
|
/** should be unlimited in theory **/
|
|
sequence<string<2000>, 256> string_profile_dtd;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TopicQueryDispatchQosPolicy {
|
|
boolean enable;
|
|
Duration_t publication_period;
|
|
long samples_per_period;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DomainParticipantFactoryQos {
|
|
EntityFactoryQosPolicy entity_factory;
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
SystemResourceLimitsQosPolicy resource_limits;
|
|
ProfileQosPolicy profile;
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct RtpsWellKnownPorts_t {
|
|
long port_base;
|
|
|
|
long domain_id_gain;
|
|
long participant_id_gain;
|
|
|
|
long builtin_multicast_port_offset;
|
|
long builtin_unicast_port_offset;
|
|
|
|
long user_multicast_port_offset;
|
|
long user_unicast_port_offset;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ProductVersion_t {
|
|
char major;
|
|
char minor;
|
|
char release;
|
|
char revision;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ProtocolVersion_t {
|
|
octet major;
|
|
octet minor;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef unsigned short EncapsulationId_t;
|
|
const long LOCATOR_ADDRESS_LENGTH_MAX = 16;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct Locator_t {
|
|
long kind;
|
|
unsigned long _port;
|
|
|
|
octet address[LOCATOR_ADDRESS_LENGTH_MAX];
|
|
|
|
sequence<EncapsulationId_t, 8> encapsulations;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef long RtpsReservedPortKindMask;
|
|
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_BUILTIN_UNICAST = 0x0001 << 0;
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_BUILTIN_MULTICAST = 0x0001 << 1;
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_USER_UNICAST = 0x0001 << 2;
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_USER_MULTICAST = 0x0001 << 3;
|
|
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_MASK_DEFAULT = RTPS_RESERVED_PORT_BUILTIN_UNICAST |
|
|
RTPS_RESERVED_PORT_BUILTIN_MULTICAST |
|
|
RTPS_RESERVED_PORT_USER_UNICAST;
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_MASK_NONE = 0;
|
|
const RtpsReservedPortKindMask RTPS_RESERVED_PORT_MASK_ALL = ~RTPS_RESERVED_PORT_MASK_NONE;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum WireProtocolQosPolicyAutoKind {
|
|
RTPS_AUTO_ID_FROM_IP,
|
|
RTPS_AUTO_ID_FROM_MAC,
|
|
RTPS_AUTO_ID_FROM_UUID
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct WireProtocolQosPolicy {
|
|
long participant_id;
|
|
|
|
unsigned long rtps_host_id;
|
|
unsigned long rtps_app_id;
|
|
unsigned long rtps_instance_id;
|
|
|
|
RtpsWellKnownPorts_t rtps_well_known_ports;
|
|
|
|
RtpsReservedPortKindMask rtps_reserved_port_mask;
|
|
|
|
WireProtocolQosPolicyAutoKind rtps_auto_id_kind;
|
|
boolean compute_crc;
|
|
boolean check_crc;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef long TransportBuiltinKindMask;
|
|
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_UDPv4 = 0x00000001 << 0;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_SHMEM = 0x00000001 << 1;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_INTRA = 0x00000001 << 2;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_UDPv6 = 0x00000001 << 3;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_UDPv4_WAN = 0x00000001 << 4;
|
|
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_MASK_NONE = 0;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_MASK_DEFAULT = TRANSPORTBUILTIN_UDPv4 |
|
|
TRANSPORTBUILTIN_SHMEM;
|
|
const TransportBuiltinKindMask TRANSPORTBUILTIN_MASK_ALL = ~TRANSPORTBUILTIN_MASK_NONE;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportBuiltinQosPolicy {
|
|
TransportBuiltinKindMask mask;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportUnicastSettings_t {
|
|
sequence<string<128>, 128> transports;
|
|
|
|
long receive_port;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportUnicastQosPolicy {
|
|
sequence<TransportUnicastSettings_t, 4> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DiscoveryQosPolicy {
|
|
sequence<string<128>, 128> enabled_transports;
|
|
/* number of peers should be unlimited in theory */
|
|
sequence<string<60>, 256> initial_peers;
|
|
sequence<string<60>, 4> multicast_receive_addresses;
|
|
long metatraffic_transport_priority;
|
|
boolean accept_unknown_peers;
|
|
boolean enable_endpoint_discovery;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum DomainParticipantResourceLimitsIgnoredEntityReplacementKind {
|
|
NO_REPLACEMENT_IGNORED_ENTITY_REPLACEMENT = 0,
|
|
NOT_ALIVE_FIRST_IGNORED_ENTITY_REPLACEMENT
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DomainParticipantResourceLimitsQosPolicy {
|
|
AllocationSettings_t local_writer_allocation;
|
|
AllocationSettings_t local_reader_allocation;
|
|
AllocationSettings_t local_publisher_allocation;
|
|
AllocationSettings_t local_subscriber_allocation;
|
|
AllocationSettings_t local_topic_allocation;
|
|
|
|
AllocationSettings_t remote_writer_allocation;
|
|
AllocationSettings_t remote_reader_allocation;
|
|
AllocationSettings_t remote_participant_allocation;
|
|
|
|
AllocationSettings_t matching_writer_reader_pair_allocation;
|
|
AllocationSettings_t matching_reader_writer_pair_allocation;
|
|
|
|
AllocationSettings_t ignored_entity_allocation;
|
|
|
|
AllocationSettings_t content_filtered_topic_allocation;
|
|
AllocationSettings_t content_filter_allocation;
|
|
|
|
AllocationSettings_t read_condition_allocation;
|
|
|
|
AllocationSettings_t query_condition_allocation;
|
|
|
|
AllocationSettings_t outstanding_asynchronous_sample_allocation;
|
|
|
|
AllocationSettings_t flow_controller_allocation;
|
|
|
|
long local_writer_hash_buckets;
|
|
long local_reader_hash_buckets;
|
|
long local_publisher_hash_buckets;
|
|
long local_subscriber_hash_buckets;
|
|
long local_topic_hash_buckets;
|
|
|
|
long remote_writer_hash_buckets;
|
|
long remote_reader_hash_buckets;
|
|
long remote_participant_hash_buckets;
|
|
|
|
long matching_writer_reader_pair_hash_buckets;
|
|
long matching_reader_writer_pair_hash_buckets;
|
|
|
|
long ignored_entity_hash_buckets;
|
|
|
|
long content_filtered_topic_hash_buckets;
|
|
long content_filter_hash_buckets;
|
|
|
|
long flow_controller_hash_buckets;
|
|
|
|
long max_gather_destinations;
|
|
|
|
long participant_user_data_max_length;
|
|
long inter_participant_data_max_length;
|
|
long topic_data_max_length;
|
|
long publisher_group_data_max_length;
|
|
long subscriber_group_data_max_length;
|
|
long writer_user_data_max_length;
|
|
long reader_user_data_max_length;
|
|
|
|
long max_partitions;
|
|
long max_partition_cumulative_characters;
|
|
boolean default_partition_matches_all;
|
|
boolean allow_no_partitions;
|
|
|
|
long type_code_max_serialized_length;
|
|
long type_object_max_serialized_length;
|
|
long serialized_type_object_dynamic_allocation_threshold;
|
|
long type_object_max_deserialized_length;
|
|
long deserialized_type_object_dynamic_allocation_threshold;
|
|
long contentfilter_property_max_length;
|
|
long channel_seq_max_length;
|
|
long channel_filter_expression_max_length;
|
|
long participant_property_list_max_length;
|
|
long participant_property_string_max_length;
|
|
long writer_property_list_max_length;
|
|
long writer_property_string_max_length;
|
|
long reader_property_list_max_length;
|
|
long reader_property_string_max_length;
|
|
long plugin_info_parameter_max_length;
|
|
long max_endpoint_groups;
|
|
long max_endpoint_group_cumulative_characters;
|
|
long transport_info_list_max_length;
|
|
DomainParticipantResourceLimitsIgnoredEntityReplacementKind ignored_entity_replacement_kind;
|
|
|
|
AllocationSettings_t remote_topic_query_allocation;
|
|
long remote_topic_query_hash_buckets;
|
|
long writer_data_tag_list_max_length;
|
|
long writer_data_tag_string_max_length;
|
|
long reader_data_tag_list_max_length;
|
|
long reader_data_tag_string_max_length;
|
|
unsigned long shmem_ref_transfer_mode_max_segments;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef unsigned long ThreadSettingsKindMask;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum ThreadSettingsKind {
|
|
THREAD_SETTINGS_DEFAULT = 0x00,
|
|
THREAD_SETTINGS_FLOATING_POINT = 0x01,
|
|
THREAD_SETTINGS_STDIO = 0x02,
|
|
THREAD_SETTINGS_REALTIME_PRIORITY = 0x08,
|
|
THREAD_SETTINGS_PRIORITY_ENFORCE = 0x10,
|
|
THREAD_SETTINGS_CANCEL_ASYNCHRONOUS = 0x20
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum ThreadSettingsCpuRotationKind {
|
|
THREAD_SETTINGS_CPU_NO_ROTATION,
|
|
THREAD_SETTINGS_CPU_RR_ROTATION
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ThreadSettings_t {
|
|
ThreadSettingsKindMask mask;
|
|
long priority;
|
|
long stack_size;
|
|
sequence<long, 1024> cpu_list;
|
|
ThreadSettingsCpuRotationKind cpu_rotation;
|
|
long num_uses;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct EventQosPolicy {
|
|
ThreadSettings_t thread; //@ID 0
|
|
|
|
long initial_count; //@ID 1
|
|
long max_count; //@ID 2
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ReceiverPoolQosPolicy {
|
|
ThreadSettings_t thread; //@ID 0
|
|
|
|
long initial_receive_threads;//@ID 1
|
|
long max_receive_threads; //@ID 2
|
|
|
|
long buffer_size; //@ID 3
|
|
long buffer_alignment; //@ID 4
|
|
|
|
boolean is_timestamp_enabled; //@ID 5
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DatabaseQosPolicy {
|
|
ThreadSettings_t thread; //@ID 0
|
|
|
|
Duration_t shutdown_timeout; //@ID 1
|
|
Duration_t cleanup_period; //@ID 2
|
|
Duration_t shutdown_cleanup_period; //@ID 3
|
|
|
|
long initial_records; //@ID 4
|
|
long max_skiplist_level; //@ID 5
|
|
long table_allocation_block_size; //@ID 6
|
|
long max_weak_references; //@ID 7
|
|
long initial_weak_references; //@ID 8
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum RemoteParticipantPurgeKind {
|
|
LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE,
|
|
NO_REMOTE_PARTICIPANT_PURGE
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct BuiltinTopicReaderResourceLimits_t {
|
|
long initial_samples;
|
|
long max_samples;
|
|
long initial_infos;
|
|
long max_infos;
|
|
long initial_outstanding_reads;
|
|
long max_outstanding_reads;
|
|
long max_samples_per_read;
|
|
boolean disable_fragmentation_support;
|
|
long max_fragmented_samples;
|
|
long initial_fragmented_samples;
|
|
long max_fragmented_samples_per_remote_writer;
|
|
long max_fragments_per_sample;
|
|
boolean dynamically_allocate_fragmented_samples;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct RtpsReliableReaderProtocol_t {
|
|
Duration_t min_heartbeat_response_delay;
|
|
Duration_t max_heartbeat_response_delay;
|
|
Duration_t heartbeat_suppression_duration;
|
|
Duration_t nack_period;
|
|
long receive_window_size;
|
|
Duration_t round_trip_time;
|
|
Duration_t app_ack_period;
|
|
Duration_t min_app_ack_response_keep_duration;
|
|
long samples_per_app_ack;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct RtpsReliableWriterProtocol_t {
|
|
long low_watermark;
|
|
long high_watermark;
|
|
|
|
Duration_t heartbeat_period;
|
|
Duration_t fast_heartbeat_period;
|
|
Duration_t late_joiner_heartbeat_period;
|
|
Duration_t virtual_heartbeat_period;
|
|
long samples_per_virtual_heartbeat;
|
|
|
|
long max_heartbeat_retries;
|
|
boolean inactivate_nonprogressing_readers;
|
|
long heartbeats_per_max_samples;
|
|
|
|
Duration_t min_nack_response_delay;
|
|
Duration_t max_nack_response_delay;
|
|
Duration_t nack_suppression_duration;
|
|
|
|
long max_bytes_per_nack_response;
|
|
|
|
Duration_t disable_positive_acks_min_sample_keep_duration;
|
|
Duration_t disable_positive_acks_max_sample_keep_duration;
|
|
Duration_t disable_positive_acks_sample_min_separation;
|
|
|
|
boolean disable_positive_acks_enable_adaptive_sample_keep_duration;
|
|
|
|
boolean disable_positive_acks_enable_spin_wait;
|
|
|
|
long disable_positive_acks_decrease_sample_keep_duration_factor;
|
|
long disable_positive_acks_increase_sample_keep_duration_factor;
|
|
|
|
long min_send_window_size;
|
|
long max_send_window_Size;
|
|
Duration_t send_window_update_period;
|
|
long send_window_increase_factor;
|
|
long send_window_decrease_factor;
|
|
|
|
boolean enable_multicast_periodic_heartbeat;
|
|
long multicast_resend_threshold;
|
|
boolean disable_repair_piggyback_heartbeat;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef long DiscoveryConfigBuiltinPluginKindMask;
|
|
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_SPDP = 0x0001 << 0;
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_SEDP = 0x0001 << 1;
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_SDP = DISCOVERYCONFIG_BUILTIN_SPDP |
|
|
DISCOVERYCONFIG_BUILTIN_SEDP;
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_EDS = 0x0001 << 2;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_PLUGIN_MASK_ALL = 0xefff;
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_PLUGIN_MASK_NONE = 0x0;
|
|
const DiscoveryConfigBuiltinPluginKindMask DISCOVERYCONFIG_BUILTIN_PLUGIN_MASK_DEFAULT = DISCOVERYCONFIG_BUILTIN_SDP;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
typedef long DiscoveryConfigBuiltinChannelKindMask;
|
|
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_SERVICE_REQUEST_CHANNEL = 0x0003;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_TYPE_LOOKUP_SERVICE_CHANNEL = 0xF000;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_TYPE_LOOKUP_SERVICE_REQUEST_CHANNEL = 0x3000;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_TYPE_LOOKUP_SERVICE_REPLY_CHANNEL = 0xC000;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_BUILTIN_CHANNEL_MASK_ALL = 0xffff;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_BUILTIN_CHANNEL_MASK_NONE = 0x0;
|
|
const DiscoveryConfigBuiltinChannelKindMask DISCOVERYCONFIG_BUILTIN_CHANNEL_MASK_DEFAULT = DISCOVERYCONFIG_SERVICE_REQUEST_CHANNEL;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DiscoveryBuiltinReaderFragmentationResourceLimits_t {
|
|
boolean disable_fragmentation_support;
|
|
long max_fragmented_samples;
|
|
long initial_fragmented_samples;
|
|
long max_fragmented_samples_per_remote_writer;
|
|
long max_fragments_per_sample;
|
|
boolean dynamically_allocate_fragmented_samples;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum PublishModeQosPolicyKind {
|
|
SYNCHRONOUS_PUBLISH_MODE_QOS,
|
|
ASYNCHRONOUS_PUBLISH_MODE_QOS
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct PublishModeQosPolicy {
|
|
PublishModeQosPolicyKind kind;
|
|
|
|
string<255> flow_controller_name;
|
|
|
|
long priority;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum ThreadBlockingKind {
|
|
SEMAPHORE_BLOCKING_KIND,
|
|
SPIN_BLOCKING_KIND
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct AsynchronousPublisherQosPolicy {
|
|
boolean disable_asynchronous_write; //@ID 0
|
|
|
|
ThreadSettings_t thread; //@ID 1
|
|
boolean disable_asynchronous_batch; //@ID 2
|
|
|
|
ThreadSettings_t asynchronous_batch_thread; //@ID 3
|
|
ThreadBlockingKind asynchronous_batch_blocking_kind; //@ID 4
|
|
boolean disable_topic_query_publication; //@ID 6
|
|
ThreadSettings_t topic_query_publication_thread; //@ID 5
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DiscoveryConfigQosPolicy {
|
|
Duration_t participant_liveliness_lease_duration; //@ID 0
|
|
Duration_t participant_liveliness_assert_period; //@ID 1
|
|
Duration_t participant_announcement_period; //@ID 52
|
|
|
|
RemoteParticipantPurgeKind remote_participant_purge_kind; //@ID 2
|
|
Duration_t max_liveliness_loss_detection_period; //@ID 3
|
|
long initial_participant_announcements; //@ID 4
|
|
long new_remote_participant_announcements; //@ID 51
|
|
Duration_t min_initial_participant_announcement_period; //@ID 5
|
|
Duration_t max_initial_participant_announcement_period; //@ID 6
|
|
|
|
BuiltinTopicReaderResourceLimits_t participant_reader_resource_limits; //@ID 7
|
|
|
|
RtpsReliableReaderProtocol_t publication_reader; //@ID 8
|
|
BuiltinTopicReaderResourceLimits_t publication_reader_resource_limits; //@ID 9
|
|
|
|
RtpsReliableReaderProtocol_t subscription_reader; //@ID 10
|
|
BuiltinTopicReaderResourceLimits_t subscription_reader_resource_limits; //@ID 11
|
|
|
|
RtpsReliableWriterProtocol_t publication_writer; //@ID 12
|
|
WriterDataLifecycleQosPolicy publication_writer_data_lifecycle; //@ID 13
|
|
RtpsReliableWriterProtocol_t subscription_writer; //@ID 14
|
|
WriterDataLifecycleQosPolicy subscription_writer_data_lifecycle; //@ID 15
|
|
|
|
long endpoint_plugin_redundancy_level; //@ID 16
|
|
|
|
DiscoveryConfigBuiltinPluginKindMask builtin_discovery_plugins; //@ID 17
|
|
|
|
DiscoveryConfigBuiltinChannelKindMask enabled_builtin_channels; //@ID 50
|
|
|
|
ReliabilityQosPolicyKind
|
|
participant_message_reader_reliability_kind; //@ID 37
|
|
|
|
RtpsReliableReaderProtocol_t participant_message_reader; //@ID 18
|
|
RtpsReliableWriterProtocol_t participant_message_writer; //@ID 19
|
|
|
|
PublishModeQosPolicy publication_writer_publish_mode; //@ID 20
|
|
PublishModeQosPolicy subscription_writer_publish_mode; //@ID 21
|
|
AsynchronousPublisherQosPolicy asynchronous_publisher; //@ID 22
|
|
|
|
Duration_t default_domain_announcement_period; //@ID 23
|
|
boolean ignore_default_domain_announcements; //@ID 24
|
|
|
|
RtpsReliableWriterProtocol_t service_request_writer; //@ID 38
|
|
WriterDataLifecycleQosPolicy service_request_writer_data_lifecycle; //@ID 39
|
|
PublishModeQosPolicy service_request_writer_publish_mode; //@ID 44
|
|
RtpsReliableReaderProtocol_t service_request_reader; //@ID 40
|
|
|
|
Duration_t locator_reachability_assert_period; //@ID 41
|
|
Duration_t locator_reachability_lease_duration; //@ID 42
|
|
Duration_t locator_reachability_change_detection_period; //@ID 43
|
|
|
|
RtpsReliableWriterProtocol_t secure_volatile_writer; //@ID 48
|
|
PublishModeQosPolicy secure_volatile_writer_publish_mode; //@ID 45
|
|
RtpsReliableReaderProtocol_t secure_volatile_reader; //@ID 49
|
|
|
|
long endpoint_type_object_lb_serialization_threshold; //@ID 46
|
|
Duration_t dns_tracker_polling_period; //@ID 47
|
|
|
|
/* Participant Configuration Channel QoS (SPDP2) */
|
|
PublishModeQosPolicy participant_configuration_writer_publish_mode; //@ID 53
|
|
RtpsReliableWriterProtocol_t participant_configuration_writer; //@ID 54
|
|
WriterDataLifecycleQosPolicy participant_configuration_writer_data_lifecycle; //@ID 55
|
|
RtpsReliableReaderProtocol_t participant_configuration_reader; //@ID 56
|
|
BuiltinTopicReaderResourceLimits_t participant_configuration_reader_resource_limits; //@ID 57
|
|
|
|
boolean sedp_rely_on_spdp_only; //@ID 25
|
|
|
|
LatencyBudgetQosPolicy publication_writer_latency_budget; //@ID 26
|
|
boolean publication_writer_push_on_write; //@ID 27
|
|
|
|
LatencyBudgetQosPolicy subscription_writer_latency_budget; //@ID 28
|
|
boolean subscription_writer_push_on_write; //@ID 29
|
|
|
|
RtpsReliableWriterProtocol_t participant_state_writer; //@ID 30
|
|
LatencyBudgetQosPolicy participant_state_writer_latency_budget; //@ID 31
|
|
boolean participant_state_writer_push_on_write; //@ID 32
|
|
PublishModeQosPolicy participant_state_writer_publish_mode; //@ID 33
|
|
|
|
RtpsReliableReaderProtocol_t participant_proxy_reader; //@ID 34
|
|
DiscoveryBuiltinReaderFragmentationResourceLimits_t
|
|
participant_proxy_reader_fragmentation_resource_limits; //@ID 35
|
|
|
|
// IMPORTANT!! ID 36 was used for plugin_promiscuity_kind until it was
|
|
// removed, so 36 must not be used.
|
|
string<255> request_types_filter; //@ID 58
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct Property_t {
|
|
/* Total accumulated length limited by DomainParticipantResourceLimitsQosPolicy,
|
|
should be 1024 in total by default */
|
|
string<127> name;
|
|
string<511> value;
|
|
|
|
boolean propagate;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
const long PROPERTY_LIST_MAX_LENGTH = 64;
|
|
struct PropertyQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, default 32 */
|
|
sequence<Property_t, PROPERTY_LIST_MAX_LENGTH> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
@extensibility(APPENDABLE)
|
|
struct Tag {
|
|
/*
|
|
* Total accumulated length limited by
|
|
* DomainParticipantResourceLimitsQosPolicy, should be 0 by default.
|
|
*/
|
|
string<255> name;
|
|
string<511> value;
|
|
}; //@top-level false
|
|
|
|
const long DATA_TAG_LIST_MAX_LENGTH = 64;
|
|
|
|
@extensibility(APPENDABLE)
|
|
struct DataTagQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, default 0 */
|
|
sequence<Tag, DATA_TAG_LIST_MAX_LENGTH> tags;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct EntityNameQosPolicy {
|
|
string<255> name;
|
|
string<255> role_name;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
const long TRANSPORT_MULICAST_MAPPING_STRING_MAX_LENGTH = 255;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportMulticastMappingFunction_t {
|
|
string<TRANSPORT_MULICAST_MAPPING_STRING_MAX_LENGTH> dll;
|
|
string<TRANSPORT_MULICAST_MAPPING_STRING_MAX_LENGTH> function_name;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportMulticastMapping_t {
|
|
string<TRANSPORT_MULICAST_MAPPING_STRING_MAX_LENGTH> addresses;
|
|
string<TRANSPORT_MULICAST_MAPPING_STRING_MAX_LENGTH> topic_expression;
|
|
TransportMulticastMappingFunction_t mapping_function;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportMulticastMappingQosPolicy {
|
|
sequence<TransportMulticastMapping_t,4> value;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum ServiceQosPolicyKind {
|
|
NO_SERVICE_QOS,
|
|
PERSISTENCE_SERVICE_QOS,
|
|
QUEUING_SERVICE_QOS,
|
|
ROUTING_SERVICE_QOS,
|
|
RECORDING_SERVICE_QOS,
|
|
REPLAY_SERVICE_QOS,
|
|
DATABASE_INTEGRATION_SERVICE_QOS,
|
|
WEB_INTEGRATION_SERVICE_QOS
|
|
}; //@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ServiceQosPolicy {
|
|
ServiceQosPolicyKind kind;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum CdrPaddingKind {
|
|
ZERO_CDR_PADDING,
|
|
NOT_SET_CDR_PADDING,
|
|
AUTO_CDR_PADDING
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TypeSupportQosPolicy {
|
|
/* NOTE: This is a "void *" in our code, fix
|
|
when possible */
|
|
long long plugin_data;
|
|
CdrPaddingKind cdr_padding_kind;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct UserObjectSettings_t {
|
|
long size;
|
|
long alignment;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct UserObjectQosPolicy {
|
|
UserObjectSettings_t participant_user_object;
|
|
UserObjectSettings_t topic_user_object;
|
|
UserObjectSettings_t content_filtered_topic_user_object;
|
|
UserObjectSettings_t publisher_user_object;
|
|
UserObjectSettings_t data_writer_user_object;
|
|
UserObjectSettings_t subscriber_user_object;
|
|
UserObjectSettings_t data_reader_user_object;
|
|
UserObjectSettings_t read_condition_user_object;
|
|
UserObjectSettings_t query_condition_user_object;
|
|
UserObjectSettings_t index_condition_user_object;
|
|
UserObjectSettings_t flow_controller_user_object;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
struct DomainParticipantProtocolQosPolicy {
|
|
boolean vendor_specific_entity;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DomainParticipantQos {
|
|
UserDataQosPolicy user_data; //@ID 0
|
|
EntityFactoryQosPolicy entity_factory; //@ID 1
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
WireProtocolQosPolicy wire_protocol; //@ID 2
|
|
TransportBuiltinQosPolicy transport_builtin; //@ID 3
|
|
TransportUnicastQosPolicy default_unicast; //@ID 4
|
|
DiscoveryQosPolicy discovery; //@ID 5
|
|
DomainParticipantResourceLimitsQosPolicy resource_limits; //@ID 6
|
|
EventQosPolicy event; //@ID 7
|
|
ReceiverPoolQosPolicy receiver_pool; //@ID 8
|
|
DatabaseQosPolicy database; //@ID 9
|
|
DiscoveryConfigQosPolicy discovery_config; //@ID 10
|
|
PropertyQosPolicy property; //@ID 12
|
|
EntityNameQosPolicy participant_name; //@ID 13
|
|
TransportMulticastMappingQosPolicy multicast_mapping; //@ID 14
|
|
ServiceQosPolicy service; //@ID 18
|
|
PartitionQosPolicy partition; //@ID 19
|
|
UserObjectQosPolicy user_object; //@ID 15
|
|
DomainParticipantProtocolQosPolicy protocol; //@ID 16
|
|
TypeSupportQosPolicy type_support; //@ID 17
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
struct TopicProtocolQosPolicy {
|
|
boolean vendor_specific_entity;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
|
|
struct TopicQos {
|
|
TopicDataQosPolicy topic_data; //@ID 0
|
|
DurabilityQosPolicy durability; //@ID 1
|
|
DurabilityServiceQosPolicy durability_service; //@ID 2
|
|
DeadlineQosPolicy deadline; //@ID 3
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 4
|
|
LivelinessQosPolicy liveliness; //@ID 5
|
|
ReliabilityQosPolicy reliability; //@ID 6
|
|
DestinationOrderQosPolicy destination_order; //@ID 7
|
|
HistoryQosPolicy history; //@ID 8
|
|
ResourceLimitsQosPolicy resource_limits; //@ID 9
|
|
TransportPriorityQosPolicy transport_priority; //@ID 10
|
|
LifespanQosPolicy lifespan; //@ID 11
|
|
|
|
OwnershipQosPolicy ownership; //@ID 12
|
|
DataRepresentationQosPolicy data_representation; //@ID 14
|
|
|
|
/***** RTI EXTENSION ****/
|
|
TopicProtocolQosPolicy protocol; //@ID 13
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct GUID_t {
|
|
octet value[16];
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DataWriterProtocolQosPolicy {
|
|
GUID_t virtual_guid; //@ID 0
|
|
unsigned long rtps_object_id; //@ID 1
|
|
|
|
boolean push_on_write; //@ID 2
|
|
boolean disable_positive_acks; //@ID 3
|
|
boolean disable_inline_keyhash; //@ID 4
|
|
boolean serialize_key_with_dispose; //@ID 5
|
|
boolean propagate_app_ack_with_no_response; //@ID 9
|
|
|
|
RtpsReliableWriterProtocol_t rtps_reliable_writer; //@ID 6
|
|
|
|
SequenceNumber_t initial_virtual_sequence_number; //@ID 7
|
|
boolean vendor_specific_entity; //@ID 8
|
|
boolean meta_entity; //@ID 10
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportSelectionQosPolicy {
|
|
sequence<string<128>, 128> enabled_transports;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct BatchQosPolicy {
|
|
boolean enable;
|
|
|
|
long max_data_bytes;
|
|
long max_meta_data_bytes;
|
|
long max_samples;
|
|
Duration_t max_flush_delay;
|
|
|
|
Duration_t source_timestamp_resolution;
|
|
boolean thread_safe_write;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportMulticastSettings_t {
|
|
sequence<string<128>, 128> transports;
|
|
string<40> receive_address;
|
|
|
|
long receive_port;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct ChannelSettings_t {
|
|
sequence<TransportMulticastSettings_t, 4> multicast_settings;
|
|
|
|
/* total accumulated length limited by DomainParticipantResourceLimitsQosPolicy, default 256 */
|
|
string<255> filter_expression;
|
|
|
|
long priority;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct MultiChannelQosPolicy {
|
|
/* limited by DomainParticipantResourceLimitsQosPolicy, default 32 */
|
|
sequence<ChannelSettings_t, 32> channels; //@ID 0
|
|
|
|
string<255> filter_name; //@ID 1
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum DataWriterResourceLimitsInstanceReplacementKind {
|
|
UNREGISTERED_INSTANCE_REPLACEMENT = 0,
|
|
ALIVE_INSTANCE_REPLACEMENT,
|
|
DISPOSED_INSTANCE_REPLACEMENT,
|
|
ALIVE_THEN_DISPOSED_INSTANCE_REPLACEMENT,
|
|
DISPOSED_THEN_ALIVE_INSTANCE_REPLACEMENT,
|
|
ALIVE_OR_DISPOSED_INSTANCE_REPLACEMENT
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DataWriterResourceLimitsQosPolicy {
|
|
long initial_concurrent_blocking_threads;
|
|
long max_concurrent_blocking_threads;
|
|
long max_remote_reader_filters;
|
|
long initial_batches;
|
|
long max_batches;
|
|
long cookie_max_length;
|
|
|
|
DataWriterResourceLimitsInstanceReplacementKind instance_replacement;
|
|
boolean replace_empty_instances;
|
|
boolean autoregister_instances;
|
|
|
|
long initial_virtual_writers;
|
|
long max_virtual_writers;
|
|
long max_remote_readers;
|
|
long max_app_ack_remote_readers;
|
|
long initial_active_topic_queries;
|
|
long max_active_topic_queries;
|
|
AllocationSettings_t writer_loaned_sample_allocation;
|
|
boolean initialize_writer_loaned_sample;
|
|
long initial_remote_readers;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
@extensibility(APPENDABLE)
|
|
struct DataWriterShmemRefTransferModeSettings {
|
|
boolean enable_data_consistency_check;
|
|
boolean initialize_data;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
@extensibility(APPENDABLE)
|
|
struct DataWriterTransferModeQosPolicy {
|
|
DataWriterShmemRefTransferModeSettings shmem_ref_settings;
|
|
}; //@top-level false
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportEncapsulationSettings_t {
|
|
sequence<string<128>, 128> transports;
|
|
sequence<EncapsulationId_t, 8> encapsulations;
|
|
}; //@top-level false
|
|
//@Extensibility FINAL_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportEncapsulationQosPolicy {
|
|
sequence<TransportEncapsulationSettings_t, 4> value;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct DataWriterQos {
|
|
DurabilityQosPolicy durability; //@ID 0
|
|
DurabilityServiceQosPolicy durability_service; //@ID 1
|
|
DeadlineQosPolicy deadline; //@ID 2
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 3
|
|
LivelinessQosPolicy liveliness; //@ID 4
|
|
ReliabilityQosPolicy reliability; //@ID 5
|
|
DestinationOrderQosPolicy destination_order; //@ID 6
|
|
HistoryQosPolicy history; //@ID 7
|
|
ResourceLimitsQosPolicy resource_limits; //@ID 8
|
|
TransportPriorityQosPolicy transport_priority; //@ID 9
|
|
LifespanQosPolicy lifespan; //@ID 10
|
|
|
|
UserDataQosPolicy user_data; //@ID 11
|
|
OwnershipQosPolicy ownership; //@ID 12
|
|
OwnershipStrengthQosPolicy ownership_strength; //@ID 13
|
|
WriterDataLifecycleQosPolicy writer_data_lifecycle; //@ID 14
|
|
DataRepresentationQosPolicy data_representation; //@ID 30
|
|
DataTagQosPolicy data_tags; //@ID 29
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
DataWriterResourceLimitsQosPolicy writer_resource_limits; //@ID 15
|
|
DataWriterProtocolQosPolicy protocol; //@ID 16
|
|
TransportSelectionQosPolicy transport_selection; //@ID 17
|
|
TransportUnicastQosPolicy unicast; //@ID 18
|
|
TransportEncapsulationQosPolicy encapsulation; //@ID 19
|
|
PublishModeQosPolicy publish_mode; //@ID 20
|
|
PropertyQosPolicy property; //@ID 21
|
|
ServiceQosPolicy service; //@ID 22
|
|
BatchQosPolicy batch; //@ID 23
|
|
MultiChannelQosPolicy multi_channel; //@ID 24
|
|
AvailabilityQosPolicy availability; //@ID 25
|
|
EntityNameQosPolicy publication_name; //@ID 26
|
|
TopicQueryDispatchQosPolicy topic_query; //@ID 28
|
|
DataWriterTransferModeQosPolicy transfer_mode; //@ID 31
|
|
TypeSupportQosPolicy type_support; //@ID 27
|
|
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
struct PublisherProtocolQosPolicy {
|
|
boolean vendor_specific_entity;
|
|
|
|
/*
|
|
* exclusive_area_level moved here from deprecated exclusive area policy.
|
|
* It is in this policy for convenience only.
|
|
*/
|
|
long exclusive_area_level;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct PublisherQos {
|
|
PresentationQosPolicy presentation; //@ID 0
|
|
PartitionQosPolicy partition; //@ID 1
|
|
GroupDataQosPolicy group_data; //@ID 2
|
|
EntityFactoryQosPolicy entity_factory; //@ID 3
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
AsynchronousPublisherQosPolicy asynchronous_publisher; //@ID 4
|
|
PublisherProtocolQosPolicy protocol; //@ID 6
|
|
EntityNameQosPolicy publisher_name; //@ID 7
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
const long AUTO_MAX_TOTAL_INSTANCES = 0;
|
|
|
|
/***** RTI EXTENSION ****/
|
|
enum DataReaderInstanceRemovalKind {
|
|
NO_INSTANCE_REMOVAL = 0,
|
|
EMPTY_INSTANCE_REMOVAL,
|
|
FULLY_PROCESSED_INSTANCE_REMOVAL,
|
|
ANY_INSTANCE_REMOVAL
|
|
};
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DDS_DataReaderResourceLimitsInstanceReplacementSettings {
|
|
DataReaderInstanceRemovalKind alive_instance_removal;
|
|
DataReaderInstanceRemovalKind disposed_instance_removal;
|
|
DataReaderInstanceRemovalKind no_writers_instance_removal;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DataReaderResourceLimitsQosPolicy {
|
|
long max_remote_writers;
|
|
long max_remote_writers_per_instance;
|
|
|
|
long max_samples_per_remote_writer;
|
|
long max_infos;
|
|
|
|
long initial_remote_writers;
|
|
long initial_remote_writers_per_instance;
|
|
long initial_infos;
|
|
long initial_outstanding_reads;
|
|
long max_outstanding_reads;
|
|
|
|
long max_samples_per_read;
|
|
boolean disable_fragmentation_support;
|
|
long max_fragmented_samples;
|
|
long initial_fragmented_samples;
|
|
long max_fragmented_samples_per_remote_writer;
|
|
long max_fragments_per_sample;
|
|
boolean dynamically_allocate_fragmented_samples;
|
|
long max_total_instances;
|
|
long max_remote_virtual_writers;
|
|
long intial_remote_virtual_writers;
|
|
long max_remote_virtual_writers_per_instance;
|
|
long initial_remote_virtual_writers_per_instance;
|
|
long max_remote_writers_per_sample;
|
|
long max_query_condition_filters;
|
|
long max_app_ack_response_length;
|
|
boolean keep_minimum_state_for_instances;
|
|
|
|
long initial_topic_queries;
|
|
long max_topic_queries;
|
|
AllocationSettings_t shmem_ref_transfer_mode_attached_segment_allocation;
|
|
DDS_DataReaderResourceLimitsInstanceReplacementSettings instance_replacement;
|
|
Duration_t autopurge_remote_not_alive_writer_delay;
|
|
Duration_t autopurge_remote_virtual_writer_delay;
|
|
|
|
boolean lazily_allocate_batch_resources;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct DataReaderProtocolQosPolicy {
|
|
GUID_t virtual_guid; //@ID 0
|
|
unsigned long rtps_object_id; //@ID 1
|
|
|
|
boolean expects_inline_qos; //@ID 2
|
|
boolean disable_positive_acks; //@ID 3
|
|
boolean propagate_dispose_of_unregistered_instances; //@ID 4
|
|
|
|
RtpsReliableReaderProtocol_t rtps_reliable_reader; //@ID 5
|
|
boolean vendor_specific_entity; //@ID 6
|
|
boolean propagate_unregister_of_disposed_instances; //@ID 7
|
|
boolean meta_entity; //@ID 8
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSION ****/
|
|
struct TransportMulticastQosPolicy {
|
|
sequence<TransportMulticastSettings_t, 4> value;
|
|
TransportMulticastQosPolicyKind kind;
|
|
}; //@top-level false
|
|
|
|
struct DataReaderQos {
|
|
DurabilityQosPolicy durability; //@ID 0
|
|
DeadlineQosPolicy deadline; //@ID 1
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 2
|
|
LivelinessQosPolicy liveliness; //@ID 3
|
|
ReliabilityQosPolicy reliability; //@ID 4
|
|
DestinationOrderQosPolicy destination_order; //@ID 5
|
|
HistoryQosPolicy history; //@ID 6
|
|
ResourceLimitsQosPolicy resource_limits; //@ID 7
|
|
|
|
UserDataQosPolicy user_data; //@ID 8
|
|
OwnershipQosPolicy ownership; //@ID 9
|
|
TimeBasedFilterQosPolicy time_based_filter; //@ID 10
|
|
ReaderDataLifecycleQosPolicy reader_data_lifecycle; //@ID 11
|
|
|
|
DataRepresentationQosPolicy data_representation; //@ID 26
|
|
TypeConsistencyEnforcementQosPolicy type_consistency; //@ID 12
|
|
DataTagQosPolicy data_tags; //@ID 25
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
DataReaderResourceLimitsQosPolicy reader_resource_limits; //@ID 13
|
|
DataReaderProtocolQosPolicy protocol; //@ID 14
|
|
TransportSelectionQosPolicy transport_selection; //@ID 15
|
|
TransportUnicastQosPolicy unicast; //@ID 16
|
|
TransportMulticastQosPolicy multicast; //@ID 17
|
|
TransportEncapsulationQosPolicy encapsulation; //@ID 18
|
|
PropertyQosPolicy property; //@ID 19
|
|
ServiceQosPolicy service; //@ID 20
|
|
AvailabilityQosPolicy availability; //@ID 21
|
|
EntityNameQosPolicy subscription_name; //@ID 22
|
|
TransportPriorityQosPolicy transport_priority; //@ID 24
|
|
TypeSupportQosPolicy type_support; //@ID 23
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
struct SubscriberProtocolQosPolicy {
|
|
boolean vendor_specific_entity;
|
|
}; //@top-level false
|
|
//@Extensibility EXTENSIBLE_EXTENSIBILITY
|
|
|
|
struct SubscriberQos {
|
|
PresentationQosPolicy presentation; //@ID 0
|
|
PartitionQosPolicy partition; //@ID 1
|
|
GroupDataQosPolicy group_data; //@ID 2
|
|
EntityFactoryQosPolicy entity_factory; //@ID 3
|
|
|
|
/***** RTI EXTENSIONS ****/
|
|
SubscriberProtocolQosPolicy protocol; //@ID 5
|
|
EntityNameQosPolicy subscriber_name; //@ID 6
|
|
}; //@top-level false
|
|
//@Extensibility MUTABLE_EXTENSIBILITY
|
|
|
|
// ----------------------------------------------------------------------
|
|
|
|
// TODO: Add RTI extensions to built-in topic data
|
|
struct ParticipantBuiltinTopicData {
|
|
BuiltinTopicKey_t key;
|
|
UserDataQosPolicy user_data;
|
|
}; //@top-level false
|
|
|
|
const long BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH = 255;
|
|
|
|
struct TopicBuiltinTopicData {
|
|
BuiltinTopicKey_t key; //@ID 0
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> name; //@ID 1
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> type_name; //@ID 2
|
|
DurabilityQosPolicy durability; //@ID 3
|
|
DurabilityServiceQosPolicy durability_service; //@ID 4
|
|
DeadlineQosPolicy deadline; //@ID 5
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 6
|
|
LivelinessQosPolicy liveliness; //@ID 7
|
|
ReliabilityQosPolicy reliability; //@ID 8
|
|
TransportPriorityQosPolicy transport_priority; //@ID 9
|
|
LifespanQosPolicy lifespan; //@ID 10
|
|
DestinationOrderQosPolicy destination_order; //@ID 11
|
|
HistoryQosPolicy history; //@ID 12
|
|
ResourceLimitsQosPolicy resource_limits; //@ID 13
|
|
OwnershipQosPolicy ownership; //@ID 14
|
|
TopicDataQosPolicy topic_data; //@ID 15
|
|
TypeConsistencyEnforcementQosPolicy type_consistency; //@ID 16
|
|
DataRepresentationQosPolicy data_representation; //@ID 17
|
|
}; //@Extensibility MUTABLE_EXTENSIBILITY
|
|
//@top-level false
|
|
|
|
struct PublicationBuiltinTopicData {
|
|
BuiltinTopicKey_t key; //@ID 0
|
|
BuiltinTopicKey_t participant_key; //@ID 1
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> topic_name; //@ID 2
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> type_name; //@ID 3
|
|
|
|
DurabilityQosPolicy durability; //@ID 4
|
|
DurabilityServiceQosPolicy durability_service; //@ID 5
|
|
DeadlineQosPolicy deadline; //@ID 6
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 7
|
|
LivelinessQosPolicy liveliness; //@ID 8
|
|
ReliabilityQosPolicy reliability; //@ID 9
|
|
LifespanQosPolicy lifespan; //@ID 10
|
|
UserDataQosPolicy user_data; //@ID 11
|
|
OwnershipQosPolicy ownership; //@ID 12
|
|
OwnershipStrengthQosPolicy ownership_strength; //@ID 13
|
|
DestinationOrderQosPolicy destination_order; //@ID 14
|
|
|
|
PresentationQosPolicy presentation; //@ID 15
|
|
PartitionQosPolicy partition; //@ID 16
|
|
TopicDataQosPolicy topic_data; //@ID 17
|
|
GroupDataQosPolicy group_data; //@ID 18
|
|
TypeConsistencyEnforcementQosPolicy type_consistency; //@ID 19
|
|
DataRepresentationQosPolicy data_representation; //@ID 21
|
|
DataTagQosPolicy data_tags; //@ID 20
|
|
BuiltinTopicKey_t related_datareader_key; //@ID 22
|
|
}; //@Extensibility MUTABLE_EXTENSIBILITY
|
|
//@top-level false
|
|
|
|
struct SubscriptionBuiltinTopicData {
|
|
BuiltinTopicKey_t key; //@ID 0
|
|
BuiltinTopicKey_t participant_key; //@ID 1
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> topic_name; //@ID 2
|
|
string<BUILTIN_TOPIC_DATA_STRING_MAX_LENGTH> type_name; //@ID 3
|
|
|
|
DurabilityQosPolicy durability; //@ID 4
|
|
DeadlineQosPolicy deadline; //@ID 5
|
|
LatencyBudgetQosPolicy latency_budget; //@ID 6
|
|
LivelinessQosPolicy liveliness; //@ID 7
|
|
ReliabilityQosPolicy reliability; //@ID 8
|
|
OwnershipQosPolicy ownership; //@ID 9
|
|
DestinationOrderQosPolicy destination_order; //@ID 10
|
|
UserDataQosPolicy user_data; //@ID 11
|
|
TimeBasedFilterQosPolicy time_based_filter; //@ID 12
|
|
|
|
PresentationQosPolicy presentation; //@ID 13
|
|
PartitionQosPolicy partition; //@ID 14
|
|
TopicDataQosPolicy topic_data; //@ID 15
|
|
GroupDataQosPolicy group_data; //@ID 16
|
|
TypeConsistencyEnforcementQosPolicy type_consistency; //@ID 17
|
|
DataRepresentationQosPolicy data_representation; //@ID 19
|
|
DataTagQosPolicy data_tags; //@ID 18
|
|
BuiltinTopicKey_t related_datawriter_key; //@ID 20
|
|
}; //@Extensibility MUTABLE_EXTENSIBILITY
|
|
//@top-level false
|
|
|
|
|
|
struct SampleInfo {
|
|
SampleStateKind sample_state;
|
|
ViewStateKind view_state;
|
|
InstanceStateKind instance_state;
|
|
|
|
Time_t source_timestamp;
|
|
|
|
InstanceHandle_t instance_handle;
|
|
InstanceHandle_t publication_handle;
|
|
|
|
long disposed_generation_count;
|
|
long no_writers_generation_count;
|
|
long sample_rank;
|
|
long generation_rank;
|
|
long absolute_generation_rank;
|
|
boolean valid_data;
|
|
|
|
/***** RTI EXTENSIONS *****/
|
|
Time_t reception_timestamp;
|
|
|
|
SequenceNumber_t publication_sequence_number;
|
|
SequenceNumber_t reception_sequence_number;
|
|
|
|
GUID_t publication_virtual_guid;
|
|
SequenceNumber_t publication_virtual_sequence_number;
|
|
GUID_t original_publication_virtual_guid;
|
|
SequenceNumber_t original_publication_virtual_sequence_number;
|
|
}; //@top-level false
|
|
|
|
/******************************************************************
|
|
*
|
|
*
|
|
* INTERFACES (ignored by rtiddsgen)
|
|
*
|
|
*
|
|
******************************************************************/
|
|
/*CODEGENII-202*/
|
|
/*interface Listener;
|
|
interface Entity;
|
|
interface TopicDescription;
|
|
interface Topic;
|
|
interface ContentFilteredTopic;
|
|
interface MultiTopic;*/
|
|
/*interface DataWriter;*/
|
|
interface DataReader;
|
|
/*interface Subscriber;*/
|
|
/*interface Publisher;*/
|
|
|
|
typedef sequence<DataReader> DataReaderSeq;
|
|
|
|
interface Listener {};
|
|
|
|
interface TopicListener : Listener {
|
|
void on_inconsistent_topic(in Topic the_topic,
|
|
in InconsistentTopicStatus status);
|
|
};
|
|
|
|
interface DataWriterListener : Listener {
|
|
void on_offered_deadline_missed(
|
|
in DataWriter writer,
|
|
in OfferedDeadlineMissedStatus status);
|
|
void on_offered_incompatible_qos(
|
|
in DataWriter writer,
|
|
in OfferedIncompatibleQosStatus status);
|
|
void on_liveliness_lost(
|
|
in DataWriter writer,
|
|
in LivelinessLostStatus status);
|
|
void on_publication_matched(
|
|
in DataWriter writer,
|
|
in PublicationMatchedStatus status);
|
|
};
|
|
|
|
interface PublisherListener : DataWriterListener {
|
|
};
|
|
|
|
interface DataReaderListener : Listener {
|
|
void on_requested_deadline_missed(
|
|
in DataReader the_reader,
|
|
in RequestedDeadlineMissedStatus status);
|
|
void on_requested_incompatible_qos(
|
|
in DataReader the_reader,
|
|
in RequestedIncompatibleQosStatus status);
|
|
void on_sample_rejected(
|
|
in DataReader the_reader,
|
|
in SampleRejectedStatus status);
|
|
void on_liveliness_changed(
|
|
in DataReader the_reader,
|
|
in LivelinessChangedStatus status);
|
|
void on_data_available(
|
|
in DataReader the_reader);
|
|
void on_subscription_matched(
|
|
in DataReader the_reader,
|
|
in SubscriptionMatchedStatus status);
|
|
void on_sample_lost(
|
|
in DataReader the_reader,
|
|
in SampleLostStatus status);
|
|
};
|
|
|
|
interface SubscriberListener : DataReaderListener {
|
|
void on_data_on_readers(
|
|
in Subscriber the_subscriber);
|
|
};
|
|
|
|
|
|
interface DomainParticipantListener : TopicListener,
|
|
PublisherListener,
|
|
SubscriberListener {
|
|
};
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Conditions
|
|
// ----------------------------------------------------------------------
|
|
|
|
interface Condition {
|
|
boolean get_trigger_value();
|
|
};
|
|
|
|
typedef sequence<Condition> ConditionSeq;
|
|
|
|
interface WaitSet {
|
|
ReturnCode_t wait(
|
|
inout ConditionSeq active_conditions,
|
|
in Duration_t timeout);
|
|
ReturnCode_t attach_condition(
|
|
in Condition cond);
|
|
ReturnCode_t detach_condition(
|
|
in Condition cond);
|
|
ReturnCode_t get_conditions(
|
|
inout ConditionSeq attached_conditions);
|
|
};
|
|
|
|
interface GuardCondition : Condition {
|
|
ReturnCode_t set_trigger_value(
|
|
in boolean value);
|
|
};
|
|
|
|
interface StatusCondition : Condition {
|
|
StatusMask get_enabled_statuses();
|
|
ReturnCode_t set_enabled_statuses(
|
|
in StatusMask mask);
|
|
Entity get_entity();
|
|
};
|
|
|
|
interface ReadCondition : Condition {
|
|
SampleStateMask get_sample_state_mask();
|
|
ViewStateMask get_view_state_mask();
|
|
InstanceStateMask get_instance_state_mask();
|
|
DataReader get_datareader();
|
|
};
|
|
|
|
interface QueryCondition : ReadCondition {
|
|
string get_query_expression();
|
|
ReturnCode_t get_query_parameters(
|
|
inout StringSeq query_parameters);
|
|
ReturnCode_t set_query_parameters(
|
|
in StringSeq query_parameters);
|
|
};
|
|
|
|
// ----------------------------------------------------------------------
|
|
interface Entity {
|
|
// ReturnCode_t set_qos(
|
|
// in EntityQos qos);
|
|
// ReturnCode_t get_qos(
|
|
// inout EntityQos qos);
|
|
// ReturnCode_t set_listener(
|
|
// in Listener l,
|
|
// in StatusMask mask);
|
|
// Listener get_listener();
|
|
|
|
ReturnCode_t enable();
|
|
|
|
StatusCondition get_statuscondition();
|
|
|
|
StatusMask get_status_changes();
|
|
|
|
InstanceHandle_t get_instance_handle();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------
|
|
interface DomainParticipant : Entity {
|
|
// Factory interfaces
|
|
Publisher create_publisher(
|
|
in PublisherQos qos,
|
|
in PublisherListener a_listener,
|
|
in StatusMask mask);
|
|
ReturnCode_t delete_publisher(
|
|
in Publisher p);
|
|
|
|
Subscriber create_subscriber(
|
|
in SubscriberQos qos,
|
|
in SubscriberListener a_listener,
|
|
in StatusMask mask);
|
|
ReturnCode_t delete_subscriber(
|
|
in Subscriber s);
|
|
Subscriber get_builtin_subscriber();
|
|
|
|
Topic create_topic(
|
|
in string topic_name,
|
|
in string type_name,
|
|
in TopicQos qos,
|
|
in TopicListener a_listener,
|
|
in StatusMask mask);
|
|
|
|
ReturnCode_t delete_topic(
|
|
in Topic a_topic);
|
|
|
|
Topic find_topic(
|
|
in string topic_name,
|
|
in Duration_t timeout);
|
|
TopicDescription lookup_topicdescription(
|
|
in string name);
|
|
|
|
ContentFilteredTopic create_contentfilteredtopic(
|
|
in string name,
|
|
in Topic related_topic,
|
|
in string filter_expression,
|
|
in StringSeq expression_parameters);
|
|
|
|
ReturnCode_t delete_contentfilteredtopic(
|
|
in ContentFilteredTopic a_contentfilteredtopic);
|
|
|
|
MultiTopic create_multitopic(
|
|
in string name,
|
|
in string type_name,
|
|
in string subscription_expression,
|
|
in StringSeq expression_parameters);
|
|
|
|
ReturnCode_t delete_multitopic(
|
|
in MultiTopic a_multitopic);
|
|
|
|
ReturnCode_t delete_contained_entities();
|
|
|
|
ReturnCode_t set_qos(
|
|
in DomainParticipantQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout DomainParticipantQos qos);
|
|
|
|
ReturnCode_t set_listener(
|
|
in DomainParticipantListener a_listener,
|
|
in StatusMask mask);
|
|
DomainParticipantListener get_listener();
|
|
|
|
ReturnCode_t ignore_participant(
|
|
in InstanceHandle_t handle);
|
|
ReturnCode_t ignore_topic(
|
|
in InstanceHandle_t handle);
|
|
ReturnCode_t ignore_publication(
|
|
in InstanceHandle_t handle);
|
|
ReturnCode_t ignore_subscription(
|
|
in InstanceHandle_t handle);
|
|
|
|
DomainId_t get_domain_id();
|
|
ReturnCode_t assert_liveliness();
|
|
|
|
ReturnCode_t set_default_publisher_qos(
|
|
in PublisherQos qos);
|
|
ReturnCode_t get_default_publisher_qos(
|
|
inout PublisherQos qos);
|
|
|
|
ReturnCode_t set_default_subscriber_qos(
|
|
in SubscriberQos qos);
|
|
ReturnCode_t get_default_subscriber_qos(
|
|
inout SubscriberQos qos);
|
|
|
|
ReturnCode_t set_default_topic_qos(
|
|
in TopicQos qos);
|
|
ReturnCode_t get_default_topic_qos(
|
|
inout TopicQos qos);
|
|
|
|
ReturnCode_t get_discovered_participants(
|
|
inout InstanceHandleSeq participant_handles);
|
|
ReturnCode_t get_discovered_participant_data(
|
|
inout ParticipantBuiltinTopicData participant_data,
|
|
in InstanceHandle_t participant_handle);
|
|
|
|
ReturnCode_t get_discovered_topics(
|
|
inout InstanceHandleSeq topic_handles);
|
|
ReturnCode_t get_discovered_topic_data(
|
|
inout TopicBuiltinTopicData topic_data,
|
|
in InstanceHandle_t topic_handle);
|
|
|
|
boolean contains_entity(
|
|
in InstanceHandle_t a_handle);
|
|
|
|
ReturnCode_t get_current_time(
|
|
inout Time_t current_time);
|
|
};
|
|
|
|
interface DomainParticipantFactory {
|
|
DomainParticipant create_participant(
|
|
in DomainId_t domain_id,
|
|
in DomainParticipantQos qos,
|
|
in DomainParticipantListener a_listener,
|
|
in StatusMask mask);
|
|
ReturnCode_t delete_participant(
|
|
in DomainParticipant a_participant);
|
|
|
|
DomainParticipant lookup_participant(
|
|
in DomainId_t domain_id);
|
|
|
|
ReturnCode_t set_default_participant_qos(
|
|
in DomainParticipantQos qos);
|
|
ReturnCode_t get_default_participant_qos(
|
|
inout DomainParticipantQos qos);
|
|
|
|
ReturnCode_t set_qos(
|
|
in DomainParticipantFactoryQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout DomainParticipantFactoryQos qos);
|
|
};
|
|
|
|
interface TypeSupport {
|
|
// ReturnCode_t register_type(
|
|
// in DomainParticipant domain,
|
|
// in string type_name);
|
|
// string get_type_name();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------
|
|
interface TopicDescription {
|
|
string get_type_name();
|
|
string get_name();
|
|
|
|
DomainParticipant get_participant();
|
|
};
|
|
|
|
interface Topic : Entity, TopicDescription {
|
|
ReturnCode_t set_qos(
|
|
in TopicQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout TopicQos qos);
|
|
ReturnCode_t set_listener(
|
|
in TopicListener a_listener,
|
|
in StatusMask mask);
|
|
TopicListener get_listener();
|
|
// Access the status
|
|
ReturnCode_t get_inconsistent_topic_status(
|
|
inout InconsistentTopicStatus a_status);
|
|
};
|
|
|
|
interface ContentFilteredTopic : TopicDescription {
|
|
string get_filter_expression();
|
|
ReturnCode_t get_expression_parameters(
|
|
inout StringSequence expression_parameters);
|
|
ReturnCode_t set_expression_parameters(
|
|
in StringSequence expression_parameters);
|
|
Topic get_related_topic();
|
|
};
|
|
|
|
interface MultiTopic : TopicDescription {
|
|
string get_subscription_expression();
|
|
ReturnCode_t get_expression_parameters(
|
|
inout StringSequence expression_parameters);
|
|
ReturnCode_t set_expression_parameters(
|
|
in StringSequence expression_parameters);
|
|
};
|
|
|
|
// ----------------------------------------------------------------------
|
|
interface Publisher : Entity {
|
|
DataWriter create_datawriter(
|
|
in Topic a_topic,
|
|
in DataWriterQos qos,
|
|
in DataWriterListener a_listener,
|
|
in StatusMask mask);
|
|
ReturnCode_t delete_datawriter(
|
|
in DataWriter a_datawriter);
|
|
DataWriter lookup_datawriter(
|
|
in string topic_name);
|
|
|
|
ReturnCode_t delete_contained_entities();
|
|
|
|
ReturnCode_t set_qos(
|
|
in PublisherQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout PublisherQos qos);
|
|
|
|
ReturnCode_t set_listener(
|
|
in PublisherListener a_listener,
|
|
in StatusMask mask);
|
|
PublisherListener get_listener();
|
|
|
|
ReturnCode_t suspend_publications();
|
|
ReturnCode_t resume_publications();
|
|
|
|
ReturnCode_t begin_coherent_changes();
|
|
ReturnCode_t end_coherent_changes();
|
|
|
|
ReturnCode_t wait_for_acknowledgments(
|
|
in Duration_t max_wait);
|
|
|
|
DomainParticipant get_participant();
|
|
|
|
ReturnCode_t set_default_datawriter_qos(
|
|
in DataWriterQos qos);
|
|
ReturnCode_t get_default_datawriter_qos(
|
|
inout DataWriterQos qos);
|
|
|
|
ReturnCode_t copy_from_topic_qos(
|
|
inout DataWriterQos a_datawriter_qos,
|
|
in TopicQos a_topic_qos);
|
|
};
|
|
|
|
interface DataWriter : Entity {
|
|
// InstanceHandle_t register_instance(
|
|
// in Data instance_data);
|
|
// InstanceHandle_t register_instance_w_timestamp(
|
|
// in Data instance_data,
|
|
// in Time_t source_timestamp);
|
|
// ReturnCode_t unregister_instance(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t handle);
|
|
// ReturnCode_t unregister_instance_w_timestamp(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t handle,
|
|
// in Time_t source_timestamp);
|
|
// ReturnCode_t write(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t handle);
|
|
// ReturnCode_t write_w_timestamp(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t handle,
|
|
// in Time_t source_timestamp);
|
|
// ReturnCode_t dispose(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t instance_handle);
|
|
// ReturnCode_t dispose_w_timestamp(
|
|
// in Data instance_data,
|
|
// in InstanceHandle_t instance_handle,
|
|
// in Time_t source_timestamp);
|
|
// ReturnCode_t get_key_value(
|
|
// inout Data key_holder,
|
|
// in InstanceHandle_t handle);
|
|
// InstanceHandle_t lookup_instance(
|
|
// in Data instance_data);
|
|
|
|
ReturnCode_t set_qos(
|
|
in DataWriterQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout DataWriterQos qos);
|
|
|
|
ReturnCode_t set_listener(
|
|
in DataWriterListener a_listener,
|
|
in StatusMask mask);
|
|
DataWriterListener get_listener();
|
|
|
|
Topic get_topic();
|
|
Publisher get_publisher();
|
|
|
|
ReturnCode_t wait_for_acknowledgments(
|
|
in Duration_t max_wait);
|
|
|
|
// Access the status
|
|
ReturnCode_t get_liveliness_lost_status(
|
|
inout LivelinessLostStatus status);
|
|
ReturnCode_t get_offered_deadline_missed_status(
|
|
inout OfferedDeadlineMissedStatus status);
|
|
ReturnCode_t get_offered_incompatible_qos_status(
|
|
inout OfferedIncompatibleQosStatus status);
|
|
ReturnCode_t get_publication_matched_status(
|
|
inout PublicationMatchedStatus status);
|
|
|
|
ReturnCode_t assert_liveliness();
|
|
|
|
ReturnCode_t get_matched_subscriptions(
|
|
inout InstanceHandleSeq subscription_handles);
|
|
ReturnCode_t get_matched_subscription_data(
|
|
inout SubscriptionBuiltinTopicData subscription_data,
|
|
in InstanceHandle_t subscription_handle);
|
|
};
|
|
|
|
// ----------------------------------------------------------------------
|
|
interface Subscriber : Entity {
|
|
DataReader create_datareader(
|
|
in TopicDescription a_topic,
|
|
in DataReaderQos qos,
|
|
in DataReaderListener a_listener,
|
|
in StatusMask mask);
|
|
ReturnCode_t delete_datareader(
|
|
in DataReader a_datareader);
|
|
ReturnCode_t delete_contained_entities();
|
|
DataReader lookup_datareader(
|
|
in string topic_name);
|
|
ReturnCode_t get_datareaders(
|
|
inout DataReaderSeq readers,
|
|
in SampleStateMask sample_states,
|
|
in ViewStateMask view_states,
|
|
in InstanceStateMask instance_states);
|
|
ReturnCode_t notify_datareaders();
|
|
|
|
ReturnCode_t set_qos(
|
|
in SubscriberQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout SubscriberQos qos);
|
|
|
|
ReturnCode_t set_listener(
|
|
in SubscriberListener a_listener,
|
|
in StatusMask mask);
|
|
SubscriberListener get_listener();
|
|
|
|
ReturnCode_t begin_access();
|
|
ReturnCode_t end_access();
|
|
|
|
DomainParticipant get_participant();
|
|
|
|
ReturnCode_t set_default_datareader_qos(
|
|
in DataReaderQos qos);
|
|
ReturnCode_t get_default_datareader_qos(
|
|
inout DataReaderQos qos);
|
|
|
|
ReturnCode_t copy_from_topic_qos(
|
|
inout DataReaderQos a_datareader_qos,
|
|
in TopicQos a_topic_qos);
|
|
};
|
|
|
|
/* CODEGENII-202 interface DataReader : Entity {
|
|
// ReturnCode_t read(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t take(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t read_w_condition(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in ReadCondition a_condition);
|
|
|
|
// ReturnCode_t take_w_condition(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in ReadCondition a_condition);
|
|
|
|
// ReturnCode_t read_next_sample(
|
|
// inout Data data_values,
|
|
// inout SampleInfo sample_info);
|
|
|
|
// ReturnCode_t take_next_sample(
|
|
// inout Data data_values,
|
|
// inout SampleInfo sample_info);
|
|
|
|
// ReturnCode_t read_instance(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t a_handle,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t take_instance(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t a_handle,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t read_next_instance(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t previous_handle,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t take_next_instance(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t previous_handle,
|
|
// in SampleStateMask sample_states,
|
|
// in ViewStateMask view_states,
|
|
// in InstanceStateMask instance_states);
|
|
|
|
// ReturnCode_t read_next_instance_w_condition(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t previous_handle,
|
|
// in ReadCondition a_condition);
|
|
|
|
// ReturnCode_t take_next_instance_w_condition(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos,
|
|
// in long max_samples,
|
|
// in InstanceHandle_t previous_handle,
|
|
// in ReadCondition a_condition);
|
|
|
|
// ReturnCode_t return_loan(
|
|
// inout DataSeq data_values,
|
|
// inout SampleInfoSeq sample_infos);
|
|
|
|
// ReturnCode_t get_key_value(
|
|
// inout Data key_holder,
|
|
// in InstanceHandle_t handle);
|
|
|
|
// InstanceHandle_t lookup_instance(
|
|
// in Data instance_data);
|
|
|
|
ReadCondition create_readcondition(
|
|
in SampleStateMask sample_states,
|
|
in ViewStateMask view_states,
|
|
in InstanceStateMask instance_states);
|
|
|
|
QueryCondition create_querycondition(
|
|
in SampleStateMask sample_states,
|
|
in ViewStateMask view_states,
|
|
in InstanceStateMask instance_states,
|
|
in string query_expression,
|
|
in StringSeq query_parameters);
|
|
|
|
ReturnCode_t delete_readcondition(
|
|
in ReadCondition a_condition);
|
|
|
|
ReturnCode_t delete_contained_entities();
|
|
|
|
ReturnCode_t set_qos(
|
|
in DataReaderQos qos);
|
|
ReturnCode_t get_qos(
|
|
inout DataReaderQos qos);
|
|
|
|
ReturnCode_t set_listener(
|
|
in DataReaderListener a_listener,
|
|
in StatusMask mask);
|
|
DataReaderListener get_listener();
|
|
|
|
TopicDescription get_topicdescription();
|
|
Subscriber get_subscriber();
|
|
|
|
ReturnCode_t get_sample_rejected_status(
|
|
inout SampleRejectedStatus status);
|
|
ReturnCode_t get_liveliness_changed_status(
|
|
inout LivelinessChangedStatus status);
|
|
ReturnCode_t get_requested_deadline_missed_status(
|
|
inout RequestedDeadlineMissedStatus status);
|
|
ReturnCode_t get_requested_incompatible_qos_status(
|
|
inout RequestedIncompatibleQosStatus status);
|
|
ReturnCode_t get_subscription_matched_status(
|
|
inout SubscriptionMatchedStatus status);
|
|
ReturnCode_t get_sample_lost_status(
|
|
inout SampleLostStatus status);
|
|
|
|
ReturnCode_t wait_for_historical_data(
|
|
in Duration_t max_wait);
|
|
|
|
ReturnCode_t get_matched_publications(
|
|
inout InstanceHandleSeq publication_handles);
|
|
ReturnCode_t get_matched_publication_data(
|
|
inout PublicationBuiltinTopicData publication_data,
|
|
in InstanceHandle_t publication_handle);
|
|
};*/
|
|
};
|