RTno is communicating library and framework which allows you to make your embedded device capable of communicating with RT-middleware world. RT-middleware is a platform software to realize Robotic system. In RTM, robots are developed by constructing robotics technologies\' elements (components) named RT-component. Therefore, the RTno helps you to create your own RT-component with your mbed and arduino. To know how to use your RTno device, visit here: http://ysuga.net/robot_e/rtm_e/rtc_e/1065?lang=en To know about RT-middleware and RT-component, visit http://www.openrtm.org
Dependents: RTnoV3_LED RTnoV3_Template RTnoV3_ADC RTnoV3_Timer ... more
BasicDataType.h@0:9fac71a0bff3, 2012-02-09 (annotated)
- Committer:
- ysuga
- Date:
- Thu Feb 09 02:33:10 2012 +0000
- Revision:
- 0:9fac71a0bff3
RTno Version 3: RTno is a software library and tool to connect embedded devices like arduino and mbed to RT-middleware world.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ysuga | 0:9fac71a0bff3 | 1 | /******************************************* |
ysuga | 0:9fac71a0bff3 | 2 | * BasicDataType.h |
ysuga | 0:9fac71a0bff3 | 3 | * @author Yuki Suga |
ysuga | 0:9fac71a0bff3 | 4 | * @copyright Yuki Suga (ysuga.net) Nov, 10th, 2010. |
ysuga | 0:9fac71a0bff3 | 5 | * @license LGPLv3 |
ysuga | 0:9fac71a0bff3 | 6 | *****************************************/ |
ysuga | 0:9fac71a0bff3 | 7 | |
ysuga | 0:9fac71a0bff3 | 8 | #ifndef BASIC_DATA_TYPE_HEADER_INCLUDED |
ysuga | 0:9fac71a0bff3 | 9 | #define BASIC_DATA_TYPE_HEADER_INCLUDED |
ysuga | 0:9fac71a0bff3 | 10 | |
ysuga | 0:9fac71a0bff3 | 11 | #include <stdint.h> |
ysuga | 0:9fac71a0bff3 | 12 | #include "Sequence.h" |
ysuga | 0:9fac71a0bff3 | 13 | |
ysuga | 0:9fac71a0bff3 | 14 | #pragma pack(1) |
ysuga | 0:9fac71a0bff3 | 15 | struct TimedBoolean { |
ysuga | 0:9fac71a0bff3 | 16 | static const char typeCode = 'b'; |
ysuga | 0:9fac71a0bff3 | 17 | char data; |
ysuga | 0:9fac71a0bff3 | 18 | }; |
ysuga | 0:9fac71a0bff3 | 19 | |
ysuga | 0:9fac71a0bff3 | 20 | struct TimedChar { |
ysuga | 0:9fac71a0bff3 | 21 | static const char typeCode = 'c'; |
ysuga | 0:9fac71a0bff3 | 22 | char data; |
ysuga | 0:9fac71a0bff3 | 23 | }; |
ysuga | 0:9fac71a0bff3 | 24 | |
ysuga | 0:9fac71a0bff3 | 25 | struct TimedOctet { |
ysuga | 0:9fac71a0bff3 | 26 | static const char typeCode = 'o'; |
ysuga | 0:9fac71a0bff3 | 27 | int8_t data; |
ysuga | 0:9fac71a0bff3 | 28 | }; |
ysuga | 0:9fac71a0bff3 | 29 | |
ysuga | 0:9fac71a0bff3 | 30 | struct TimedShort { |
ysuga | 0:9fac71a0bff3 | 31 | static const char typeCode = 's'; |
ysuga | 0:9fac71a0bff3 | 32 | int16_t data; |
ysuga | 0:9fac71a0bff3 | 33 | |
ysuga | 0:9fac71a0bff3 | 34 | }; |
ysuga | 0:9fac71a0bff3 | 35 | |
ysuga | 0:9fac71a0bff3 | 36 | struct TimedLong { |
ysuga | 0:9fac71a0bff3 | 37 | static const char typeCode = 'l'; |
ysuga | 0:9fac71a0bff3 | 38 | int32_t data; |
ysuga | 0:9fac71a0bff3 | 39 | }; |
ysuga | 0:9fac71a0bff3 | 40 | |
ysuga | 0:9fac71a0bff3 | 41 | struct TimedDouble { |
ysuga | 0:9fac71a0bff3 | 42 | static const char typeCode = 'd'; |
ysuga | 0:9fac71a0bff3 | 43 | double data; |
ysuga | 0:9fac71a0bff3 | 44 | }; |
ysuga | 0:9fac71a0bff3 | 45 | |
ysuga | 0:9fac71a0bff3 | 46 | struct TimedFloat { |
ysuga | 0:9fac71a0bff3 | 47 | static const char typeCode = 'f'; |
ysuga | 0:9fac71a0bff3 | 48 | float data; |
ysuga | 0:9fac71a0bff3 | 49 | }; |
ysuga | 0:9fac71a0bff3 | 50 | |
ysuga | 0:9fac71a0bff3 | 51 | |
ysuga | 0:9fac71a0bff3 | 52 | struct TimedOctetSeq { |
ysuga | 0:9fac71a0bff3 | 53 | static const char typeCode = 'O'; |
ysuga | 0:9fac71a0bff3 | 54 | Sequence<int8_t> data; |
ysuga | 0:9fac71a0bff3 | 55 | }; |
ysuga | 0:9fac71a0bff3 | 56 | |
ysuga | 0:9fac71a0bff3 | 57 | struct TimedCharSeq { |
ysuga | 0:9fac71a0bff3 | 58 | static const char typeCode = 'C'; |
ysuga | 0:9fac71a0bff3 | 59 | Sequence<char> data; |
ysuga | 0:9fac71a0bff3 | 60 | }; |
ysuga | 0:9fac71a0bff3 | 61 | |
ysuga | 0:9fac71a0bff3 | 62 | struct TimedBooleanSeq { |
ysuga | 0:9fac71a0bff3 | 63 | static const char typeCode = 'B'; |
ysuga | 0:9fac71a0bff3 | 64 | Sequence<char> data; |
ysuga | 0:9fac71a0bff3 | 65 | }; |
ysuga | 0:9fac71a0bff3 | 66 | |
ysuga | 0:9fac71a0bff3 | 67 | struct TimedShortSeq { |
ysuga | 0:9fac71a0bff3 | 68 | static const char typeCode = 'S'; |
ysuga | 0:9fac71a0bff3 | 69 | Sequence<int16_t> data; |
ysuga | 0:9fac71a0bff3 | 70 | }; |
ysuga | 0:9fac71a0bff3 | 71 | |
ysuga | 0:9fac71a0bff3 | 72 | struct TimedLongSeq { |
ysuga | 0:9fac71a0bff3 | 73 | static const char typeCode = 'L'; |
ysuga | 0:9fac71a0bff3 | 74 | Sequence<int32_t> data; |
ysuga | 0:9fac71a0bff3 | 75 | }; |
ysuga | 0:9fac71a0bff3 | 76 | |
ysuga | 0:9fac71a0bff3 | 77 | struct TimedFloatSeq { |
ysuga | 0:9fac71a0bff3 | 78 | static const char typeCode = 'F'; |
ysuga | 0:9fac71a0bff3 | 79 | Sequence<float> data; |
ysuga | 0:9fac71a0bff3 | 80 | }; |
ysuga | 0:9fac71a0bff3 | 81 | |
ysuga | 0:9fac71a0bff3 | 82 | struct TimedDoubleSeq { |
ysuga | 0:9fac71a0bff3 | 83 | static const char typeCode = 'D'; |
ysuga | 0:9fac71a0bff3 | 84 | Sequence<double> data; |
ysuga | 0:9fac71a0bff3 | 85 | }; |
ysuga | 0:9fac71a0bff3 | 86 | |
ysuga | 0:9fac71a0bff3 | 87 | |
ysuga | 0:9fac71a0bff3 | 88 | #endif |