Arianna autonomous DAQ firmware
Dependencies: mbed SDFileSystemFilinfo AriSnProtocol NetServicesMin AriSnComm MODSERIAL PowerControlClkPatch DS1820OW
SnCommWin.cpp
- Committer:
- uci1
- Date:
- 2012-06-30
- Revision:
- 0:664899e0b988
- Child:
- 1:e392595b4b76
File content as of revision 0:664899e0b988:
#include "SnCommWin.h" #include "SnConfigFrame.h" #include "SnSDUtils.h" /* bool SnCommWin::fgCommEst = false; bool SnCommWin::fgWinOpen = false; */ SnCommWin::ECommWinResult SnCommWin::SendData(SnConfigFrame& conf, SnEventFrame& evt, char* const evtBuf, char* const confBuf) { ECommWinResult res = kUndefFail; if (conf.IsSendingAllFiles()) { res = SnSDUtils::SendAllFiles(this, conf.IsDeletingFiles()); } else { if (conf.GetCommSendData()==0) { res = kOkNoMsg; } else { res = SendData(SnSDUtils::GetCurFileName(), conf, evt, evtBuf, confBuf, conf.GetCommSendData()); } } return res; } SnCommWin::ECommWinResult SnCommWin::SendData(const char* infn, const SnConfigFrame& curConf, SnEventFrame& evt, char* const evtBuf, char* const confBuf, const uint32_t nevts, const uint32_t firstEvt) { // nevts==0 ==> send all events // evtBuf should be 0 only if nevts==0 ECommWinResult res = kUndefFail; FILE* inf = fopen(infn, "rb"); if (inf!=0) { if (nevts==0) { res = SendData(inf); if (curConf.IsDeletingFiles() && res>=kOkMsgSent) { SnSDUtilsWhisperer::DeleteFile(inf, infn); } } else { if (evtBuf!=0) { res = SendConfAndEvents(inf, curConf, evt, evtBuf, confBuf, nevts, firstEvt); } } if (inf!=0) { fclose(inf); } } return res; }