Public Member Functions | Protected Attributes | Private Member Functions | List of all members
rokubimini::serial::RokubiminiSerialBusManager Class Reference

Inherits from RokubiminiBusManager. It's used for managing the serial bus. More...

#include <RokubiminiSerialBusManager.hpp>

Inheritance diagram for rokubimini::serial::RokubiminiSerialBusManager:
Inheritance graph
[legend]

Public Member Functions

virtual bool addRokubiminiToBus (const std::shared_ptr< Rokubimini > &rokubimini) const
 
bool addRokubiminiToBus (const std::shared_ptr< RokubiminiSerial > &rokubimini) const
 Creates a RokubiminiSerial Implementation object for the. More...
 
bool createRokubimini (const std::string &rokubiminiName) override
 Creates an RokubiminiSerial instance. More...
 
bool loadBusParameters () override
 Loads serial bus parameters from parameter server. More...
 
double loadTimeStep () override
 Loads the internal timeStep_ variable. More...
 
void publishBusManagerRosDiagnostics () override
 Publish the ROS Diagnostics of the Bus Manager. More...
 
 RokubiminiSerialBusManager ()=delete
 Default constructor of RokubiminiSerialBusManager. More...
 
 RokubiminiSerialBusManager (const NodeHandlePtr &nh)
 Constructor with initialization list for the NodeHandle. More...
 
 RokubiminiSerialBusManager (const std::string &busName, NodeHandlePtr nh)
 Constructor with initialization list for the name and NodeHandle. More...
 
void setConfigMode () override
 Sets all the serial devices in config mode. More...
 
void setRunMode () override
 Sets all the serial devices in run mode. More...
 
bool startupCommunication () override
 Initializes the communication with the serial devices. More...
 
 ~RokubiminiSerialBusManager () override=default
 Default Destructor. More...
 
- Public Member Functions inherited from rokubimini::RokubiminiBusManager
virtual bool addRokubiminiToBus (const std::shared_ptr< Rokubimini > &rokubimini) const
 
void cleanup () override
 
void createRokubiminiRosDiagnostics () const
 
void createRokubiminiRosPublishers () const
 
void createRokubiminiRosServices () const
 
virtual bool createRokubiminisFromParamServer ()
 
std::string getName () const
 
std::shared_ptr< RokubiminigetRokubimini (const std::string &name) const
 
std::vector< std::shared_ptr< Rokubimini > > getRokubiminis () const
 
bool hasRokubimini (const std::string &name)
 
bool init () override
 
virtual bool load ()
 
void publishRokubiminiRosDiagnostics () const
 
void publishRosMessages () const
 
virtual void readBus ()
 
 RokubiminiBusManager ()=delete
 
 RokubiminiBusManager (const NodeHandlePtr &nh)
 
 RokubiminiBusManager (const std::string &busName, NodeHandlePtr nh)
 
void setNodeHandle (const NodeHandlePtr &nh)
 
virtual void shutdown ()
 
virtual void shutdownBus ()
 
void shutdownWithCommunication () const
 
void shutdownWithoutCommunication () const
 
virtual bool startup ()
 
void startupWithCommunication () const
 
void startupWithoutCommunication () const
 
virtual bool update (const bota_worker::WorkerEvent &event)
 
void updateProcessReading () const
 
virtual void writeToBus ()
 
 ~RokubiminiBusManager () override=default
 
- Public Member Functions inherited from bota_node::Node
bool addWorker (const bota_worker::WorkerOptions &options)
 
bool addWorker (const std::string &name, const double timestep, bool(T::*fp)(const bota_worker::WorkerEvent &), T *obj, const int priority=0)
 
void cancelWorker (const std::string &name, const bool wait=true)
 
ros::NodeHandlegetNodeHandle () const
 
bool hasWorker (const std::string &name)
 
 Node ()=delete
 
 Node (NodeHandlePtr nh)
 
virtual void preCleanup ()
 
void shutdown ()
 
void stopAllWorkers ()
 
void stopAllWorkers (bool wait)
 
virtual ~Node ()=default
 

Protected Attributes

uint32_t baudRate_
 The baud rate of the bus. More...
 
std::string serialPort_
 The name of serial port. More...
 
double timeStep_
 The time step of publishing loop. More...
 
- Protected Attributes inherited from rokubimini::RokubiminiBusManager
std::atomic< bool > isRunning_
 
std::string name_
 
NodeHandlePtr nh_
 
std::vector< std::shared_ptr< Rokubimini > > rokubiminis_
 
- Protected Attributes inherited from bota_node::Node
NodeHandlePtr nh_
 

Private Member Functions

void fetchTimeStep ()
 Fetches the 'time_step' from the Parameter Server and stores it in the protected 'timeStep_' variable. More...
 

Additional Inherited Members

- Public Types inherited from rokubimini::RokubiminiBusManager
typedef std::shared_ptr< diagnostic_updater::UpdaterDiagnosticsUpdaterPtr
 
typedef std::shared_ptr< ros::NodeHandleNodeHandlePtr
 
- Public Types inherited from bota_node::Node
typedef std::shared_ptr< ros::NodeHandleNodeHandlePtr
 

Detailed Description

Inherits from RokubiminiBusManager. It's used for managing the serial bus.

Although there isn't such a thing called "serial bus", it's used for compliance with the inheritance scheme.

Definition at line 25 of file RokubiminiSerialBusManager.hpp.

