This program is porting rosserial_arduino for mbed http://www.ros.org/wiki/rosserial_arduino This program supported the revision of 169 of rosserial. This program contains an example.

Dependencies:   rosserial_mbed_lib mbed Servo

Committer:
nucho
Date:
Sun Oct 16 07:17:43 2011 +0000
Revision:
1:098e75fd5ad2
Parent:
0:06fc856e99ca
Child:
3:dff241b66f84
This program supported the revision of 143 of rosserial.
And the bug fix of receive of array data.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nucho 1:098e75fd5ad2 1 /*
nucho 1:098e75fd5ad2 2 * Software License Agreement (BSD License)
nucho 1:098e75fd5ad2 3 *
nucho 1:098e75fd5ad2 4 * Copyright (c) 2011, Willow Garage, Inc.
nucho 1:098e75fd5ad2 5 * All rights reserved.
nucho 1:098e75fd5ad2 6 *
nucho 1:098e75fd5ad2 7 * Redistribution and use in source and binary forms, with or without
nucho 1:098e75fd5ad2 8 * modification, are permitted provided that the following conditions
nucho 1:098e75fd5ad2 9 * are met:
nucho 0:06fc856e99ca 10 *
nucho 1:098e75fd5ad2 11 * * Redistributions of source code must retain the above copyright
nucho 1:098e75fd5ad2 12 * notice, this list of conditions and the following disclaimer.
nucho 1:098e75fd5ad2 13 * * Redistributions in binary form must reproduce the above
nucho 1:098e75fd5ad2 14 * copyright notice, this list of conditions and the following
nucho 1:098e75fd5ad2 15 * disclaimer in the documentation and/or other materials provided
nucho 1:098e75fd5ad2 16 * with the distribution.
nucho 1:098e75fd5ad2 17 * * Neither the name of Willow Garage, Inc. nor the names of its
nucho 1:098e75fd5ad2 18 * contributors may be used to endorse or promote prducts derived
nucho 1:098e75fd5ad2 19 * from this software without specific prior written permission.
nucho 1:098e75fd5ad2 20 *
nucho 1:098e75fd5ad2 21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
nucho 1:098e75fd5ad2 22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
nucho 1:098e75fd5ad2 23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
nucho 1:098e75fd5ad2 24 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
nucho 1:098e75fd5ad2 25 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
nucho 1:098e75fd5ad2 26 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
nucho 1:098e75fd5ad2 27 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
nucho 1:098e75fd5ad2 28 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
nucho 1:098e75fd5ad2 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
nucho 1:098e75fd5ad2 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
nucho 1:098e75fd5ad2 31 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
nucho 1:098e75fd5ad2 32 * POSSIBILITY OF SUCH DAMAGE.
nucho 0:06fc856e99ca 33 */
nucho 0:06fc856e99ca 34
nucho 0:06fc856e99ca 35 #ifndef PUBLISHER_H_
nucho 0:06fc856e99ca 36 #define PUBLISHER_H_
nucho 0:06fc856e99ca 37
nucho 0:06fc856e99ca 38 #include "node_output.h"
nucho 0:06fc856e99ca 39
nucho 0:06fc856e99ca 40 namespace ros{
nucho 1:098e75fd5ad2 41
nucho 0:06fc856e99ca 42 /* Generic Publisher */
nucho 0:06fc856e99ca 43 class Publisher
nucho 0:06fc856e99ca 44 {
nucho 0:06fc856e99ca 45 public:
nucho 0:06fc856e99ca 46 Publisher( const char * topic_name, Msg * msg ): topic_(topic_name), msg_(msg){};
nucho 0:06fc856e99ca 47 int publish( Msg * msg ){
nucho 0:06fc856e99ca 48 return no_->publish(id_, msg_);
nucho 0:06fc856e99ca 49 };
nucho 0:06fc856e99ca 50
nucho 0:06fc856e99ca 51 const char * topic_;
nucho 0:06fc856e99ca 52
nucho 0:06fc856e99ca 53 Msg *msg_;
nucho 1:098e75fd5ad2 54 short id_;
nucho 0:06fc856e99ca 55 NodeOutput_* no_;
nucho 1:098e75fd5ad2 56
nucho 0:06fc856e99ca 57 };
nucho 0:06fc856e99ca 58
nucho 0:06fc856e99ca 59 }
nucho 0:06fc856e99ca 60
nucho 0:06fc856e99ca 61
nucho 1:098e75fd5ad2 62 #endif