Kojo / TrainStat
Committer:
takashikojo
Date:
Sun Jun 28 12:21:33 2015 +0000
Revision:
3:5720d24f4a4a
Parent:
2:58e7fabcba89
Child:
4:acfd6fbf9f9e
Weather, Train stat displayed on LED

Who changed what in which revision?

UserRevisionLine numberNew contents of line
takashikojo 0:a59f55690685 1 #include <mbed.h>
takashikojo 0:a59f55690685 2 #include <string>
takashikojo 0:a59f55690685 3 #include "TrainStat.h"
takashikojo 0:a59f55690685 4 #include "tokyoMetro.h"
takashikojo 1:26a0a9220f01 5 #include "yahooTrain.h"
takashikojo 0:a59f55690685 6
takashikojo 2:58e7fabcba89 7 #define ERR(x, ...) std::printf("[TrainStat : ERR]"x"\r\n", ##__VA_ARGS__);
takashikojo 2:58e7fabcba89 8
takashikojo 1:26a0a9220f01 9 TrainStat::TrainStat(enum infoSource s) {
takashikojo 1:26a0a9220f01 10 source = s ;
takashikojo 0:a59f55690685 11 TMetro_initLine() ;
takashikojo 1:26a0a9220f01 12 YahooT_initLine() ;
takashikojo 0:a59f55690685 13 } ;
takashikojo 0:a59f55690685 14
takashikojo 0:a59f55690685 15 TrainStat::~TrainStat(){ } ;
takashikojo 0:a59f55690685 16
takashikojo 2:58e7fabcba89 17 void TrainStat::setBuff(char *buff, int size)
takashikojo 2:58e7fabcba89 18 {
takashikojo 2:58e7fabcba89 19 recvBuff = buff ;
takashikojo 2:58e7fabcba89 20 recvSize = size ;
takashikojo 2:58e7fabcba89 21 }
takashikojo 2:58e7fabcba89 22
takashikojo 0:a59f55690685 23 bool TrainStat::setLine(string line)
takashikojo 0:a59f55690685 24 {
takashikojo 0:a59f55690685 25 switch(source) {
takashikojo 0:a59f55690685 26 case YAHOO_TRAIN:
takashikojo 1:26a0a9220f01 27 YahooT_setLine(line) ;
takashikojo 1:26a0a9220f01 28 break ;
takashikojo 0:a59f55690685 29 case TOKYO_METRO:
takashikojo 0:a59f55690685 30 TMetro_setLine(line) ;
takashikojo 0:a59f55690685 31 break ;
takashikojo 0:a59f55690685 32 default:
takashikojo 0:a59f55690685 33 return false ;
takashikojo 0:a59f55690685 34 }
takashikojo 0:a59f55690685 35 return true ;
takashikojo 0:a59f55690685 36 }
takashikojo 2:58e7fabcba89 37
takashikojo 0:a59f55690685 38 bool TrainStat::getStat()
takashikojo 0:a59f55690685 39 {
takashikojo 2:58e7fabcba89 40 int ret ;
takashikojo 0:a59f55690685 41 switch(source) {
takashikojo 0:a59f55690685 42 case YAHOO_TRAIN:
takashikojo 2:58e7fabcba89 43 ret = YahooT_query("area/4/", recvBuff, recvSize) ;
takashikojo 3:5720d24f4a4a 44 if(ret)ret = YahooT_getStat(recvBuff) ;
takashikojo 2:58e7fabcba89 45 break ;
takashikojo 0:a59f55690685 46 case TOKYO_METRO:
takashikojo 2:58e7fabcba89 47 ret = TMetro_query("datapoints", "odpt:TrainInformation", recvBuff, recvSize) ;
takashikojo 3:5720d24f4a4a 48 if(ret)ret = TMetro_getStat(recvBuff) ;
takashikojo 2:58e7fabcba89 49 break ;
takashikojo 0:a59f55690685 50 default:
takashikojo 0:a59f55690685 51 return false ;
takashikojo 0:a59f55690685 52 }
takashikojo 2:58e7fabcba89 53
takashikojo 3:5720d24f4a4a 54 return ret ;
takashikojo 2:58e7fabcba89 55
takashikojo 0:a59f55690685 56 }