Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of ros_lib_kinetic by
roscpp_tutorials/TwoInts.h@2:9e5c5381d337, 2018-10-17 (annotated)
- Committer:
- WeberYang
- Date:
- Wed Oct 17 00:51:09 2018 +0000
- Revision:
- 2:9e5c5381d337
- Parent:
- 0:9e9b7db60fd5
change rate 38400->115200
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
garyservin | 0:9e9b7db60fd5 | 1 | #ifndef _ROS_SERVICE_TwoInts_h |
garyservin | 0:9e9b7db60fd5 | 2 | #define _ROS_SERVICE_TwoInts_h |
garyservin | 0:9e9b7db60fd5 | 3 | #include <stdint.h> |
garyservin | 0:9e9b7db60fd5 | 4 | #include <string.h> |
garyservin | 0:9e9b7db60fd5 | 5 | #include <stdlib.h> |
garyservin | 0:9e9b7db60fd5 | 6 | #include "ros/msg.h" |
garyservin | 0:9e9b7db60fd5 | 7 | |
garyservin | 0:9e9b7db60fd5 | 8 | namespace roscpp_tutorials |
garyservin | 0:9e9b7db60fd5 | 9 | { |
garyservin | 0:9e9b7db60fd5 | 10 | |
garyservin | 0:9e9b7db60fd5 | 11 | static const char TWOINTS[] = "roscpp_tutorials/TwoInts"; |
garyservin | 0:9e9b7db60fd5 | 12 | |
garyservin | 0:9e9b7db60fd5 | 13 | class TwoIntsRequest : public ros::Msg |
garyservin | 0:9e9b7db60fd5 | 14 | { |
garyservin | 0:9e9b7db60fd5 | 15 | public: |
garyservin | 0:9e9b7db60fd5 | 16 | typedef int64_t _a_type; |
garyservin | 0:9e9b7db60fd5 | 17 | _a_type a; |
garyservin | 0:9e9b7db60fd5 | 18 | typedef int64_t _b_type; |
garyservin | 0:9e9b7db60fd5 | 19 | _b_type b; |
garyservin | 0:9e9b7db60fd5 | 20 | |
garyservin | 0:9e9b7db60fd5 | 21 | TwoIntsRequest(): |
garyservin | 0:9e9b7db60fd5 | 22 | a(0), |
garyservin | 0:9e9b7db60fd5 | 23 | b(0) |
garyservin | 0:9e9b7db60fd5 | 24 | { |
garyservin | 0:9e9b7db60fd5 | 25 | } |
garyservin | 0:9e9b7db60fd5 | 26 | |
garyservin | 0:9e9b7db60fd5 | 27 | virtual int serialize(unsigned char *outbuffer) const |
garyservin | 0:9e9b7db60fd5 | 28 | { |
garyservin | 0:9e9b7db60fd5 | 29 | int offset = 0; |
garyservin | 0:9e9b7db60fd5 | 30 | union { |
garyservin | 0:9e9b7db60fd5 | 31 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 32 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 33 | } u_a; |
garyservin | 0:9e9b7db60fd5 | 34 | u_a.real = this->a; |
garyservin | 0:9e9b7db60fd5 | 35 | *(outbuffer + offset + 0) = (u_a.base >> (8 * 0)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 36 | *(outbuffer + offset + 1) = (u_a.base >> (8 * 1)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 37 | *(outbuffer + offset + 2) = (u_a.base >> (8 * 2)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 38 | *(outbuffer + offset + 3) = (u_a.base >> (8 * 3)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 39 | *(outbuffer + offset + 4) = (u_a.base >> (8 * 4)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 40 | *(outbuffer + offset + 5) = (u_a.base >> (8 * 5)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 41 | *(outbuffer + offset + 6) = (u_a.base >> (8 * 6)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 42 | *(outbuffer + offset + 7) = (u_a.base >> (8 * 7)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 43 | offset += sizeof(this->a); |
garyservin | 0:9e9b7db60fd5 | 44 | union { |
garyservin | 0:9e9b7db60fd5 | 45 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 46 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 47 | } u_b; |
garyservin | 0:9e9b7db60fd5 | 48 | u_b.real = this->b; |
garyservin | 0:9e9b7db60fd5 | 49 | *(outbuffer + offset + 0) = (u_b.base >> (8 * 0)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 50 | *(outbuffer + offset + 1) = (u_b.base >> (8 * 1)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 51 | *(outbuffer + offset + 2) = (u_b.base >> (8 * 2)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 52 | *(outbuffer + offset + 3) = (u_b.base >> (8 * 3)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 53 | *(outbuffer + offset + 4) = (u_b.base >> (8 * 4)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 54 | *(outbuffer + offset + 5) = (u_b.base >> (8 * 5)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 55 | *(outbuffer + offset + 6) = (u_b.base >> (8 * 6)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 56 | *(outbuffer + offset + 7) = (u_b.base >> (8 * 7)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 57 | offset += sizeof(this->b); |
garyservin | 0:9e9b7db60fd5 | 58 | return offset; |
garyservin | 0:9e9b7db60fd5 | 59 | } |
garyservin | 0:9e9b7db60fd5 | 60 | |
garyservin | 0:9e9b7db60fd5 | 61 | virtual int deserialize(unsigned char *inbuffer) |
garyservin | 0:9e9b7db60fd5 | 62 | { |
garyservin | 0:9e9b7db60fd5 | 63 | int offset = 0; |
garyservin | 0:9e9b7db60fd5 | 64 | union { |
garyservin | 0:9e9b7db60fd5 | 65 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 66 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 67 | } u_a; |
garyservin | 0:9e9b7db60fd5 | 68 | u_a.base = 0; |
garyservin | 0:9e9b7db60fd5 | 69 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); |
garyservin | 0:9e9b7db60fd5 | 70 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); |
garyservin | 0:9e9b7db60fd5 | 71 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); |
garyservin | 0:9e9b7db60fd5 | 72 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); |
garyservin | 0:9e9b7db60fd5 | 73 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); |
garyservin | 0:9e9b7db60fd5 | 74 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); |
garyservin | 0:9e9b7db60fd5 | 75 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); |
garyservin | 0:9e9b7db60fd5 | 76 | u_a.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); |
garyservin | 0:9e9b7db60fd5 | 77 | this->a = u_a.real; |
garyservin | 0:9e9b7db60fd5 | 78 | offset += sizeof(this->a); |
garyservin | 0:9e9b7db60fd5 | 79 | union { |
garyservin | 0:9e9b7db60fd5 | 80 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 81 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 82 | } u_b; |
garyservin | 0:9e9b7db60fd5 | 83 | u_b.base = 0; |
garyservin | 0:9e9b7db60fd5 | 84 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); |
garyservin | 0:9e9b7db60fd5 | 85 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); |
garyservin | 0:9e9b7db60fd5 | 86 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); |
garyservin | 0:9e9b7db60fd5 | 87 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); |
garyservin | 0:9e9b7db60fd5 | 88 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); |
garyservin | 0:9e9b7db60fd5 | 89 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); |
garyservin | 0:9e9b7db60fd5 | 90 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); |
garyservin | 0:9e9b7db60fd5 | 91 | u_b.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); |
garyservin | 0:9e9b7db60fd5 | 92 | this->b = u_b.real; |
garyservin | 0:9e9b7db60fd5 | 93 | offset += sizeof(this->b); |
garyservin | 0:9e9b7db60fd5 | 94 | return offset; |
garyservin | 0:9e9b7db60fd5 | 95 | } |
garyservin | 0:9e9b7db60fd5 | 96 | |
garyservin | 0:9e9b7db60fd5 | 97 | const char * getType(){ return TWOINTS; }; |
garyservin | 0:9e9b7db60fd5 | 98 | const char * getMD5(){ return "36d09b846be0b371c5f190354dd3153e"; }; |
garyservin | 0:9e9b7db60fd5 | 99 | |
garyservin | 0:9e9b7db60fd5 | 100 | }; |
garyservin | 0:9e9b7db60fd5 | 101 | |
garyservin | 0:9e9b7db60fd5 | 102 | class TwoIntsResponse : public ros::Msg |
garyservin | 0:9e9b7db60fd5 | 103 | { |
garyservin | 0:9e9b7db60fd5 | 104 | public: |
garyservin | 0:9e9b7db60fd5 | 105 | typedef int64_t _sum_type; |
garyservin | 0:9e9b7db60fd5 | 106 | _sum_type sum; |
garyservin | 0:9e9b7db60fd5 | 107 | |
garyservin | 0:9e9b7db60fd5 | 108 | TwoIntsResponse(): |
garyservin | 0:9e9b7db60fd5 | 109 | sum(0) |
garyservin | 0:9e9b7db60fd5 | 110 | { |
garyservin | 0:9e9b7db60fd5 | 111 | } |
garyservin | 0:9e9b7db60fd5 | 112 | |
garyservin | 0:9e9b7db60fd5 | 113 | virtual int serialize(unsigned char *outbuffer) const |
garyservin | 0:9e9b7db60fd5 | 114 | { |
garyservin | 0:9e9b7db60fd5 | 115 | int offset = 0; |
garyservin | 0:9e9b7db60fd5 | 116 | union { |
garyservin | 0:9e9b7db60fd5 | 117 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 118 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 119 | } u_sum; |
garyservin | 0:9e9b7db60fd5 | 120 | u_sum.real = this->sum; |
garyservin | 0:9e9b7db60fd5 | 121 | *(outbuffer + offset + 0) = (u_sum.base >> (8 * 0)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 122 | *(outbuffer + offset + 1) = (u_sum.base >> (8 * 1)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 123 | *(outbuffer + offset + 2) = (u_sum.base >> (8 * 2)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 124 | *(outbuffer + offset + 3) = (u_sum.base >> (8 * 3)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 125 | *(outbuffer + offset + 4) = (u_sum.base >> (8 * 4)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 126 | *(outbuffer + offset + 5) = (u_sum.base >> (8 * 5)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 127 | *(outbuffer + offset + 6) = (u_sum.base >> (8 * 6)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 128 | *(outbuffer + offset + 7) = (u_sum.base >> (8 * 7)) & 0xFF; |
garyservin | 0:9e9b7db60fd5 | 129 | offset += sizeof(this->sum); |
garyservin | 0:9e9b7db60fd5 | 130 | return offset; |
garyservin | 0:9e9b7db60fd5 | 131 | } |
garyservin | 0:9e9b7db60fd5 | 132 | |
garyservin | 0:9e9b7db60fd5 | 133 | virtual int deserialize(unsigned char *inbuffer) |
garyservin | 0:9e9b7db60fd5 | 134 | { |
garyservin | 0:9e9b7db60fd5 | 135 | int offset = 0; |
garyservin | 0:9e9b7db60fd5 | 136 | union { |
garyservin | 0:9e9b7db60fd5 | 137 | int64_t real; |
garyservin | 0:9e9b7db60fd5 | 138 | uint64_t base; |
garyservin | 0:9e9b7db60fd5 | 139 | } u_sum; |
garyservin | 0:9e9b7db60fd5 | 140 | u_sum.base = 0; |
garyservin | 0:9e9b7db60fd5 | 141 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 0))) << (8 * 0); |
garyservin | 0:9e9b7db60fd5 | 142 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 1))) << (8 * 1); |
garyservin | 0:9e9b7db60fd5 | 143 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 2))) << (8 * 2); |
garyservin | 0:9e9b7db60fd5 | 144 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 3))) << (8 * 3); |
garyservin | 0:9e9b7db60fd5 | 145 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 4))) << (8 * 4); |
garyservin | 0:9e9b7db60fd5 | 146 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 5))) << (8 * 5); |
garyservin | 0:9e9b7db60fd5 | 147 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 6))) << (8 * 6); |
garyservin | 0:9e9b7db60fd5 | 148 | u_sum.base |= ((uint64_t) (*(inbuffer + offset + 7))) << (8 * 7); |
garyservin | 0:9e9b7db60fd5 | 149 | this->sum = u_sum.real; |
garyservin | 0:9e9b7db60fd5 | 150 | offset += sizeof(this->sum); |
garyservin | 0:9e9b7db60fd5 | 151 | return offset; |
garyservin | 0:9e9b7db60fd5 | 152 | } |
garyservin | 0:9e9b7db60fd5 | 153 | |
garyservin | 0:9e9b7db60fd5 | 154 | const char * getType(){ return TWOINTS; }; |
garyservin | 0:9e9b7db60fd5 | 155 | const char * getMD5(){ return "b88405221c77b1878a3cbbfff53428d7"; }; |
garyservin | 0:9e9b7db60fd5 | 156 | |
garyservin | 0:9e9b7db60fd5 | 157 | }; |
garyservin | 0:9e9b7db60fd5 | 158 | |
garyservin | 0:9e9b7db60fd5 | 159 | class TwoInts { |
garyservin | 0:9e9b7db60fd5 | 160 | public: |
garyservin | 0:9e9b7db60fd5 | 161 | typedef TwoIntsRequest Request; |
garyservin | 0:9e9b7db60fd5 | 162 | typedef TwoIntsResponse Response; |
garyservin | 0:9e9b7db60fd5 | 163 | }; |
garyservin | 0:9e9b7db60fd5 | 164 | |
garyservin | 0:9e9b7db60fd5 | 165 | } |
garyservin | 0:9e9b7db60fd5 | 166 | #endif |