Public Member Functions | |
Oem7MessageNodelet () | |
~Oem7MessageNodelet () | |
Public Member Functions inherited from novatel_oem7_driver::Oem7MessageDecoderUserIf | |
virtual void | onNewMessage (boost::shared_ptr< const novatel_oem7::Oem7RawMessageIf >)=0 |
virtual | ~Oem7MessageDecoderUserIf () |
Public Member Functions inherited from nodelet::Nodelet | |
void | init (const std::string &name, const M_string &remapping_args, const V_string &my_argv, ros::CallbackQueueInterface *st_queue=NULL, ros::CallbackQueueInterface *mt_queue=NULL) |
Nodelet () | |
virtual | ~Nodelet () |
Private Types | |
typedef std::map< int, long > | log_count_map_t |
Private Member Functions | |
void | onInit () |
void | onInitImpl () |
void | onNewMessage (Oem7RawMessageIf::ConstPtr raw_msg) |
void | outputLogStatistics () |
void | publishOem7RawMsg (Oem7RawMessageIf::ConstPtr raw_msg) |
void | serviceLoopCb (const ros::TimerEvent &event) |
bool | serviceOem7AbasciiCb (novatel_oem7_msgs::Oem7AbasciiCmd::Request &req, novatel_oem7_msgs::Oem7AbasciiCmd::Response &rsp) |
void | updateLogStatistics (const Oem7RawMessageIf::ConstPtr &raw_msg) |
Private Attributes | |
boost::shared_ptr< ros::AsyncSpinner > | aspinner_ |
1 thread servicing the command queue. More... | |
long | discarded_msg_num_ |
Number of messages received and discarded by the driver. More... | |
log_count_map_t | log_counts_ |
Indidividual log counts. More... | |
boost::shared_ptr< novatel_oem7_driver::Oem7MessageDecoderIf > | msg_decoder |
Message Decoder plugin. More... | |
boost::shared_ptr< MessageHandler > | msg_handler_ |
Dispatches individual messages for handling. More... | |
std::mutex | nodelet_mtx_ |
Protects nodelet internal state. More... | |
ros::ServiceServer | oem7_cmd_srv_ |
Oem7 command service. More... | |
pluginlib::ClassLoader< novatel_oem7_driver::Oem7MessageDecoderIf > | oem7_msg_decoder_loader |
Oem7RosPublisher | oem7rawmsg_pub_ |
Publishes raw Oem7 messages. More... | |
double | publish_delay_sec_ |
Delay after publishing each message; used to throttle output with static data sources. More... | |
bool | publish_unknown_oem7raw_ |
Publish all unknown messages to 'Oem7Raw'. More... | |
ros::CallbackQueue | queue_ |
std::set< int > | raw_msg_pub_ |
Set of raw messages to publish. More... | |
boost::shared_ptr< novatel_oem7_driver::Oem7ReceiverIf > | recvr_ |
Oem7 Receiver Interface plugin. More... | |
pluginlib::ClassLoader< novatel_oem7_driver::Oem7ReceiverIf > | recvr_loader_ |
std::string | rsp_ |
The latest response from Oem7 receiver. More... | |
std::condition_variable | rsp_ready_cond_ |
Response ready, signaled from response handler to Oem7 Cmd Handler. More... | |
std::mutex | rsp_ready_mtx_ |
Response condition guard. More... | |
ros::Timer | timer_ |
One time service callback. More... | |
ros::CallbackQueue | timer_queue_ |
Dedicated queue for command requests. More... | |
boost::shared_ptr< ros::AsyncSpinner > | timer_spinner_ |
1 thread servicing the command queue. More... | |
long | total_log_count_ |
Total number of logs received. More... | |
long | unknown_msg_num_ |
number of messages received that could not be identified. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from nodelet::Nodelet | |
ros::CallbackQueueInterface & | getMTCallbackQueue () const |
ros::NodeHandle & | getMTNodeHandle () const |
ros::NodeHandle & | getMTPrivateNodeHandle () const |
const V_string & | getMyArgv () const |
const std::string & | getName () const |
ros::NodeHandle & | getNodeHandle () const |
ros::NodeHandle & | getPrivateNodeHandle () const |
const M_string & | getRemappingArgs () const |
ros::CallbackQueueInterface & | getSTCallbackQueue () const |
std::string | getSuffixedName (const std::string &suffix) const |
Nodelet publishing raw oem7 messages and issuing oem7 commands. Loads plugins responsible for obtaining byte input from the Oem7 receiver, and decoding it into raw oem7 messages. Implements a service allowing Oem7 Abbreviated ASCII commands to be sent to the receiver.
Definition at line 57 of file oem7_message_nodelet.cpp.
|
private |
Definition at line 92 of file oem7_message_nodelet.cpp.
|
inline |
Definition at line 391 of file oem7_message_nodelet.cpp.
|
inline |
Definition at line 402 of file oem7_message_nodelet.cpp.
|
inlineprivatevirtual |
Wraps actual initializating for exception handling.
Implements nodelet::Nodelet.
Definition at line 107 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Loads plugins, sets up threading/callbacks, advertises messages and services.
Definition at line 124 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Called by ROS decoder with new raw messages
Definition at line 300 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Outputs Log statistics to ROS console.
Definition at line 246 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Definition at line 283 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Service loop; drives Oem7 message decoder. onNewMessage is called on this thread.
Definition at line 380 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Called to request O7AbasciiCmd service
Definition at line 201 of file oem7_message_nodelet.cpp.
|
inlineprivate |
Definition at line 266 of file oem7_message_nodelet.cpp.
|
private |
1 thread servicing the command queue.
Definition at line 76 of file oem7_message_nodelet.cpp.
|
private |
Number of messages received and discarded by the driver.
Definition at line 96 of file oem7_message_nodelet.cpp.
|
private |
Indidividual log counts.
Definition at line 93 of file oem7_message_nodelet.cpp.
|
private |
Message Decoder plugin.
Definition at line 99 of file oem7_message_nodelet.cpp.
|
private |
Dispatches individual messages for handling.
Definition at line 87 of file oem7_message_nodelet.cpp.
|
private |
Protects nodelet internal state.
Definition at line 61 of file oem7_message_nodelet.cpp.
|
private |
Oem7 command service.
Definition at line 77 of file oem7_message_nodelet.cpp.
|
private |
Definition at line 83 of file oem7_message_nodelet.cpp.
|
private |
Publishes raw Oem7 messages.
Definition at line 65 of file oem7_message_nodelet.cpp.
|
private |
Delay after publishing each message; used to throttle output with static data sources.
Definition at line 63 of file oem7_message_nodelet.cpp.
|
private |
Publish all unknown messages to 'Oem7Raw'.
Definition at line 66 of file oem7_message_nodelet.cpp.
|
private |
Definition at line 75 of file oem7_message_nodelet.cpp.
|
private |
Set of raw messages to publish.
Definition at line 85 of file oem7_message_nodelet.cpp.
|
private |
Oem7 Receiver Interface plugin.
Definition at line 100 of file oem7_message_nodelet.cpp.
|
private |
Definition at line 82 of file oem7_message_nodelet.cpp.
|
private |
The latest response from Oem7 receiver.
Definition at line 74 of file oem7_message_nodelet.cpp.
|
private |
Response ready, signaled from response handler to Oem7 Cmd Handler.
Definition at line 72 of file oem7_message_nodelet.cpp.
|
private |
Response condition guard.
Definition at line 73 of file oem7_message_nodelet.cpp.
|
private |
One time service callback.
Definition at line 80 of file oem7_message_nodelet.cpp.
|
private |
Dedicated queue for command requests.
Definition at line 68 of file oem7_message_nodelet.cpp.
|
private |
1 thread servicing the command queue.
Definition at line 69 of file oem7_message_nodelet.cpp.
|
private |
Total number of logs received.
Definition at line 90 of file oem7_message_nodelet.cpp.
|
private |
number of messages received that could not be identified.
Definition at line 95 of file oem7_message_nodelet.cpp.