ros_serial for mbed updated to work with ROS Hydro. Library still needs to be debugged

Dependencies:   rosserial_hydro

Library and program still under development!

examples/ServiceServer.cpp

Committer:
akashvibhute
Date:
2015-02-15
Revision:
1:225298843679
Parent:
0:cb1dffdc7d05

File content as of revision 1:225298843679:

//#define COMPILE_SERVICESERVER_CODE_ROSSERIAL
#ifdef  COMPILE_SERVICESERVER_CODE_ROSSERIAL
/*
 * rosserial Service Server
 */

#include <ros.h>
#include <std_msgs/String.h>
#include <rosserial_arduino/Test.h>

ros::NodeHandle  nh;
using rosserial_arduino::Test;

int i;
void callback(const Test::Request & req, Test::Response & res) {
    if ((i++)%2)
        res.output = "hello";
    else
        res.output = "world";
}

ros::ServiceServer<Test::Request, Test::Response> server("test_srv",&callback);

std_msgs::String str_msg;
ros::Publisher chatter("chatter", &str_msg);

char hello[13] = "hello world!";

int main(void) {
    nh.initNode();
    nh.advertiseService(server);
    nh.advertise(chatter);


    while (1) {
        str_msg.data = hello;
        chatter.publish( &str_msg );
        nh.spinOnce();
        wait_ms(10);
    }
}
#endif