CARLA
 
载入中...
搜索中...
未找到
V2XData.h
浏览该文件的文档.
1// Copyright (c) 2024 Institut fuer Technik der Informationsverarbeitung (ITIV) at the
2// Karlsruhe Institute of Technology
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6#pragma once // 防止头文件被多次包含
7
8#include <cstdint> // 包含整数类型定义
9#include <vector> // 包含向量容器
10#include <cstdio> // 包含C标准输入输出库
11#include "LibITS.h" // 包含LibITS库的头文件
12
13namespace carla // 定义命名空间carla
14{
15 namespace sensor // 定义命名空间sensor
16 {
17
18 namespace s11n // 定义命名空间s11n
19 {
20 class CAMDataSerializer; // 前向声明CAMDataSerializer类
21 class CustomV2XDataSerializer; // 前向声明CustomV2XDataSerializer类
22 }
23
24 namespace data // 定义命名空间data
25 {
26 class CAMData // 定义CAMData类
27 {
28 public:
29 float Power; // 电源功率
30 CAM_t Message; // CAM消息
31 };
32
33 class CustomV2XData // 定义CustomV2XData类
34 {
35 public:
36 float Power; // 电源功率
37 CustomV2XM Message; // 自定义V2X消息
38 };
39
40 class CAMDataS // 定义CAMDataS类
41 {
42
43 public:
44 explicit CAMDataS() = default; // 默认构造函数
45
46 CAMDataS &operator=(CAMDataS &&) = default; // 移动赋值运算符
47
48 // 返回当前接收到的消息数量
49 size_t GetMessageCount() const
50 {
51 return MessageList.size(); // 返回消息列表的大小
52 }
53
54 // 删除当前消息
55 void Reset()
56 {
57 MessageList.clear(); // 清空消息列表
58 }
59
60 // 添加新检测消息
61 void WriteMessage(CAMData message)
62 {
63 MessageList.push_back(message); // 将新消息添加到列表中
64 }
65
66 private:
67 std::vector<CAMData> MessageList; // 存储CAMData消息的向量
68
69 friend class s11n::CAMDataSerializer; // 声明s11n::CAMDataSerializer为友元类
70 };
71
72 class CustomV2XDataS // 定义CustomV2XDataS类
73 {
74
75 public:
76 explicit CustomV2XDataS() = default; // 默认构造函数
77
78 CustomV2XDataS &operator=(CustomV2XDataS &&) = default; // 移动赋值运算符
79
80 // 返回当前接收到的消息数量
81 size_t GetMessageCount() const
82 {
83 return MessageList.size(); // 返回消息列表的大小
84 }
85
86 // 删除当前消息
87 void Reset()
88 {
89 MessageList.clear(); // 清空消息列表
90 }
91
92 // 添加新检测消息
94 {
95 MessageList.push_back(message); // 将新消息添加到列表中
96 }
97
98 private:
99 std::vector<CustomV2XData> MessageList; // 存储CustomV2XData消息的向量
100
101 friend class s11n::CustomV2XDataSerializer; // 声明s11n::CustomV2XDataSerializer为友元类
102 };
103
104 } // namespace data
105 } // namespace sensor
106} // namespace carla
void WriteMessage(CAMData message)
Definition V2XData.h:61
CAMDataS & operator=(CAMDataS &&)=default
size_t GetMessageCount() const
Definition V2XData.h:49
std::vector< CAMData > MessageList
Definition V2XData.h:67
void WriteMessage(CustomV2XData message)
Definition V2XData.h:93
CustomV2XDataS & operator=(CustomV2XDataS &&)=default
std::vector< CustomV2XData > MessageList
Definition V2XData.h:99
Serializes the data generated by V2X sensors.
CARLA模拟器的主命名空间。
Definition Carla.cpp:139
Definition LibITS.h:907