Public Member Functions | Public Attributes | Private Types | Private Member Functions | Private Attributes | List of all members
CobBmsDriverNode Class Reference

#include <cob_bms_driver_node.h>

Public Member Functions

 CobBmsDriverNode ()
 
void pollNextInLists ()
 
bool prepare ()
 
 ~CobBmsDriverNode ()
 

Public Attributes

diagnostic_updater::Updater updater_
 

Private Types

typedef std::multimap< uint8_t, BmsParameter::PtrConfigMap
 

Private Member Functions

void diagnosticsTimerCallback (const ros::TimerEvent &)
 
void evaluatePollPeriodFrom (int poll_frequency)
 
bool getParams ()
 
void handleFrames (const can::Frame &f)
 
bool loadConfigMap (XmlRpc::XmlRpcValue &diagnostics, std::vector< std::string > &topics)
 
void optimizePollingLists ()
 
void pollBmsForIds (const uint16_t first_id, const uint16_t second_id)
 
void produceDiagnostics (diagnostic_updater::DiagnosticStatusWrapper &stat)
 

Private Attributes

int bms_id_to_poll_
 
std::string can_device_
 
ConfigMap config_map_
 
boost::mutex data_mutex_
 
can::CommInterface::FrameListenerConstSharedPtr frame_listener_
 
ros::NodeHandle nh_
 
ros::NodeHandle nh_priv_
 
int poll_period_for_two_ids_in_ms_
 
std::vector< uint8_t > polling_list1_
 
std::vector< uint8_t >::iterator polling_list1_it_
 
std::vector< uint8_t > polling_list2_
 
std::vector< uint8_t >::iterator polling_list2_it_
 
can::ThreadedSocketCANInterface socketcan_interface_
 
diagnostic_updater::DiagnosticStatusWrapper stat_
 
ros::Timer updater_timer_
 

Detailed Description

Definition at line 48 of file cob_bms_driver_node.h.

Member Typedef Documentation

typedef std::multimap<uint8_t, BmsParameter::Ptr> CobBmsDriverNode::ConfigMap
private

Definition at line 54 of file cob_bms_driver_node.h.

Constructor & Destructor Documentation

CobBmsDriverNode::CobBmsDriverNode ( )

Definition at line 129 of file cob_bms_driver_node.cpp.

CobBmsDriverNode::~CobBmsDriverNode ( )

Definition at line 133 of file cob_bms_driver_node.cpp.

Member Function Documentation

void CobBmsDriverNode::diagnosticsTimerCallback ( const ros::TimerEvent event)
private

Definition at line 447 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::evaluatePollPeriodFrom ( int  poll_frequency)
private

Definition at line 335 of file cob_bms_driver_node.cpp.

bool CobBmsDriverNode::getParams ( )
private

Definition at line 172 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::handleFrames ( const can::Frame f)
private

Definition at line 401 of file cob_bms_driver_node.cpp.

bool CobBmsDriverNode::loadConfigMap ( XmlRpc::XmlRpcValue diagnostics,
std::vector< std::string > &  topics 
)
private

Definition at line 231 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::optimizePollingLists ( )
private

Definition at line 349 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::pollBmsForIds ( const uint16_t  first_id,
const uint16_t  second_id 
)
private

Definition at line 366 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::pollNextInLists ( )

Definition at line 380 of file cob_bms_driver_node.cpp.

bool CobBmsDriverNode::prepare ( )

Definition at line 139 of file cob_bms_driver_node.cpp.

void CobBmsDriverNode::produceDiagnostics ( diagnostic_updater::DiagnosticStatusWrapper stat)
private

Definition at line 415 of file cob_bms_driver_node.cpp.

Member Data Documentation

int CobBmsDriverNode::bms_id_to_poll_
private

Definition at line 60 of file cob_bms_driver_node.h.

std::string CobBmsDriverNode::can_device_
private

Definition at line 59 of file cob_bms_driver_node.h.

ConfigMap CobBmsDriverNode::config_map_
private

Definition at line 57 of file cob_bms_driver_node.h.

boost::mutex CobBmsDriverNode::data_mutex_
private

Definition at line 63 of file cob_bms_driver_node.h.

can::CommInterface::FrameListenerConstSharedPtr CobBmsDriverNode::frame_listener_
private

Definition at line 75 of file cob_bms_driver_node.h.

ros::NodeHandle CobBmsDriverNode::nh_
private

Definition at line 51 of file cob_bms_driver_node.h.

ros::NodeHandle CobBmsDriverNode::nh_priv_
private

Definition at line 52 of file cob_bms_driver_node.h.

int CobBmsDriverNode::poll_period_for_two_ids_in_ms_
private

Definition at line 58 of file cob_bms_driver_node.h.

std::vector<uint8_t> CobBmsDriverNode::polling_list1_
private

Definition at line 66 of file cob_bms_driver_node.h.

std::vector<uint8_t>::iterator CobBmsDriverNode::polling_list1_it_
private

Definition at line 68 of file cob_bms_driver_node.h.

std::vector<uint8_t> CobBmsDriverNode::polling_list2_
private

Definition at line 67 of file cob_bms_driver_node.h.

std::vector<uint8_t>::iterator CobBmsDriverNode::polling_list2_it_
private

Definition at line 69 of file cob_bms_driver_node.h.

can::ThreadedSocketCANInterface CobBmsDriverNode::socketcan_interface_
private

Definition at line 72 of file cob_bms_driver_node.h.

diagnostic_updater::DiagnosticStatusWrapper CobBmsDriverNode::stat_
private

Definition at line 78 of file cob_bms_driver_node.h.

diagnostic_updater::Updater CobBmsDriverNode::updater_

Definition at line 109 of file cob_bms_driver_node.h.

ros::Timer CobBmsDriverNode::updater_timer_
private

Definition at line 61 of file cob_bms_driver_node.h.


The documentation for this class was generated from the following files:


cob_bms_driver
Author(s): mig-mc , Mathias Lüdtke
autogenerated on Wed Apr 7 2021 02:11:37