Index: /trunk/BNC/rinex/bncpostprocess.cpp
===================================================================
--- /trunk/BNC/rinex/bncpostprocess.cpp	(revision 4262)
+++ /trunk/BNC/rinex/bncpostprocess.cpp	(revision 4263)
@@ -126,4 +126,10 @@
     else if (type.indexOf("L1") == 0 && obs.L1C == 0.0) {
       obs.L1C = rnxSat.obs[iType];
+      if      (obs.slip_cnt_L1 < 0) {  // undefined value
+        obs.slip_cnt_L1 = 0;
+      }
+      else if (rnxSat.lli[iType] & 1) {
+        ++obs.slip_cnt_L1;
+      }
     }
     else if (type.indexOf("C2") == 0 && obs.C2  == 0.0) {
@@ -135,4 +141,10 @@
     else if (type.indexOf("L2") == 0 && obs.L2C == 0.0) {
       obs.L2C = rnxSat.obs[iType];
+      if      (obs.slip_cnt_L2 < 0) {  // undefined value
+        obs.slip_cnt_L2 = 0;
+      }
+      else if (rnxSat.lli[iType] & 1) {
+        ++obs.slip_cnt_L2;
+      }
     }
   }
Index: /trunk/BNC/rinex/reqcanalyze.cpp
===================================================================
--- /trunk/BNC/rinex/reqcanalyze.cpp	(revision 4262)
+++ /trunk/BNC/rinex/reqcanalyze.cpp	(revision 4263)
@@ -136,4 +136,7 @@
       }
 
+      QString prn = QString("%1%2").arg(obs.satSys)
+                                   .arg(obs.satNum, 2, 10, QChar('0'));
+      _satStat[prn].addObs(obs);
     }
 
@@ -142,2 +145,12 @@
   _log->flush();
 }
+
+//  
+////////////////////////////////////////////////////////////////////////////
+void t_reqcAnalyze::t_satStat::addObs(const t_obs& obs) {
+  if (currObs) {
+    delete prevObs;
+    prevObs = currObs;
+  }
+  currObs = new t_obs(obs);
+}
Index: /trunk/BNC/rinex/reqcanalyze.h
===================================================================
--- /trunk/BNC/rinex/reqcanalyze.h	(revision 4262)
+++ /trunk/BNC/rinex/reqcanalyze.h	(revision 4263)
@@ -29,4 +29,5 @@
 #include "rnxobsfile.h"
 #include "rnxnavfile.h"
+#include "RTCM/GPSDecoder.h"
 #include "RTCM3/ephemeris.h"
 
@@ -49,14 +50,29 @@
  
  private:
+  class t_satStat {
+   public:
+    t_satStat() {
+      currObs = 0;
+      prevObs = 0;
+    }
+    ~t_satStat() {
+      delete currObs;
+      delete prevObs;
+    }
+    void addObs(const t_obs& obs);
+    t_obs* currObs;
+    t_obs* prevObs;
+  };
+
   void analyzeFile(t_rnxObsFile* obsFile);
 
-  QString                _logFileName;
-  QFile*                 _logFile;
-  QTextStream*           _log;
-  QStringList            _obsFileNames;
-  QVector<t_rnxObsFile*> _rnxObsFiles;
-  QStringList            _navFileNames;
-  QVector<t_eph*>        _ephs;
-;
+  QString                  _logFileName;
+  QFile*                   _logFile;
+  QTextStream*             _log;
+  QStringList              _obsFileNames;
+  QVector<t_rnxObsFile*>   _rnxObsFiles;
+  QStringList              _navFileNames;
+  QVector<t_eph*>          _ephs;
+  QMap<QString, t_satStat> _satStat;
 };
 
