あらゆる型を全てchar型として取り出すことができるライブラリ

Committer:
ssaattww
Date:
Sat Feb 17 09:04:20 2018 +0000
Revision:
0:42fbedd468b9
????????????????char???????????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ssaattww 0:42fbedd468b9 1 #ifndef TTC_H
ssaattww 0:42fbedd468b9 2 #define TTC_H
ssaattww 0:42fbedd468b9 3
ssaattww 0:42fbedd468b9 4 #include "mbed.h"
ssaattww 0:42fbedd468b9 5
ssaattww 0:42fbedd468b9 6 template <typename T,int NUM>
ssaattww 0:42fbedd468b9 7 union TTC {
ssaattww 0:42fbedd468b9 8 public:
ssaattww 0:42fbedd468b9 9 T hiki[NUM];
ssaattww 0:42fbedd468b9 10 uint8_t u_out[];
ssaattww 0:42fbedd468b9 11 int i_out[];
ssaattww 0:42fbedd468b9 12 double d_out[];
ssaattww 0:42fbedd468b9 13
ssaattww 0:42fbedd468b9 14 TTC(T sansyo[]) {
ssaattww 0:42fbedd468b9 15 for (int j = 0; j < NUM; j++) {
ssaattww 0:42fbedd468b9 16 hiki[j] = sansyo[j];
ssaattww 0:42fbedd468b9 17 }
ssaattww 0:42fbedd468b9 18 }
ssaattww 0:42fbedd468b9 19 ~TTC(void) {
ssaattww 0:42fbedd468b9 20 }
ssaattww 0:42fbedd468b9 21 int c_size(void) {
ssaattww 0:42fbedd468b9 22 return sizeof(T)*NUM;
ssaattww 0:42fbedd468b9 23 }
ssaattww 0:42fbedd468b9 24 int i_size(void) {
ssaattww 0:42fbedd468b9 25 return sizeof(T)*NUM / sizeof(int);
ssaattww 0:42fbedd468b9 26 }
ssaattww 0:42fbedd468b9 27 int d_size(void) {
ssaattww 0:42fbedd468b9 28 return sizeof(T)*NUM / sizeof(double);
ssaattww 0:42fbedd468b9 29 }
ssaattww 0:42fbedd468b9 30 };
ssaattww 0:42fbedd468b9 31 #endif