Apollo 10.0
自动驾驶开放平台
apollo::drivers::gnss::ForsenseBaseParser类 参考abstract

#include <forsense_base_parser.h>

类 apollo::drivers::gnss::ForsenseBaseParser 继承关系图:
apollo::drivers::gnss::ForsenseBaseParser 的协作图:

Public 成员函数

 ForsenseBaseParser ()
 
 ForsenseBaseParser (const config::Config &config)
 
virtual bool PrepareMessage ()=0
 
virtual void GetMessages (MessageInfoVec *messages)
 
- Public 成员函数 继承自 apollo::drivers::gnss::Parser
virtual ~Parser ()
 
void Update (const uint8_t *data, size_t length)
 
void Update (const std::string &data)
 
virtual MessageType GetMessage (MessagePtr *message_ptr)
 
virtual bool GetInsStat (MessagePtr *message_ptr)
 

Protected 成员函数

void PrepareMessageStatus (const uint8_t &system_state, const uint8_t &satellite_status)
 
- Protected 成员函数 继承自 apollo::drivers::gnss::Parser
 Parser ()
 

Protected 属性

ForsenseMessage decode_message_
 
- Protected 属性 继承自 apollo::drivers::gnss::Parser
const uint8_t * data_ = nullptr
 
const uint8_t * data_end_ = nullptr
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 apollo::drivers::gnss::Parser
static ParserCreateNovatel (const config::Config &config)
 
static ParserCreateHuaCeText (const config::Config &config)
 
static ParserCreateAsensing (const config::Config &config)
 
static ParserCreateBroadGnssText (const config::Config &config)
 
static ParserCreateEnbroad (const config::Config &config)
 
static ParserCreateForsenseText (const config::Config &config)
 
static ParserCreateParser (const config::Config &config)
 
static ParserCreateRtcmV3 (bool is_base_station=false)
 

详细描述

在文件 forsense_base_parser.h82 行定义.

构造及析构函数说明

◆ ForsenseBaseParser() [1/2]

apollo::drivers::gnss::ForsenseBaseParser::ForsenseBaseParser ( )
inline

在文件 forsense_base_parser.h84 行定义.

84{}

◆ ForsenseBaseParser() [2/2]

apollo::drivers::gnss::ForsenseBaseParser::ForsenseBaseParser ( const config::Config config)
explicit

在文件 forsense_base_parser.cc33 行定义.

33{}

成员函数说明

◆ GetMessages()

void apollo::drivers::gnss::ForsenseBaseParser::GetMessages ( MessageInfoVec messages)
virtual

重载 apollo::drivers::gnss::Parser .

在文件 forsense_base_parser.cc35 行定义.

35 {
36 if (data_ == nullptr) {
37 return;
38 }
39 if (!PrepareMessage()) {
40 return;
41 }
42
43 FillGnssBestpos();
44 FillImu();
45 FillHeading();
46 FillIns();
47 FillInsStat();
48
49 messages->push_back(MessageInfo{MessageType::BEST_GNSS_POS,
50 reinterpret_cast<MessagePtr>(&bestpos_)});
51 messages->push_back(
52 MessageInfo{MessageType::IMU, reinterpret_cast<MessagePtr>(&imu_)});
53 messages->push_back(MessageInfo{MessageType::HEADING,
54 reinterpret_cast<MessagePtr>(&heading_)});
55 messages->push_back(
56 MessageInfo{MessageType::INS, reinterpret_cast<MessagePtr>(&ins_)});
57 messages->push_back(MessageInfo{MessageType::INS_STAT,
58 reinterpret_cast<MessagePtr>(&ins_stat_)});
59}
const uint8_t * data_
Definition parser.h:138
::google::protobuf::Message * MessagePtr
Definition parser.h:34

◆ PrepareMessage()

virtual bool apollo::drivers::gnss::ForsenseBaseParser::PrepareMessage ( )
pure virtual

◆ PrepareMessageStatus()

void apollo::drivers::gnss::ForsenseBaseParser::PrepareMessageStatus ( const uint8_t &  system_state,
const uint8_t &  satellite_status 
)
protected

在文件 forsense_base_parser.cc61 行定义.

62 {
63 switch (system_state) {
64 case 0:
66 break;
67 case 1:
68 case 2:
70 break;
71 default:
73 }
74 switch (satellite_status) {
75 case 0:
77 break;
78 case 1:
79 case 6:
81 break;
82 case 2:
83 case 7:
85 break;
86 case 3:
88 break;
89 case 4:
91 break;
92 case 5:
94 break;
95 case 8:
97 break;
98 case 9:
100 break;
101 default:
103 }
104}

类成员变量说明

◆ decode_message_

ForsenseMessage apollo::drivers::gnss::ForsenseBaseParser::decode_message_
protected

在文件 forsense_base_parser.h94 行定义.


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