Arianna autonomous DAQ firmware

Dependencies:   mbed SDFileSystemFilinfo AriSnProtocol NetServicesMin AriSnComm MODSERIAL PowerControlClkPatch DS1820OW

Revision:
21:ce51bb0ba4a5
Parent:
18:55f1581f2ee4
Child:
23:ccf39298f205
--- a/SnCommWin.h	Wed Oct 03 00:22:27 2012 +0000
+++ b/SnCommWin.h	Wed Oct 10 05:54:12 2012 +0000
@@ -3,6 +3,7 @@
 
 #include "mbed.h"
 #include <stdint.h>
+#include <string>
 
 #include "SnConfigFrame.h"
 class SnEventFrame;
@@ -27,7 +28,23 @@
         kOkWithMsg,     // successfully received message
         kOkWthMsgNoConf // successfully received message and it says to stick with the same config
     };
-        
+ 
+ private:
+    SnCommWin::ECommWinResult GetFilename(const uint32_t timeout,
+                                          char* const buf,
+                                          const uint32_t namelen);
+    SnCommWin::ECommWinResult GetLocalFile(std::string fname,
+                                           char* const buf,
+                                           const uint32_t bsize,
+                                           const uint32_t timeout);
+    int16_t                   LoopLocalDirBinFiles(const bool doRemove,
+                                                   const std::string& fname);
+    SnCommWin::ECommWinResult GetHeader(const uint32_t timeOut,
+                                        char* const buf,
+                                        const uint32_t bsize,
+                                        uint8_t& mcode,
+                                        uint32_t& mlen);
+
 
  protected:
     virtual int SendFileBlock(FILE* inf, 
@@ -44,6 +61,8 @@
                                             uint32_t nevts,
                                             const uint32_t timeout_clock);
     
+    // send and receive must not kick the watchdog, or a bad timeout
+    // could block a station forever!
     virtual int32_t ReceiveAll(char* const buf, const uint32_t mlen,
                                const uint32_t timeout_clock)=0;
     virtual int32_t SendAll(char* const data, const uint32_t length,
@@ -75,7 +94,8 @@
     virtual bool            CloseConn(const uint32_t timeout)=0;
     virtual uint32_t        GetConnectTimeout() const;
     virtual uint32_t        GetListenTimeout() const;
-    virtual ECommWinResult  WaitHandshake(const uint32_t timeout,
+    virtual ECommWinResult  WaitHandshake(const SnConfigFrame& conf,
+                                          const uint32_t timeout,
                                           char* const buf,
                                           const uint32_t bsize,
                                           uint8_t& hndShkCode);