Index: /trunk/BNC/src/rinex/reqcanalyze.cpp
===================================================================
--- /trunk/BNC/src/rinex/reqcanalyze.cpp	(revision 6295)
+++ /trunk/BNC/src/rinex/reqcanalyze.cpp	(revision 6296)
@@ -141,4 +141,5 @@
   // --------------------
   try {
+    QMap<QString, bncTime> lastObsTime; 
     bool firstEpo = true;
     while ( (_currEpo = obsFile->nextEpoch()) != 0) {
@@ -164,5 +165,5 @@
         t_rnxObsFile::setObsFromRnx(obsFile, _currEpo, rnxSat, satObs);
         t_qcSat& qcSat = qcEpo._qcSat[satObs._prn];
-        setQcObs(qcEpo._epoTime, xyzSta, satObs, qcSat);
+        setQcObs(qcEpo._epoTime, xyzSta, satObs, lastObsTime, qcSat);
         updateQcSat(qcSat, _qcFile._qcSatSum[satObs._prn]);
       }
@@ -263,5 +264,6 @@
 ////////////////////////////////////////////////////////////////////////////
 void t_reqcAnalyze::setQcObs(const bncTime& epoTime, const ColumnVector& xyzSta, 
-                             const t_satObs& satObs, t_qcSat& qcSat) {
+                             const t_satObs& satObs, QMap<QString, bncTime>& lastObsTime,
+                             t_qcSat& qcSat) {
 
   t_eph* eph = 0;
@@ -305,11 +307,12 @@
     // Check Gaps
     // ----------
-    if (qcFrq._lastObsTime.valid()) {
-      double dt = epoTime - qcFrq._lastObsTime;
+    QString key = QString(satObs._prn.toString().c_str()) + qcFrq._rnxType2ch;
+    if (lastObsTime[key].valid()) {
+      double dt = epoTime - lastObsTime[key];
       if (dt > 1.5 * _qcFile._interval) {
         qcFrq._gap = true;
       }
     }
-    qcFrq._lastObsTime = epoTime;
+    lastObsTime[key] = epoTime;
 
     // Compute the Multipath Linear Combination
Index: /trunk/BNC/src/rinex/reqcanalyze.h
===================================================================
--- /trunk/BNC/src/rinex/reqcanalyze.h	(revision 6295)
+++ /trunk/BNC/src/rinex/reqcanalyze.h	(revision 6296)
@@ -79,5 +79,4 @@
     }
     QString _rnxType2ch;
-    bncTime _lastObsTime;
     bool    _phaseValid;
     bool    _codeValid;
@@ -160,5 +159,5 @@
 
   void   setQcObs(const bncTime& epoTime, const ColumnVector& xyzSta, 
-                  const t_satObs& satObs, t_qcSat& qcSat);
+                  const t_satObs& satObs, QMap<QString, bncTime>& lastObsTime, t_qcSat& qcSat);
 
   void   analyzeMultipath();
