Index: trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp
===================================================================
--- trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 6470)
+++ trunk/BNC/src/RTCM3/RTCM3coDecoder.cpp	(revision 6471)
@@ -249,5 +249,5 @@
       orbCorrections.push_back(orbCorr);
 
-      _IODs[orbCorr._prn.toString()] = _clkOrb.Sat[ii].IOD;
+      _IODs[orbCorr._prn] = _clkOrb.Sat[ii].IOD;
     }
 
@@ -267,6 +267,8 @@
       clkCorr._dotDotDClk = _clkOrb.Sat[ii].Clock.DeltaA2 / t_CST::c;
 
-      if (_IODs.contains(clkCorr._prn.toString())) {
-        clkCorr._iod = _IODs[clkCorr._prn.toString()];
+      _lastClkCorrections[clkCorr._prn] = clkCorr;
+
+      if (_IODs.contains(clkCorr._prn)) {
+        clkCorr._iod = _IODs[clkCorr._prn];
         clkCorrections.push_back(clkCorr);
       }
@@ -277,4 +279,16 @@
     if ( _clkOrb.messageType == COTYPE_GPSHR     ||
          _clkOrb.messageType == COTYPE_GLONASSHR ) {
+
+      t_prn prn(sysCh, _clkOrb.Sat[ii].ID);
+      if (_lastClkCorrections.contains(prn)) {
+        t_clkCorr clkCorr;
+        clkCorr        = _lastClkCorrections[prn];
+        clkCorr._time  = _lastTime;
+        clkCorr._dClk  +=_clkOrb.Sat[ii].hrclock / t_CST::c;
+        if (_IODs.contains(clkCorr._prn)) {
+          clkCorr._iod = _IODs[clkCorr._prn];
+          clkCorrections.push_back(clkCorr);
+        }
+      }
     }
   }
Index: trunk/BNC/src/RTCM3/RTCM3coDecoder.h
===================================================================
--- trunk/BNC/src/RTCM3/RTCM3coDecoder.h	(revision 6470)
+++ trunk/BNC/src/RTCM3/RTCM3coDecoder.h	(revision 6471)
@@ -66,7 +66,9 @@
   int            _providerID[3];
   bncTime        _lastTime;
-  QMap<std::string, unsigned short> _IODs;
-  QMap<bncTime, QList<t_orbCorr> >  _orbCorrections;
-  QMap<bncTime, QList<t_clkCorr> >  _clkCorrections;
+  QMap<t_prn, unsigned short>          _IODs;
+  QMap<bncTime, QList<t_orbCorr> >     _orbCorrections;
+  QMap<bncTime, QList<t_clkCorr> >     _clkCorrections;
+  QMap<t_prn, t_clkCorr>               _lastClkCorrections;
+  QMap<bncTime, QList<t_satCodeBias> > _codeBiases;
 };
 
