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.
TrainStat.cpp@2:58e7fabcba89, 2015-06-28 (annotated)
- Committer:
- takashikojo
- Date:
- Sun Jun 28 00:16:16 2015 +0000
- Revision:
- 2:58e7fabcba89
- Parent:
- 1:26a0a9220f01
- Child:
- 3:5720d24f4a4a
setBuff for outside buff
Who changed what in which revision?
| User | Revision | Line number | New 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 | 2:58e7fabcba89 | 44 | if(ret)YahooT_getStat(recvBuff) ; |
| takashikojo | 2:58e7fabcba89 | 45 | free(recvBuff) ; |
| takashikojo | 2:58e7fabcba89 | 46 | break ; |
| takashikojo | 0:a59f55690685 | 47 | case TOKYO_METRO: |
| takashikojo | 2:58e7fabcba89 | 48 | ret = TMetro_query("datapoints", "odpt:TrainInformation", recvBuff, recvSize) ; |
| takashikojo | 2:58e7fabcba89 | 49 | if(ret)TMetro_getStat(recvBuff) ; |
| takashikojo | 2:58e7fabcba89 | 50 | free(recvBuff) ; |
| takashikojo | 2:58e7fabcba89 | 51 | break ; |
| takashikojo | 0:a59f55690685 | 52 | default: |
| takashikojo | 2:58e7fabcba89 | 53 | free(recvBuff) ; |
| takashikojo | 0:a59f55690685 | 54 | return false ; |
| takashikojo | 0:a59f55690685 | 55 | } |
| takashikojo | 2:58e7fabcba89 | 56 | |
| takashikojo | 2:58e7fabcba89 | 57 | return true ; |
| takashikojo | 2:58e7fabcba89 | 58 | |
| takashikojo | 0:a59f55690685 | 59 | } |