init
This commit is contained in:
184
unitree_SDK/include/dds/ddsc/dds_public_qosdefs.h
Normal file
184
unitree_SDK/include/dds/ddsc/dds_public_qosdefs.h
Normal file
@@ -0,0 +1,184 @@
|
||||
/*
|
||||
* Copyright(c) 2006 to 2022 ZettaScale Technology and others
|
||||
*
|
||||
* This program and the accompanying materials are made available under the
|
||||
* terms of the Eclipse Public License v. 2.0 which is available at
|
||||
* http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
|
||||
* v. 1.0 which is available at
|
||||
* http://www.eclipse.org/org/documents/edl-v10.php.
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
|
||||
*/
|
||||
|
||||
#ifndef DDS_QOSDEFS_H
|
||||
#define DDS_QOSDEFS_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @anchor DDS_LENGTH_UNLIMITED
|
||||
* @ingroup qos
|
||||
* @brief Used for indicating unlimited length in dds_qset_resource_limits()
|
||||
*/
|
||||
#define DDS_LENGTH_UNLIMITED -1
|
||||
|
||||
/**
|
||||
* @brief Qos Policy IDs
|
||||
* @ingroup internal
|
||||
* Used internally to mark the QoS policy type
|
||||
*/
|
||||
typedef enum dds_qos_policy_id {
|
||||
DDS_INVALID_QOS_POLICY_ID, /**< Invalid Policy */
|
||||
DDS_USERDATA_QOS_POLICY_ID, /**< Userdata policy dds_qset_userdata() */
|
||||
DDS_DURABILITY_QOS_POLICY_ID, /**< Durability policy dds_qset_durability() */
|
||||
DDS_PRESENTATION_QOS_POLICY_ID, /**< Presentation policy dds_qset_presentation() */
|
||||
DDS_DEADLINE_QOS_POLICY_ID, /**< Deadline policy dds_qset_deadline() */
|
||||
DDS_LATENCYBUDGET_QOS_POLICY_ID, /**< LatencyBudget policy dds_qset_latency_budget() */
|
||||
DDS_OWNERSHIP_QOS_POLICY_ID, /**< Ownership policy dds_qset_ownership() */
|
||||
DDS_OWNERSHIPSTRENGTH_QOS_POLICY_ID, /**< OwnershipStrength policy dds_qset_ownership_strength() */
|
||||
DDS_LIVELINESS_QOS_POLICY_ID, /**< Liveliness policy dds_qset_liveliness() */
|
||||
DDS_TIMEBASEDFILTER_QOS_POLICY_ID, /**< TimeBasedFilter policy dds_qset_time_based_filter() */
|
||||
DDS_PARTITION_QOS_POLICY_ID, /**< Partition policy dds_qset_partition() */
|
||||
DDS_RELIABILITY_QOS_POLICY_ID, /**< Reliability policy dds_qset_reliability() */
|
||||
DDS_DESTINATIONORDER_QOS_POLICY_ID, /**< DestinationOrder policy dds_qset_destination_order() */
|
||||
DDS_HISTORY_QOS_POLICY_ID, /**< History policy dds_qset_history() */
|
||||
DDS_RESOURCELIMITS_QOS_POLICY_ID, /**< ResourceLimits policy dds_qset_resource_limits() */
|
||||
DDS_ENTITYFACTORY_QOS_POLICY_ID, /**< EntityFactory policy */
|
||||
DDS_WRITERDATALIFECYCLE_QOS_POLICY_ID, /**< WriterDataLifecycle policy dds_qset_writer_data_lifecycle() */
|
||||
DDS_READERDATALIFECYCLE_QOS_POLICY_ID, /**< ReaderDataLifecycle policy dds_qset_reader_data_lifecycle() */
|
||||
DDS_TOPICDATA_QOS_POLICY_ID, /**< Topicdata policy dds_qset_topicdata() */
|
||||
DDS_GROUPDATA_QOS_POLICY_ID, /**< Groupdata policy dds_qset_groupdata() */
|
||||
DDS_TRANSPORTPRIORITY_QOS_POLICY_ID, /**< TransportPriority policy dds_qset_transport_priority() */
|
||||
DDS_LIFESPAN_QOS_POLICY_ID, /**< Livespan policy dds_qset_lifespan() */
|
||||
DDS_DURABILITYSERVICE_QOS_POLICY_ID, /**< DurabilityService policy dds_qset_durability_service() */
|
||||
DDS_PROPERTY_QOS_POLICY_ID, /**< Property policy dds_qset_property() */
|
||||
DDS_TYPE_CONSISTENCY_ENFORCEMENT_QOS_POLICY_ID, /**< TypeConsistencyEnforcement policy dds_qset_type_consistency_enforcements() */
|
||||
DDS_DATA_REPRESENTATION_QOS_POLICY_ID /**< DataRepresentation policy dds_qset_data_representation() */
|
||||
} dds_qos_policy_id_t;
|
||||
|
||||
|
||||
/**
|
||||
* @brief QoS datatype
|
||||
* @ingroup qos
|
||||
* QoS structure is opaque
|
||||
*/
|
||||
typedef struct dds_qos dds_qos_t;
|
||||
|
||||
/**
|
||||
* @brief Durability QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_durability_kind
|
||||
{
|
||||
DDS_DURABILITY_VOLATILE, /**< Volatile durability */
|
||||
DDS_DURABILITY_TRANSIENT_LOCAL, /**< Transient Local durability */
|
||||
DDS_DURABILITY_TRANSIENT, /**< Transient durability */
|
||||
DDS_DURABILITY_PERSISTENT /**< Persistent durability */
|
||||
}
|
||||
dds_durability_kind_t;
|
||||
|
||||
/**
|
||||
* @brief History QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_history_kind
|
||||
{
|
||||
DDS_HISTORY_KEEP_LAST, /**< Keep Last history */
|
||||
DDS_HISTORY_KEEP_ALL /**< Keep All history */
|
||||
}
|
||||
dds_history_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Ownership QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_ownership_kind
|
||||
{
|
||||
DDS_OWNERSHIP_SHARED, /**< Shared Ownership */
|
||||
DDS_OWNERSHIP_EXCLUSIVE /**< Exclusive Ownership */
|
||||
}
|
||||
dds_ownership_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Liveliness QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_liveliness_kind
|
||||
{
|
||||
DDS_LIVELINESS_AUTOMATIC, /**< Automatic liveliness */
|
||||
DDS_LIVELINESS_MANUAL_BY_PARTICIPANT, /**< Manual by Participant liveliness */
|
||||
DDS_LIVELINESS_MANUAL_BY_TOPIC /**< Manual by Topic liveliness */
|
||||
}
|
||||
dds_liveliness_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Reliability QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_reliability_kind
|
||||
{
|
||||
DDS_RELIABILITY_BEST_EFFORT, /**< Best Effort reliability */
|
||||
DDS_RELIABILITY_RELIABLE /**< Reliable reliability */
|
||||
}
|
||||
dds_reliability_kind_t;
|
||||
|
||||
/**
|
||||
* @brief DestinationOrder QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_destination_order_kind
|
||||
{
|
||||
DDS_DESTINATIONORDER_BY_RECEPTION_TIMESTAMP, /**< order by reception timestamp */
|
||||
DDS_DESTINATIONORDER_BY_SOURCE_TIMESTAMP /**< order by source timestamp */
|
||||
}
|
||||
dds_destination_order_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Presentation QoS: Applies to Publisher, Subscriber
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_presentation_access_scope_kind
|
||||
{
|
||||
DDS_PRESENTATION_INSTANCE, /**< presentation scope per instance */
|
||||
DDS_PRESENTATION_TOPIC, /**< presentation scope per topic */
|
||||
DDS_PRESENTATION_GROUP /**< presentation scope per group */
|
||||
}
|
||||
dds_presentation_access_scope_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Ignore-local QoS: Applies to DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_ignorelocal_kind
|
||||
{
|
||||
DDS_IGNORELOCAL_NONE, /**< Don't ignore local data */
|
||||
DDS_IGNORELOCAL_PARTICIPANT, /**< Ignore local data from same participant */
|
||||
DDS_IGNORELOCAL_PROCESS /**< Ignore local data from same process */
|
||||
}
|
||||
dds_ignorelocal_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Type-consistency QoS: Applies to DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef enum dds_type_consistency_kind
|
||||
{
|
||||
DDS_TYPE_CONSISTENCY_DISALLOW_TYPE_COERCION, /**< Do not allow type coercion */
|
||||
DDS_TYPE_CONSISTENCY_ALLOW_TYPE_COERCION /**< Allow type coercion */
|
||||
}
|
||||
dds_type_consistency_kind_t;
|
||||
|
||||
/**
|
||||
* @brief Data Representation QoS: Applies to Topic, DataReader, DataWriter
|
||||
* @ingroup qos
|
||||
*/
|
||||
typedef int16_t dds_data_representation_id_t;
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif
|
||||
#endif
|
Reference in New Issue
Block a user