Apollo 10.0
自动驾驶开放平台
apollo::cyber::transport::ReadableInfo类 参考

#include <readable_info.h>

apollo::cyber::transport::ReadableInfo 的协作图:

Public 成员函数

 ReadableInfo ()
 
 ReadableInfo (uint64_t host_id, int32_t block_index, uint64_t channel_id, int32_t arena_block_index=-1)
 
virtual ~ReadableInfo ()
 
ReadableInfooperator= (const ReadableInfo &other)
 
bool DeserializeFrom (const std::string &src)
 
bool DeserializeFrom (const char *src, std::size_t len)
 
bool SerializeTo (std::string *dst) const
 
uint64_t host_id () const
 
void set_host_id (uint64_t host_id)
 
int32_t block_index () const
 
void set_block_index (int32_t block_index)
 
int32_t arena_block_index () const
 
void set_arena_block_index (int32_t arena_block_index)
 
uint64_t channel_id () const
 
void set_channel_id (uint64_t channel_id)
 

静态 Public 属性

static const size_t kSize
 

详细描述

在文件 readable_info.h32 行定义.

构造及析构函数说明

◆ ReadableInfo() [1/2]

apollo::cyber::transport::ReadableInfo::ReadableInfo ( )

在文件 readable_info.cc30 行定义.

31 : host_id_(0),
32 block_index_(0),
33 arena_block_index_(-1),
34 channel_id_(0) {}

◆ ReadableInfo() [2/2]

apollo::cyber::transport::ReadableInfo::ReadableInfo ( uint64_t  host_id,
int32_t  block_index,
uint64_t  channel_id,
int32_t  arena_block_index = -1 
)

在文件 readable_info.cc36 行定义.

38 : host_id_(host_id),
39 block_index_(block_index),
40 arena_block_index_(arena_block_index),
41 channel_id_(channel_id) {}

◆ ~ReadableInfo()

apollo::cyber::transport::ReadableInfo::~ReadableInfo ( )
virtual

在文件 readable_info.cc43 行定义.

43{}

成员函数说明

◆ arena_block_index()

int32_t apollo::cyber::transport::ReadableInfo::arena_block_index ( ) const
inline

在文件 readable_info.h51 行定义.

51{ return arena_block_index_; }

◆ block_index()

int32_t apollo::cyber::transport::ReadableInfo::block_index ( ) const
inline

在文件 readable_info.h48 行定义.

48{ return block_index_; }

◆ channel_id()

uint64_t apollo::cyber::transport::ReadableInfo::channel_id ( ) const
inline

在文件 readable_info.h55 行定义.

55{ return channel_id_; }

◆ DeserializeFrom() [1/2]

bool apollo::cyber::transport::ReadableInfo::DeserializeFrom ( const char *  src,
std::size_t  len 
)

在文件 readable_info.cc73 行定义.

73 {
74 RETURN_VAL_IF_NULL(src, false);
75 if (len != kSize) {
76 AWARN << "src size[" << len << "] mismatch.";
77 return false;
78 }
79
80 char* ptr = const_cast<char*>(src);
81 memcpy(reinterpret_cast<char*>(&host_id_), ptr, sizeof(host_id_));
82 ptr += sizeof(host_id_);
83 memcpy(reinterpret_cast<char*>(&block_index_), ptr, sizeof(block_index_));
84 ptr += sizeof(block_index_);
85 memcpy(reinterpret_cast<char*>(&channel_id_), ptr, sizeof(channel_id_));
86 ptr += sizeof(channel_id_);
87 memcpy(reinterpret_cast<char*>(&arena_block_index_),
88 ptr, sizeof(arena_block_index_));
89 return true;
90}
#define RETURN_VAL_IF_NULL(ptr, val)
Definition log.h:98
#define AWARN
Definition log.h:43

◆ DeserializeFrom() [2/2]

bool apollo::cyber::transport::ReadableInfo::DeserializeFrom ( const std::string &  src)

在文件 readable_info.cc69 行定义.

69 {
70 return DeserializeFrom(src.data(), src.size());
71}
bool DeserializeFrom(const std::string &src)

◆ host_id()

uint64_t apollo::cyber::transport::ReadableInfo::host_id ( ) const
inline

在文件 readable_info.h45 行定义.

45{ return host_id_; }

◆ operator=()

ReadableInfo & apollo::cyber::transport::ReadableInfo::operator= ( const ReadableInfo other)

在文件 readable_info.cc45 行定义.

45 {
46 if (this != &other) {
47 this->host_id_ = other.host_id_;
48 this->block_index_ = other.block_index_;
49 this->channel_id_ = other.channel_id_;
50 this->arena_block_index_ = other.arena_block_index_;
51 }
52 return *this;
53}

◆ SerializeTo()

bool apollo::cyber::transport::ReadableInfo::SerializeTo ( std::string *  dst) const

在文件 readable_info.cc55 行定义.

55 {
56 RETURN_VAL_IF_NULL(dst, false);
57
58 dst->assign(reinterpret_cast<char*>(const_cast<uint64_t*>(&host_id_)),
59 sizeof(host_id_));
60 dst->append(reinterpret_cast<char*>(const_cast<int32_t*>(&block_index_)),
61 sizeof(block_index_));
62 dst->append(reinterpret_cast<char*>(const_cast<uint64_t*>(&channel_id_)),
63 sizeof(channel_id_));
64 dst->append(reinterpret_cast<char*>(const_cast<int32_t*>(
65 &arena_block_index_)), sizeof(arena_block_index_));
66 return true;
67}

◆ set_arena_block_index()

void apollo::cyber::transport::ReadableInfo::set_arena_block_index ( int32_t  arena_block_index)
inline

在文件 readable_info.h52 行定义.

53 { arena_block_index_ = arena_block_index; }

◆ set_block_index()

void apollo::cyber::transport::ReadableInfo::set_block_index ( int32_t  block_index)
inline

在文件 readable_info.h49 行定义.

49{ block_index_ = block_index; }

◆ set_channel_id()

void apollo::cyber::transport::ReadableInfo::set_channel_id ( uint64_t  channel_id)
inline

在文件 readable_info.h56 行定义.

56{ channel_id_ = channel_id; }

◆ set_host_id()

void apollo::cyber::transport::ReadableInfo::set_host_id ( uint64_t  host_id)
inline

在文件 readable_info.h46 行定义.

46{ host_id_ = host_id; }

类成员变量说明

◆ kSize

const size_t apollo::cyber::transport::ReadableInfo::kSize
static
初始值:
= sizeof(uint64_t) * 2 +
sizeof(int32_t) + sizeof(int32_t)

在文件 readable_info.h58 行定义.


该类的文档由以下文件生成: