Index: /trunk/BNC/src/combination/bnccomb.cpp
===================================================================
--- /trunk/BNC/src/combination/bnccomb.cpp	(revision 9528)
+++ /trunk/BNC/src/combination/bnccomb.cpp	(revision 9529)
@@ -355,25 +355,17 @@
 }
 
-// Process clock corrections
-////////////////////////////////////////////////////////////////////////////
-void bncComb::slotNewClkCorrections(QList<t_clkCorr> clkCorrections) {
+// Remember satllite code biases
+////////////////////////////////////////////////////////////////////////////
+void bncComb::slotNewCodeBiases(QList<t_satCodeBias> codeBiases) {
   QMutexLocker locker(&_mutex);
 
-  bncTime lastTime;
-
-  for (int ii = 0; ii < clkCorrections.size(); ii++) {
-    t_clkCorr& clkCorr = clkCorrections[ii];
-    QString    staID(clkCorr._staID.c_str());
-    QString    prn(clkCorr._prn.toInternalString().c_str());
-    char       sys = clkCorr._prn.system();
+  for (int ii = 0; ii < codeBiases.size(); ii++) {
+    t_satCodeBias& codeBias = codeBiases[ii];
+    QString    staID(codeBias._staID.c_str());
+    QString    prn(codeBias._prn.toInternalString().c_str());
+    char       sys = codeBias._prn.system();
 
     if (!_cmbSysPrn.contains(sys)){
       continue;
-    }
-
-    // Set the last time
-    // -----------------
-    if (lastTime.undef() || clkCorr._time > lastTime) {
-      lastTime = clkCorr._time;
     }
 
@@ -393,4 +385,49 @@
     }
 
+    // Store the correction
+    // --------------------
+    QMap<t_prn, t_satCodeBias>& storage = _satCodeBiases[acName];
+    storage[codeBias._prn] = codeBias;
+  }
+}
+
+// Process clock corrections
+////////////////////////////////////////////////////////////////////////////
+void bncComb::slotNewClkCorrections(QList<t_clkCorr> clkCorrections) {
+  QMutexLocker locker(&_mutex);
+
+  bncTime lastTime;
+
+  for (int ii = 0; ii < clkCorrections.size(); ii++) {
+    t_clkCorr& clkCorr = clkCorrections[ii];
+    QString    staID(clkCorr._staID.c_str());
+    QString    prn(clkCorr._prn.toInternalString().c_str());
+    char       sys = clkCorr._prn.system();
+
+    if (!_cmbSysPrn.contains(sys)){
+      continue;
+    }
+
+    // Set the last time
+    // -----------------
+    if (lastTime.undef() || clkCorr._time > lastTime) {
+      lastTime = clkCorr._time;
+    }
+
+    // Find/Check the AC Name
+    // ----------------------
+    QString acName;
+    QListIterator<cmbAC*> icAC(_ACs);
+    while (icAC.hasNext()) {
+      cmbAC* AC = icAC.next();
+      if (AC->mountPoint == staID) {
+        acName = AC->name;
+        break;
+      }
+    }
+    if (acName.isEmpty()) {
+      continue;
+    }
+
     // Check Modulo Time
     // -----------------
@@ -431,4 +468,21 @@
       else {
         newCorr->_orbCorr = storage[clkCorr._prn];
+      }
+    }
+
+    // Check satellite code biases
+    // ----------------------------
+    if (!_satCodeBiases.contains(acName)) {
+      delete newCorr;
+      continue;
+    }
+    else {
+      QMap<t_prn, t_satCodeBias>& storage = _satCodeBiases[acName];
+      if (!storage.contains(clkCorr._prn)) {
+        delete newCorr;
+        continue;
+      }
+      else {
+        newCorr->_satCodeBias = storage[clkCorr._prn];
       }
     }
Index: /trunk/BNC/src/combination/bnccomb.h
===================================================================
--- /trunk/BNC/src/combination/bnccomb.h	(revision 9528)
+++ /trunk/BNC/src/combination/bnccomb.h	(revision 9529)
@@ -26,4 +26,5 @@
   void slotNewOrbCorrections(QList<t_orbCorr> orbCorrections);
   void slotNewClkCorrections(QList<t_clkCorr> clkCorrections);
+  void slotNewCodeBiases(QList<t_satCodeBias> codeBiases);
 
  signals:
@@ -31,4 +32,5 @@
   void newOrbCorrections(QList<t_orbCorr>);
   void newClkCorrections(QList<t_clkCorr>);
+  void newCodeBiases(QList<t_satCodeBias>);
 
  private:
@@ -86,4 +88,5 @@
     t_orbCorr     _orbCorr;
     t_clkCorr     _clkCorr;
+    t_satCodeBias _satCodeBias;
     QString       _acName;
     double        _dClkResult;
@@ -117,29 +120,30 @@
   QVector<cmbCorr*>& corrs(char sys) {return _buffer[sys][_resTime].corrs;}
 
-  QMutex                                 _mutex;
-  QList<cmbAC*>                          _ACs;
-  bncTime                                _resTime;
-  QMap<char, QVector<cmbParam*>>         _params;
-  QMap<char, QMap<bncTime, cmbEpoch>>    _buffer;
-  bncRtnetDecoder*                       _rtnetDecoder;
-  QMap<char, SymmetricMatrix>            _QQ;
-  QByteArray                             _log;
-  bncAntex*                              _antex;
-  double                                 _MAXRES;
-  QMap<char, QString>                    _masterOrbitAC;
-  QMap<char, unsigned>                   _masterMissingEpochs;
-  e_method                               _method;
-  int                                    _cmbSampl;
-  QMap<QString, QMap<t_prn, t_orbCorr> > _orbCorrections;
-  bncEphUser                             _ephUser;
-  SsrCorr*                               _ssrCorr;
-  QMap<char, unsigned>                   _cmbSysPrn;
-  bool                                   _useGps;
-  bool                                   _useGlo;
-  bool                                   _useGal;
-  bool                                   _useBds;
-  bool                                   _useQzss;
-  bool                                   _useSbas;
-  bool                                   _useIrnss;
+  QMutex                                     _mutex;
+  QList<cmbAC*>                              _ACs;
+  bncTime                                    _resTime;
+  QMap<char, QVector<cmbParam*>>             _params;
+  QMap<char, QMap<bncTime, cmbEpoch>>        _buffer;
+  bncRtnetDecoder*                           _rtnetDecoder;
+  QMap<char, SymmetricMatrix>                _QQ;
+  QByteArray                                 _log;
+  bncAntex*                                  _antex;
+  double                                     _MAXRES;
+  QMap<char, QString>                        _masterOrbitAC;
+  QMap<char, unsigned>                       _masterMissingEpochs;
+  e_method                                   _method;
+  int                                        _cmbSampl;
+  QMap<QString, QMap<t_prn, t_orbCorr> >     _orbCorrections;
+  QMap<QString, QMap<t_prn, t_satCodeBias> > _satCodeBiases;
+  bncEphUser                                 _ephUser;
+  SsrCorr*                                   _ssrCorr;
+  QMap<char, unsigned>                       _cmbSysPrn;
+  bool                                       _useGps;
+  bool                                       _useGlo;
+  bool                                       _useGal;
+  bool                                       _useBds;
+  bool                                       _useQzss;
+  bool                                       _useSbas;
+  bool                                       _useIrnss;
 };
 