Constructor & Destructor Documentation

◆ RokubiminiSerialBusManager() [1/3]

rokubimini::serial::RokubiminiSerialBusManager::RokubiminiSerialBusManager ( )
delete

Default constructor of RokubiminiSerialBusManager.

◆ RokubiminiSerialBusManager() [2/3]

rokubimini::serial::RokubiminiSerialBusManager::RokubiminiSerialBusManager ( const std::string &  busName,
NodeHandlePtr  nh 
)
inlineexplicit

Constructor with initialization list for the name and NodeHandle.

Definition at line 42 of file RokubiminiSerialBusManager.hpp.

◆ RokubiminiSerialBusManager() [3/3]

rokubimini::serial::RokubiminiSerialBusManager::RokubiminiSerialBusManager ( const NodeHandlePtr nh)
inlineexplicit

Constructor with initialization list for the NodeHandle.

Definition at line 51 of file RokubiminiSerialBusManager.hpp.

◆ ~RokubiminiSerialBusManager()

rokubimini::serial::RokubiminiSerialBusManager::~RokubiminiSerialBusManager ( )
overridedefault

Default Destructor.

Definition at line 54 of file RokubiminiSerialBusManager.hpp.

Member Function Documentation

◆ addRokubiminiToBus() [1/2]

virtual bool rokubimini::RokubiminiBusManager::addRokubiminiToBus

◆ addRokubiminiToBus() [2/2]

bool rokubimini::serial::RokubiminiSerialBusManager::addRokubiminiToBus ( const std::shared_ptr< RokubiminiSerial > &  rokubimini) const

Creates a RokubiminiSerial Implementation object for the.

Parameters
rokubiminigiven.
rokubiminiThe Rokubimini Serial instance for which an implementation will be created.
Returns
True if the creation of the RokubiminiSerialImpl object is successful.

Definition at line 50 of file RokubiminiSerialBusManager.cpp.

◆ createRokubimini()

bool rokubimini::serial::RokubiminiSerialBusManager::createRokubimini ( const std::string &  rokubiminiName)
overridevirtual

Creates an RokubiminiSerial instance.

This function creates a RokubiminiSerial instance based on a given name and attaches it to the bus.

Parameters
rokubiminiNameThe name of the Rokubimini.
Returns
True if the operation succeeded.

Implements rokubimini::RokubiminiBusManager.

Definition at line 22 of file RokubiminiSerialBusManager.cpp.

◆ fetchTimeStep()

void rokubimini::serial::RokubiminiSerialBusManager::fetchTimeStep ( )
private

Fetches the 'time_step' from the Parameter Server and stores it in the protected 'timeStep_' variable.

Definition at line 12 of file RokubiminiSerialBusManager.cpp.

◆ loadBusParameters()

bool rokubimini::serial::RokubiminiSerialBusManager::loadBusParameters ( )
overridevirtual

Loads serial bus parameters from parameter server.

Implements rokubimini::RokubiminiBusManager.

Definition at line 35 of file RokubiminiSerialBusManager.cpp.

◆ loadTimeStep()

double rokubimini::serial::RokubiminiSerialBusManager::loadTimeStep ( )
overridevirtual

Loads the internal timeStep_ variable.

Implements rokubimini::RokubiminiBusManager.

Definition at line 8 of file RokubiminiSerialBusManager.cpp.

◆ publishBusManagerRosDiagnostics()

void rokubimini::serial::RokubiminiSerialBusManager::publishBusManagerRosDiagnostics ( )
inlineoverridevirtual

Publish the ROS Diagnostics of the Bus Manager.

Implements rokubimini::RokubiminiBusManager.

Definition at line 141 of file RokubiminiSerialBusManager.hpp.

◆ setConfigMode()

void rokubimini::serial::RokubiminiSerialBusManager::setConfigMode ( )
overridevirtual

Sets all the serial devices in config mode.

Reimplemented from rokubimini::RokubiminiBusManager.

Definition at line 79 of file RokubiminiSerialBusManager.cpp.

◆ setRunMode()

void rokubimini::serial::RokubiminiSerialBusManager::setRunMode ( )
overridevirtual

Sets all the serial devices in run mode.

Reimplemented from rokubimini::RokubiminiBusManager.

Definition at line 90 of file RokubiminiSerialBusManager.cpp.

◆ startupCommunication()

bool rokubimini::serial::RokubiminiSerialBusManager::startupCommunication ( )
overridevirtual

Initializes the communication with the serial devices.

Returns
True if the operation was successful.

Reimplemented from rokubimini::RokubiminiBusManager.

Definition at line 58 of file RokubiminiSerialBusManager.cpp.

Member Data Documentation

◆ baudRate_

uint32_t rokubimini::serial::RokubiminiSerialBusManager::baudRate_
protected

The baud rate of the bus.

Definition at line 156 of file RokubiminiSerialBusManager.hpp.

◆ serialPort_

std::string rokubimini::serial::RokubiminiSerialBusManager::serialPort_
protected

The name of serial port.

Definition at line 149 of file RokubiminiSerialBusManager.hpp.

◆ timeStep_

double rokubimini::serial::RokubiminiSerialBusManager::timeStep_
protected

The time step of publishing loop.

Definition at line 163 of file RokubiminiSerialBusManager.hpp.


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


rokubimini_serial
Author(s):
autogenerated on Sat Apr 15 2023 02:53:58