Class ROSaicNodeBase

Inheritance Relationships

Base Type

  • public rclcpp::Node

Derived Type

Class Documentation

class ROSaicNodeBase : public rclcpp::Node

This class is the base class for abstraction.

Subclassed by rosaic_node::ROSaicNode

Public Functions

inline ROSaicNodeBase(const rclcpp::NodeOptions &options)
inline virtual ~ROSaicNodeBase()
inline const Settings *settings() const
inline void registerSubscriber()
inline bool getUint32Param(const std::string &name, uint32_t &val, uint32_t defaultVal)

Gets an integer or unsigned integer value from the parameter server.

Parameters:
  • name[in] The key to be used in the parameter server’s dictionary

  • val[out] Storage for the retrieved value, of type U, which can be either unsigned int or int

  • defaultVal[in] Value to use if the server doesn’t contain this parameter

template<typename T>
inline bool param(const std::string &name, T &val, const T &defaultVal)

Gets parameter of type T from the parameter server.

Parameters:
  • name[in] The key to be used in the parameter server’s dictionary

  • val[out] Storage for the retrieved value, of type T

  • defaultVal[in] Value to use if the server doesn’t contain this parameter

Returns:

True if it could be retrieved, false if not

inline void log(log_level::LogLevel logLevel, const std::string &s) const

Log function to provide abstraction of ROS loggers.

Parameters:
  • logLevel[in] Log level

  • s[in] String to log

inline Timestamp getTime() const

Gets current timestamp.

Returns:

Timestamp

template<typename M>
inline void publishMessage(const std::string &topic, const M &msg)

Publishing function.

Parameters:
  • topic[in] String of topic

  • msg[in] ROS message to be published

inline void publishTf(const LocalizationMsg &loc)

Publishing function for tf.

Parameters:

msg[in] ROS localization message to be converted to tf

inline void setIsIns()

Set INS to true.

inline void setHasHeading()

Set has heading to true.

inline void setImprovedVsmHandling()

Set improved VSM handling to true.

inline bool isIns()

Check if Rx is INS.

inline bool hasHeading()

Check if Rx has heading.

inline bool hasImprovedVsmHandling()

Check if Rx has improved VSM handling.

Protected Functions

virtual void sendVelocity(const std::string &velNmea) = 0

Send velocity to communication layer (virtual)

Protected Attributes

Settings settings_

Settings.