Apollo 11.0
自动驾驶开放平台
CyberChannReader< T > 模板类 参考

#include <channel_reader.h>

CyberChannReader< T > 的协作图:

Public 成员函数

 CyberChannReader (void)
 
 ~CyberChannReader ()
 
void CloseChannel (void)
 
bool InstallCallbackAndOpen (CyberChannelCallback< T > channelCallback, const std::string &channelName, const std::string &nodeName)
 
bool InstallCallback (CyberChannelCallback< T > channelCallback)
 
bool OpenChannel (const std::string &channelName, const std::string &nodeName)
 
const std::string & NodeName (void) const
 

详细描述

template<typename T>
class CyberChannReader< T >

在文件 channel_reader.h 第 30 行定义.

构造及析构函数说明

◆ CyberChannReader()

template<typename T >
CyberChannReader< T >::CyberChannReader ( void  )
inline

在文件 channel_reader.h 第 32 行定义.

32: channel_callback_(nullptr), channel_node_(nullptr) {}

◆ ~CyberChannReader()

template<typename T >
CyberChannReader< T >::~CyberChannReader ( )
inline

在文件 channel_reader.h 第 34 行定义.

34{ CloseChannel(); }
void CloseChannel(void)

成员函数说明

◆ CloseChannel()

template<typename T >
void CyberChannReader< T >::CloseChannel ( void  )
inline

在文件 channel_reader.h 第 36 行定义.

36 {
37 if (channel_reader_ != nullptr) {
38 channel_reader_.reset();
39 }
40
41 if (channel_node_ != nullptr) {
42 channel_node_.reset();
43 }
44 }

◆ InstallCallback()

template<typename T >
bool CyberChannReader< T >::InstallCallback ( CyberChannelCallback< T >  channelCallback)
inline

在文件 channel_reader.h 第 53 行定义.

53 {
54 if (channelCallback != nullptr) {
55 channel_callback_ = channelCallback;
56 return true;
57 } else {
58 std::cerr << "Parameter readerCallback is null" << std::endl;
59 return false;
60 }
61 }

◆ InstallCallbackAndOpen()

template<typename T >
bool CyberChannReader< T >::InstallCallbackAndOpen ( CyberChannelCallback< T >  channelCallback,
const std::string &  channelName,
const std::string &  nodeName 
)
inline

在文件 channel_reader.h 第 46 行定义.

48 {
49 return InstallCallback(channelCallback) &&
50 OpenChannel(channelName, nodeName);
51 }
bool OpenChannel(const std::string &channelName, const std::string &nodeName)
bool InstallCallback(CyberChannelCallback< T > channelCallback)

◆ NodeName()

template<typename T >
const std::string & CyberChannReader< T >::NodeName ( void  ) const
inline

在文件 channel_reader.h 第 78 行定义.

78{ return channel_node_->Name(); }

◆ OpenChannel()

template<typename T >
bool CyberChannReader< T >::OpenChannel ( const std::string &  channelName,
const std::string &  nodeName 
)
inline

在文件 channel_reader.h 第 63 行定义.

64 {
65 if (channelName.empty() || nodeName.empty()) {
66 std::cerr << "Channel Name or Node Name must be not empty" << std::endl;
67 return false;
68 }
69
70 if (channel_node_ != nullptr || channel_reader_ != nullptr ||
71 !channel_callback_) {
72 return false;
73 }
74
75 return CreateChannel(channelName, nodeName);
76 }

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