CARLA
 
载入中...
搜索中...
未找到
RawEpisodeState.h
浏览该文件的文档.
1// Copyright (c) 2017 Computer Vision Center (CVC) at the Universitat Autonoma
2// de Barcelona (UAB).
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6
7#pragma once
8
9#include "carla/Debug.h"
13
14// 定义在carla命名空间下的sensor命名空间,再嵌套一个data命名空间,用于对传感器相关数据结构等进行更细分的组织
15namespace carla {
16namespace sensor {
17namespace data {
18
19 /// 表示给定帧处剧集的状态。
20 class RawEpisodeState : public Array<ActorDynamicState> {
22 protected:
23
24 // 定义用于序列化该类数据的序列化器类型为EpisodeStateSerializer,表明使用这个序列化器来处理数据的序列化和反序列化等相关操作
26
27// 将EpisodeStateSerializer声明为友元类,这样它可以访问本类的私有成员,方便进行序列化相关操作
28 friend Serializer;
29
30// 显式构造函数,接受一个右值引用的RawData类型参数,用于初始化基类Array,通过调用Serializer的header_offset和移动传入的数据来完成初始化
32 : Super(Serializer::header_offset, std::move(data)) {}
33
34 private:
35
36// 获取头部信息的函数,通过调用Serializer的反序列化头部函数,传入基类的原始数据来获取相关头部信息
40
41 public:
42
43 /// 获取生成此数据的剧集的唯一ID。
44 uint64_t GetEpisodeId() const {
45 return GetHeader().episode_id;
46 }
47
48 /// 模拟时间戳,即从当前剧集开始到现在经过的模拟秒数。
49 double GetGameTimeStamp() const {
50 return GetTimestamp();
51 }
52
53 /// 获取进行此次测量的帧的时间戳,时间单位为秒,该时间戳由操作系统提供。
54 double GetPlatformTimeStamp() const {
55 return GetHeader().platform_timestamp;
56 }
57
58 /// 获取自上一帧以来经过的模拟秒数。
59 double GetDeltaSeconds() const {
60 return GetHeader().delta_seconds;
61 }
62
64 return GetHeader().map_origin;
65 }
66
67 /// 获取模拟状态标志,用于表示当前模拟的一些状态情况
69 return GetHeader().simulation_state;
70 }
71
72 };
73
74} // namespace data
75} // namespace sensor
76} // namespace carla
包装一个传感器生成的原始数据以及一些有用的元信息。
Definition RawData.h:20
double GetTimestamp() const
获取数据生成时的仿真时间
Definition SensorData.h:45
所有传感器数据的基类,包含一个项目数组。
Definition Array.h:23
表示给定帧处剧集的状态。
Serializer::SimulationState GetSimulationState() const
获取模拟状态标志,用于表示当前模拟的一些状态情况
double GetGameTimeStamp() const
模拟时间戳,即从当前剧集开始到现在经过的模拟秒数。
double GetPlatformTimeStamp() const
获取进行此次测量的帧的时间戳,时间单位为秒,该时间戳由操作系统提供。
geom::Vector3DInt GetMapOrigin() const
uint64_t GetEpisodeId() const
获取生成此数据的剧集的唯一ID。
double GetDeltaSeconds() const
获取自上一帧以来经过的模拟秒数。
Serializes the current state of the whole episode.
static const Header & DeserializeHeader(const RawData &message)
CARLA模拟器的主命名空间。
Definition Carla.cpp:139