Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifdef ROS
00032 #include "simple_message/ping_handler.h"
00033 #include "simple_message/ping_message.h"
00034 #include "simple_message/log_wrapper.h"
00035 #endif
00036
00037 #ifdef MOTOPLUS
00038 #include "ping_handler.h"
00039 #include "ping_message.h"
00040 #include "log_wrapper.h"
00041 #endif
00042
00043
00044
00045 using namespace industrial::ping_message;
00046 using namespace industrial::simple_message;
00047
00048 namespace industrial
00049 {
00050 namespace ping_handler
00051 {
00052
00053
00054 bool PingHandler::init(industrial::smpl_msg_connection::SmplMsgConnection* connection)
00055 {
00056 return this->init(StandardMsgTypes::PING, connection);
00057 }
00058
00059 bool PingHandler::internalCB(industrial::simple_message::SimpleMessage & in)
00060 {
00061 bool rtn = false;
00062 PingMessage ping;
00063 SimpleMessage msg;
00064
00065 if (ping.init(in))
00066 {
00067 if (ping.toReply(msg, ReplyTypes::SUCCESS))
00068 {
00069 if(this->getConnection()->sendMsg(msg))
00070 {
00071 LOG_INFO("Ping return sent");
00072 rtn = true;
00073 }
00074 else
00075 {
00076 LOG_ERROR("Failed to send ping return");
00077 rtn = false;
00078 }
00079 }
00080 else
00081 {
00082 LOG_ERROR("Failed to generate ping reply message");
00083 rtn = false;
00084 }
00085 }
00086 else
00087 {
00088 LOG_ERROR("Failed to initialize ping message");
00089 rtn = false;
00090 }
00091
00092
00093 return rtn;
00094 }
00095
00096
00097
00098 }
00099 }
00100
00101
00102