Index: branches/BNC_LM/RTCM/GPSDecoder.h
===================================================================
--- branches/BNC_LM/RTCM/GPSDecoder.h	(revision 3570)
+++ branches/BNC_LM/RTCM/GPSDecoder.h	(revision 3573)
@@ -33,4 +33,5 @@
 
 #include "bncconst.h"
+#include "bncrinex.h"
 
 class t_obs {
@@ -119,9 +120,21 @@
 class GPSDecoder {
  public:
-  virtual t_irc Decode(char* buffer, int bufLen, std::vector<std::string>& errmsg) = 0;
+  GPSDecoder();
 
-  virtual ~GPSDecoder() {}
+  virtual ~GPSDecoder() {delete _rnx;}
+
+  virtual t_irc Decode(char* buffer, int bufLen, 
+                       std::vector<std::string>& errmsg) = 0;
+
 
   virtual int corrGPSEpochTime() const {return -1;}
+
+  void initRinex(const QByteArray& staID, const QUrl& mountPoint,
+                 const QByteArray& latitude, const QByteArray& longitude, 
+                 const QByteArray& nmea, const QByteArray& ntripVersion);
+
+  void dumpRinexEpoch(const t_obs& obs, const QByteArray& format);
+
+  void setRinexReconnectFlag(bool flag);
 
   struct t_antInfo {
@@ -145,7 +158,8 @@
 
   QList<t_obs>     _obsList;
-  QList<int>       _typeList;  // RTCM   message types
-  QStringList      _antType;   // RTCM   antenna descriptor
-  QList<t_antInfo> _antList;   // RTCM   antenna XYZ
+  QList<int>       _typeList;  // RTCM message types
+  QStringList      _antType;   // RTCM antenna descriptor
+  QList<t_antInfo> _antList;   // RTCM antenna XYZ
+  bncRinex*        _rnx;       // RINEX writer
 };
 
