产品支持情况
产品
|
是否支持
|
Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件
|
x
|
Atlas 200I/500 A2 推理产品
|
√
|
Atlas 推理系列产品
|
x
|
Atlas 训练系列产品
|
x
|
Atlas 200/300/500 推理产品
|
x
|
功能说明
设置Topic所属DDS通信的QoS策略。
函数原型
| OpenHiva::TopicOptions &OpenHiva::TopicOptions::BuildDDSQos(const DdsQosOptions & qosOptions)
|
参数说明
参数名
|
输入/输出
|
说明
|
qosOptions
|
输入
|
DDS消息保存策略参数,数据结构为DdsQosOptions,具体定义如下:
| struct DdsQosOptions {
QosHistoryPolicy history;
std::size_t depth;
QosReliabilityPolicy reliability;
QosDurabilityPolicy durability;
QosDuration deadline;
QosDuration lifespan;
QosLivelinessPolicy liveliness;
QosDuration leaseDuration;
};
|
相关的数据类型或数据结构如下:
- QosHistoryPolicy
| enum class QosHistoryPolicy: uint32_t {
DDS_QOS_HISTORY_POLICY_KEEP_LAST,
DDS_QOS_HISTORY_POLICY_KEEP_ALL,
DDS_QOS_HISTORY_POLICY_SYSTEM_DEFAULT,
DDS_QOS_HISTORY_POLICY_UNKNOWN
};
|
- QosReliabilityPolicy
| enum class QosReliabilityPolicy: uint32_t {
DDS_QOS_RELIABILITY_POLICY_RELIABLE,
DDS_QOS_RELIABILITY_POLICY_BEST_EFFORT,
DDS_QOS_RELIABILITY_POLICY_SYSTEM_DEFAULT,
DDS_QOS_RELIABILITY_POLICY_UNKNOWN
};
|
- QosDurabilityPolicy
| enum class QosDurabilityPolicy: uint32_t {
DDS_QOS_DURABILITY_POLICY_VOLATILE,
DDS_QOS_DURABILITY_POLICY_TRANSIENT_LOCAL,
DDS_QOS_DURABILITY_POLICY_SYSTEM_DEFAULT,
DDS_QOS_DURABILITY_POLICY_UNKNOWN
};
|
- QosLivelinessPolicy
| enum class QosLivelinessPolicy: uint32_t {
DDS_QOS_LIVELINESS_POLICY_AUTOMATIC,
DDS_QOS_LIVELINESS_POLICY_MANUAL_BY_TOPIC,
DDS_QOS_LIVELINESS_POLICY_SYSTEM_DEFAULT,
DDS_QOS_LIVELINESS_POLICY_UNKNOWN
};
|
- QosDuration
| struct QosDuration {
// Seconds
uint64_t sec;
// Nanoseconds
uint64_t nsec;
};
|
|
返回值
返回设置QoS策略后的TopicOptions对象。
约束说明
- 本接口不可重入,同步接口。
- 需要先配置DDS通信方式,该接口才会生效。
- 若用户不调用该接口,则使用QoS系统默认值。