Arianna autonomous DAQ firmware
Dependencies: mbed SDFileSystemFilinfo AriSnProtocol NetServicesMin AriSnComm MODSERIAL PowerControlClkPatch DS1820OW
SnHeartbeatFrame.h
- Committer:
- uci1
- Date:
- 2012-10-16
- Revision:
- 22:f957c4f840ad
- Child:
- 40:1324da35afd4
File content as of revision 22:f957c4f840ad:
#ifndef SN_SnHeartbeatFrame #define SN_SnHeartbeatFrame #include <stdint.h> #include "SnCommWin.h" class SnHeartbeatFrame { public: // i/o version static const uint8_t kIOVers; // MUST BE INCREASED if any member var changes static const uint32_t kMaxSizeOf = 2u*sizeof(uint32_t); public: SnHeartbeatFrame() {} virtual ~SnHeartbeatFrame() {} static uint32_t SizeOf(const uint8_t rv) { return kMaxSizeOf; } template<class T> static SnCommWin::ECommWinResult WriteTo(T& x, const uint32_t time, const uint32_t num) { // expect 'x' to be a MODSERIAL or a char const* x = SnBitUtils::WriteTo(x, time); x = SnBitUtils::WriteTo(x, num); return SnCommWin::kOkMsgSent; } template<class T> static SnCommWin::ECommWinResult ReadFrom(T& b, uint32_t& time, uint32_t& num) { b = SnBitUtils::ReadFrom(b, time); b = SnBitUtils::ReadFrom(b, num); return SnCommWin::kOkWithMsg; } }; #endif // SN_SnHeartbeatFrame