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

#include <stream.h>

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

Public 类型

enum class  Status { DISCONNECTED , CONNECTED , ERROR }
 

Public 成员函数

virtual ~Stream ()
 
Status get_status () const
 
virtual bool Connect ()=0
 
virtual bool Disconnect ()=0
 
void RegisterLoginData (const std::vector< std::string > login_data)
 
void Login ()
 
virtual size_t read (uint8_t *buffer, size_t max_length)=0
 
virtual size_t write (const uint8_t *buffer, size_t length)=0
 
size_t write (const std::string &buffer)
 

静态 Public 成员函数

static Streamcreate_tcp (const char *address, uint16_t port, uint32_t timeout_usec=1000000)
 
static Streamcreate_udp (const char *address, uint16_t port, uint32_t timeout_usec=1000000)
 
static Streamcreate_serial (const char *device_name, uint32_t baud_rate, uint32_t timeout_usec=0)
 
static Streamcreate_ntrip (const std::string &address, uint16_t port, const std::string &mountpoint, const std::string &user, const std::string &passwd, uint32_t timeout_s=30)
 
static Streamcreate_can (const apollo::drivers::canbus::CANCardParameter &parameter)
 

静态 Public 属性

static constexpr size_t NUM_STATUS
 

Protected 成员函数

 Stream ()
 

Protected 属性

Status status_ = Status::DISCONNECTED
 

详细描述

在文件 stream.h36 行定义.

成员枚举类型说明

◆ Status

枚举值
DISCONNECTED 
CONNECTED 
ERROR 

在文件 stream.h61 行定义.

构造及析构函数说明

◆ ~Stream()

virtual apollo::drivers::gnss::Stream::~Stream ( )
inlinevirtual

在文件 stream.h58 行定义.

58{}

◆ Stream()

apollo::drivers::gnss::Stream::Stream ( )
inlineprotected

在文件 stream.h102 行定义.

102{}

成员函数说明

◆ Connect()

◆ create_can()

Stream * apollo::drivers::gnss::Stream::create_can ( const apollo::drivers::canbus::CANCardParameter parameter)
static

在文件 can_stream.cc74 行定义.

75 {
76 return new CanStream(parameter);
77}

◆ create_ntrip()

Stream * apollo::drivers::gnss::Stream::create_ntrip ( const std::string &  address,
uint16_t  port,
const std::string &  mountpoint,
const std::string &  user,
const std::string &  passwd,
uint32_t  timeout_s = 30 
)
static

在文件 ntrip_stream.cc238 行定义.

241 {
242 return new NtripStream(address, port, mountpoint, user, passwd, timeout_s);
243}

◆ create_serial()

Stream * apollo::drivers::gnss::Stream::create_serial ( const char *  device_name,
uint32_t  baud_rate,
uint32_t  timeout_usec = 0 
)
static

在文件 serial_stream.cc430 行定义.

431 {
432 speed_t baud = get_serial_baudrate(baud_rate);
433 return baud == 0 ? nullptr
434 : new SerialStream(device_name, baud, timeout_usec);
435}
speed_t get_serial_baudrate(uint32_t rate)

◆ create_tcp()

Stream * apollo::drivers::gnss::Stream::create_tcp ( const char *  address,
uint16_t  port,
uint32_t  timeout_usec = 1000000 
)
static

在文件 tcp_stream.cc344 行定义.

345 {
346 return new TcpStream(address, port, timeout_usec);
347}

◆ create_udp()

Stream * apollo::drivers::gnss::Stream::create_udp ( const char *  address,
uint16_t  port,
uint32_t  timeout_usec = 1000000 
)
static

在文件 udp_stream.cc57 行定义.

58 {
59 return new UdpStream(address, port, timeout_usec);
60}

◆ Disconnect()

◆ get_status()

Status apollo::drivers::gnss::Stream::get_status ( ) const
inline

在文件 stream.h69 行定义.

69{ return status_; }

◆ Login()

void apollo::drivers::gnss::Stream::Login ( )
inline

在文件 stream.h81 行定义.

81 {
82 for (size_t i = 0; i < login_data_.size(); ++i) {
83 write(login_data_[i]);
84 AINFO << "Login: " << login_data_[i];
85 // sleep a little to avoid overrun of the slow serial interface.
86 cyber::Duration(0.5).Sleep();
87 }
88 }
virtual size_t write(const uint8_t *buffer, size_t length)=0
#define AINFO
Definition log.h:42

◆ read()

virtual size_t apollo::drivers::gnss::Stream::read ( uint8_t *  buffer,
size_t  max_length 
)
pure virtual

◆ RegisterLoginData()

void apollo::drivers::gnss::Stream::RegisterLoginData ( const std::vector< std::string >  login_data)
inline

在文件 stream.h77 行定义.

77 {
78 login_data_.assign(login_data.begin(), login_data.end());
79 }

◆ write() [1/2]

size_t apollo::drivers::gnss::Stream::write ( const std::string &  buffer)
inline

在文件 stream.h96 行定义.

96 {
97 return write(reinterpret_cast<const uint8_t *>(buffer.data()),
98 buffer.size());
99 }

◆ write() [2/2]

virtual size_t apollo::drivers::gnss::Stream::write ( const uint8_t *  buffer,
size_t  length 
)
pure virtual

类成员变量说明

◆ NUM_STATUS

constexpr size_t apollo::drivers::gnss::Stream::NUM_STATUS
staticconstexpr
初始值:
=
static_cast<int>(Stream::Status::ERROR) + 1

在文件 stream.h67 行定义.

◆ status_

Status apollo::drivers::gnss::Stream::status_ = Status::DISCONNECTED
protected

在文件 stream.h104 行定义.


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