CARLA
 
载入中...
搜索中...
未找到
ClockPubSubTypes.h
浏览该文件的文档.
1// 版权所有 2016 Proyectos y Sistemas de Mantenimiento SL (eProsima).
2//
3// 根据 Apache 许可证,第 2.0 版(“许可证”)进行许可;
4// 除非遵守许可证,否则不可使用此文件。
5// 您可以在以下地址获得许可证副本:
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// 除非适用法律要求或书面同意,
10// 按照许可证分发的软件将以“原样”基础提供,
11// 不提供任何形式的明示或暗示的担保或条件。
12// 请参阅许可证了解特定语言所涵盖的权限和
13// 限制条款。
14
15/*!
16 * @file ClockPubSubTypes.h
17 * 该头文件包含序列化函数的声明。
18 *
19 * 此文件由工具 fastcdrgen 生成。
20 */
21
22#ifndef _FAST_DDS_GENERATED_ROSGRAPH_MSG_CLOCK_PUBSUBTYPES_H_// 如果未定义宏 _FAST_DDS_GENERATED_ROSGRAPH_MSG_CLOCK_PUBSUBTYPES_H_
23#define _FAST_DDS_GENERATED_ROSGRAPH_MSG_CLOCK_PUBSUBTYPES_H_
24
25#include <fastdds/dds/topic/TopicDataType.hpp>// 引入 Fast DDS 主题数据类型的头文件
26#include <fastrtps/utils/md5.h>// 引入 MD5 工具头文件
27
28#include "Clock.h"// 引入 Clock 类型的定义
29
30#if !defined(GEN_API_VER) || (GEN_API_VER != 1)// 检查生成的 API 版本是否与当前安装的 Fast DDS 兼容
31#error \
32 Generated Clock is not compatible with current installed Fast DDS. Please, regenerate it with fastddsgen.
33#endif // GEN_API_VER
34
35namespace rosgraph// 命名空间 rosgraph
36{
37 namespace msg// 命名空间 msg
38 {
39 /*!
40 * @brief 此类表示用户在 IDL 文件中定义的类型 Clock 的 TopicDataType。
41 * @ingroup Clock
42 */
43 class ClockPubSubType : public eprosima::fastdds::dds::TopicDataType// Clock 的 PubSub 类型类,继承自 TopicDataType
44 {
45 public:
46
47 typedef Clock type;// typedef 用于定义 Clock 类型
48
50
51 eProsima_user_DllExport virtual ~ClockPubSubType() override;// 析构函数
52
53 eProsima_user_DllExport virtual bool serialize(// 序列化函数
54 void* data,
55 eprosima::fastrtps::rtps::SerializedPayload_t* payload) override;
56
57 eProsima_user_DllExport virtual bool deserialize(// 反序列化函数
58 eprosima::fastrtps::rtps::SerializedPayload_t* payload,
59 void* data) override;
60
61 eProsima_user_DllExport virtual std::function<uint32_t()> getSerializedSizeProvider(// 获取序列化大小的函数
62 void* data) override;
63
64 eProsima_user_DllExport virtual bool getKey(// 获取键值的函数
65 void* data,
66 eprosima::fastrtps::rtps::InstanceHandle_t* ihandle,
67 bool force_md5 = false) override;
68
69 eProsima_user_DllExport virtual void* createData() override;// 创建数据的函数
70
71 eProsima_user_DllExport virtual void deleteData( // 删除数据的函数
72 void* data) override;
73
74 #ifdef TOPIC_DATA_TYPE_API_HAS_IS_BOUNDED
75 eProsima_user_DllExport inline bool is_bounded() const override // 检查是否有界的函数
76 {
77 return false;// 返回 false,表示没有界限
78 }
79
80 #endif // TOPIC_DATA_TYPE_API_HAS_IS_BOUNDED
81
82 #ifdef TOPIC_DATA_TYPE_API_HAS_IS_PLAIN
83 eProsima_user_DllExport inline bool is_plain() const override// 检查是否为简单类型的函数
84 {
85 return false;// 返回 false,表示不是简单类型
86 }
87
88 #endif // TOPIC_DATA_TYPE_API_HAS_IS_PLAIN
89
90 #ifdef TOPIC_DATA_TYPE_API_HAS_CONSTRUCT_SAMPLE
91 eProsima_user_DllExport inline bool construct_sample(// 构造样本的函数
92 void* memory) const override
93 {
94 (void)memory;
95 return false;// 返回 false,表示不构造样本
96 }
97
98 #endif // TOPIC_DATA_TYPE_API_HAS_CONSTRUCT_SAMPLE
99 MD5 m_md5;// MD5 对象,用于处理数据的 MD5 校验和
100 unsigned char* m_keyBuffer;// 存储键值的缓冲区
101 };
102 }
103}
104
105#endif // _FAST_DDS_GENERATED_ROSGRAPH_MSG_CLOCK_PUBSUBTYPES_H_ // 结束宏定义
sode override
Definition ActorData.h:280
#define eProsima_user_DllExport
Definition CameraInfo.h:44
此类表示用户在 IDL 文件中定义的类型 Clock 的 TopicDataType。 <>
eProsima_user_DllExport ClockPubSubType()
virtual eProsima_user_DllExport void deleteData(void *data) override
virtual eProsima_user_DllExport bool getKey(void *data, eprosima::fastrtps::rtps::InstanceHandle_t *ihandle, bool force_md5=false) override
virtual eProsima_user_DllExport ~ClockPubSubType() override
virtual eProsima_user_DllExport bool serialize(void *data, eprosima::fastrtps::rtps::SerializedPayload_t *payload) override
virtual eProsima_user_DllExport void * createData() override
virtual eProsima_user_DllExport bool deserialize(eprosima::fastrtps::rtps::SerializedPayload_t *payload, void *data) override
virtual eProsima_user_DllExport std::function< uint32_t()> getSerializedSizeProvider(void *data) override
This class represents the structure Clock defined by the user in the IDL file.
Definition Clock.h:74