#include <bridge_header.h>
◆ BridgeHeader()
apollo::bridge::BridgeHeader::BridgeHeader |
( |
| ) |
|
|
default |
◆ ~BridgeHeader()
apollo::bridge::BridgeHeader::~BridgeHeader |
( |
| ) |
|
|
default |
◆ Diserialize()
bool apollo::bridge::BridgeHeader::Diserialize |
( |
const char * |
buf, |
|
|
size_t |
buf_size |
|
) |
| |
在文件 bridge_header.cc 第 44 行定义.
44 {
45 const char *cursor = buf;
46
47 int i = static_cast<int>(buf_size);
48 while (i > 0) {
49 HType type = *(
reinterpret_cast<const HType *
>(cursor));
51 cursor +=
sizeof(
HType) + 1;
52 bsize size = *(
reinterpret_cast<const bsize *
>(cursor));
53 cursor +=
sizeof(
bsize) + size + 2;
54 if (size > (std::numeric_limits<int>::max() -
sizeof(
HType) -
56 return false;
57 }
58 i -=
static_cast<int>(
sizeof(
HType) +
sizeof(
bsize) + size + 3);
59 continue;
60 }
61
63 if (type == header_item[j]->
GetType()) {
64 size_t value_size = 0;
65 cursor = header_item[j]->
DiserializeItem(cursor,
static_cast<size_t>(i),
66 &value_size);
67 i -= static_cast<int>(value_size);
68 if (cursor == nullptr) {
69 return false;
70 }
71 break;
72 }
73 }
74 }
75 return true;
76}
bool GetType(const string &filename, FileType *type)
◆ GetFramePos()
bsize apollo::bridge::BridgeHeader::GetFramePos |
( |
| ) |
const |
|
inline |
◆ GetFrameSize()
bsize apollo::bridge::BridgeHeader::GetFrameSize |
( |
| ) |
const |
|
inline |
◆ GetHeaderBodySize()
bsize apollo::bridge::BridgeHeader::GetHeaderBodySize |
( |
| ) |
const |
|
inline |
◆ GetHeaderSize()
hsize apollo::bridge::BridgeHeader::GetHeaderSize |
( |
| ) |
const |
|
inline |
◆ GetHeaderVer()
uint32_t apollo::bridge::BridgeHeader::GetHeaderVer |
( |
| ) |
const |
|
inline |
◆ GetIndex()
uint32_t apollo::bridge::BridgeHeader::GetIndex |
( |
| ) |
const |
|
inline |
◆ GetMsgID()
uint32_t apollo::bridge::BridgeHeader::GetMsgID |
( |
| ) |
const |
|
inline |
◆ GetMsgName()
std::string apollo::bridge::BridgeHeader::GetMsgName |
( |
| ) |
const |
|
inline |
◆ GetMsgSize()
bsize apollo::bridge::BridgeHeader::GetMsgSize |
( |
| ) |
const |
|
inline |
◆ GetTimeStamp()
double apollo::bridge::BridgeHeader::GetTimeStamp |
( |
| ) |
const |
|
inline |
◆ GetTotalFrames()
uint32_t apollo::bridge::BridgeHeader::GetTotalFrames |
( |
| ) |
const |
|
inline |
◆ IsAvailable()
bool apollo::bridge::BridgeHeader::IsAvailable |
( |
const char * |
buf | ) |
|
在文件 bridge_header.cc 第 78 行定义.
78 {
79 if (!buf) {
80 return false;
81 }
83 return false;
84 }
85 return true;
86}
constexpr char BRIDGE_HEADER_FLAG[]
◆ Serialize()
bool apollo::bridge::BridgeHeader::Serialize |
( |
char * |
buf, |
|
|
size_t |
size |
|
) |
| |
在文件 bridge_header.cc 第 25 行定义.
25 {
26 if (!buf || size == 0) {
27 return false;
28 }
29 char *cursor = buf;
30 char *p_header_size = nullptr;
31 cursor = SerializeHeaderFlag(cursor, size);
32 p_header_size = cursor;
33 cursor +=
sizeof(
hsize) + 1;
36 }
37
38 if (!SerializeHeaderSize(p_header_size, size)) {
39 return false;
40 }
41 return true;
42}
◆ SetFramePos()
void apollo::bridge::BridgeHeader::SetFramePos |
( |
bsize |
frame_pos | ) |
|
|
inline |
在文件 bridge_header.h 第 83 行定义.
83 {
84 frame_pos_ = frame_pos;
85 header_body_size_ +=
87 }
constexpr size_t Item_Header_Size
◆ SetFrameSize()
void apollo::bridge::BridgeHeader::SetFrameSize |
( |
bsize |
frame_size | ) |
|
|
inline |
在文件 bridge_header.h 第 78 行定义.
78 {
79 frame_size_ = frame_size;
80 header_body_size_ +=
82 }
◆ SetHeaderVer()
void apollo::bridge::BridgeHeader::SetHeaderVer |
( |
uint32_t |
header_ver | ) |
|
|
inline |
在文件 bridge_header.h 第 58 行定义.
58 {
59 header_ver_ = header_ver;
60 header_body_size_ +=
62 }
◆ SetIndex()
void apollo::bridge::BridgeHeader::SetIndex |
( |
uint32_t |
index | ) |
|
|
inline |
◆ SetMsgID()
void apollo::bridge::BridgeHeader::SetMsgID |
( |
uint32_t |
msg_id | ) |
|
|
inline |
◆ SetMsgName()
void apollo::bridge::BridgeHeader::SetMsgName |
( |
const std::string & |
msg_name | ) |
|
|
inline |
在文件 bridge_header.h 第 63 行定义.
63 {
64 msg_name_ = msg_name;
65 header_body_size_ +=
67 }
◆ SetMsgSize()
void apollo::bridge::BridgeHeader::SetMsgSize |
( |
bsize |
msg_size | ) |
|
|
inline |
在文件 bridge_header.h 第 98 行定义.
98 {
99 msg_size_ = msg_size;
100 header_body_size_ +=
102 }
◆ SetTimeStamp()
void apollo::bridge::BridgeHeader::SetTimeStamp |
( |
double |
time_stamp | ) |
|
|
inline |
在文件 bridge_header.h 第 93 行定义.
93 {
94 time_stamp_ = time_stamp;
95 header_body_size_ +=
97 }
◆ SetTotalFrames()
void apollo::bridge::BridgeHeader::SetTotalFrames |
( |
uint32_t |
total_frames | ) |
|
|
inline |
在文件 bridge_header.h 第 73 行定义.
73 {
74 total_frames_ = total_frames;
75 header_body_size_ +=
77 }
该类的文档由以下文件生成: