Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.cpp	(revision 10829)
@@ -26,4 +26,9 @@
     setPbExtType();
     setVtecType();
+    setSatAntType();
+    setGridDefType();
+    setTropoType();
+    setRegIonoType();
+    setMetaDataType();
     setCodeType();
 
@@ -912,5 +917,5 @@
     if (type.compare("5Q") == 0) {return CODETYPE_SBAS_L5_Q;}
   }
-  return RESERVED;
+  return CODETYPE_RESERVED;
 }
 
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.h
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.h	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_igs.h	(revision 10829)
@@ -114,6 +114,12 @@
   };
 
+  void setSatAntType() {};
+  void setGridDefType() {}
+  void setTropoType() {}
+  void setRegIonoType() {}
+  void setMetaDataType() {}
+
   void setCodeType() {
-    RESERVED = 99;
+    CODETYPE_RESERVED = 99;
 
     CODETYPE_GPS_L1_CA          =  0;
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.cpp	(revision 10829)
@@ -26,4 +26,9 @@
     setPbExtType();
     setVtecType();
+    setSatAntType();
+    setGridDefType();
+    setTropoType();
+    setRegIonoType();
+    setMetaDataType();
     setCodeType();
 
@@ -1370,5 +1375,5 @@
     if (type.compare("5X") == 0) {return CODETYPE_SBAS_L5_IQ;}
   }
-  return RESERVED;
+  return CODETYPE_RESERVED;
 }
 
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm.h	(revision 10829)
@@ -113,6 +113,12 @@
   };
 
+  void setSatAntType() {};
+  void setGridDefType() {}
+  void setTropoType() {}
+  void setRegIonoType() {}
+  void setMetaDataType() {}
+
   void setCodeType() {
-    RESERVED = 99;
+    CODETYPE_RESERVED = 99;
 
     CODETYPE_GPS_L1_CA          =  0;
@@ -129,9 +135,6 @@
     CODETYPE_GPS_L2_Z           = 11;
 
-
     CODETYPE_GPS_L5_I           = 14;
     CODETYPE_GPS_L5_Q           = 15;
-    CODETYPE_GPS_L5_IQ          = 16;
-    CODETYPE_GPS_L1C_D          = 17;
     CODETYPE_GPS_L1C_P          = 18;
     CODETYPE_GPS_L1C_DP         = 19;
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.cpp	(revision 10829)
@@ -26,4 +26,9 @@
   setPbExtType();
   setVtecType();
+  setSatAntType();
+  setGridDefType();
+  setTropoType();
+  setRegIonoType();
+  setMetaDataType();
   setCodeType();
 
@@ -90,5 +95,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(co->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(co->Sat[i].ID)
             T_GLONASS_IOD(co->Sat[i].IOD)
             break;
@@ -154,5 +159,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(co->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(co->Sat[i].ID)
             break;
         }
@@ -214,5 +219,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(co->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(co->Sat[i].ID)
             T_GLONASS_IOD(co->Sat[i].IOD)
             break;
@@ -287,5 +292,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(co->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(co->Sat[i].ID)
             break;
         }
@@ -327,5 +332,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(co->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(co->Sat[i].ID)
             break;
         }
@@ -378,5 +383,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(b->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(b->Sat[i].ID)
             break;
         }
@@ -435,5 +440,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            T_GLONASS_SATELLITE_ID(b->Sat[i].ID)
+            T_GNSS_SATELLITE_ID(b->Sat[i].ID)
             break;
         }
@@ -622,5 +627,5 @@
             break;
           case CLOCKORBIT_SATGLONASS:
-            G_GLONASS_SATELLITE_ID(id)
+            G_GNSS_SATELLITE_ID(id)
             break;
         }
@@ -713,5 +718,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -802,5 +807,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -867,5 +872,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -959,5 +964,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -1018,5 +1023,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -1076,5 +1081,5 @@
                 break;
               case CLOCKORBIT_SATGLONASS:
-                G_GLONASS_SATELLITE_ID(id)
+                G_GNSS_SATELLITE_ID(id)
                 break;
             }
@@ -1127,18 +1132,14 @@
       if (type == CODETYPE_GPS_L1_P)          return "1P";
       if (type == CODETYPE_GPS_L1_Z)          return "1W";
-
       if (type == CODETYPE_GPS_SEMI_CODELESS) return "2D";
       if (type == CODETYPE_GPS_L2_CA)         return "2C";
       if (type == CODETYPE_GPS_L2_P)          return "2P";
       if (type == CODETYPE_GPS_L2_Z)          return "2W";
-
       if (type == CODETYPE_GPS_L2C_M)         return "2S";
       if (type == CODETYPE_GPS_L2C_L)         return "2L";
       if (type == CODETYPE_GPS_L2C_ML)        return "2X";
-
       if (type == CODETYPE_GPS_L5_I)          return "5I";
       if (type == CODETYPE_GPS_L5_Q)          return "5Q";
       if (type == CODETYPE_GPS_L5_IQ)         return "5X";
-
       if (type == CODETYPE_GPS_L1C_D)         return "1S";
       if (type == CODETYPE_GPS_L1C_P)         return "1L";
@@ -1148,19 +1149,6 @@
       if (type == CODETYPE_GLONASS_L1_CA)     return "1C";
       if (type == CODETYPE_GLONASS_L1_P)      return "1P";
-
       if (type == CODETYPE_GLONASS_L2_CA)     return "2C";
       if (type == CODETYPE_GLONASS_L2_P)      return "2P";
-
-      if (type == CODETYPE_GLONASS_L1a_OCd)   return "4A";
-      if (type == CODETYPE_GLONASS_L1a_OCp)   return "4B";
-      if (type == CODETYPE_GLONASS_L1a_OCdp)  return "4X";
-
-      if (type == CODETYPE_GLONASS_L2a_CSI)   return "6A";
-      if (type == CODETYPE_GLONASS_L2a_OCp)   return "6B";
-      if (type == CODETYPE_GLONASS_L2a_CSIOCp)return "6X";
-
-      if (type == CODETYPE_GLONASS_L3_I)      return "3I";
-      if (type == CODETYPE_GLONASS_L3_Q)      return "3Q";
-      if (type == CODETYPE_GLONASS_L3_IQ)     return "3X";
   }
   else if (system == 'E') {
@@ -1170,17 +1158,13 @@
       if (type == CODETYPE_GALILEO_E1_BC)      return "1X";
       if (type == CODETYPE_GALILEO_E1_ABC)     return "1Z";
-
       if (type == CODETYPE_GALILEO_E5A_I)      return "5I";
       if (type == CODETYPE_GALILEO_E5A_Q)      return "5Q";
       if (type == CODETYPE_GALILEO_E5A_IQ)     return "5X";
-
       if (type == CODETYPE_GALILEO_E5B_I)      return "7I";
       if (type == CODETYPE_GALILEO_E5B_Q)      return "7Q";
       if (type == CODETYPE_GALILEO_E5B_IQ)     return "7X";
-
       if (type == CODETYPE_GALILEO_E5_I)       return "8I";
       if (type == CODETYPE_GALILEO_E5_Q)       return "8Q";
       if (type == CODETYPE_GALILEO_E5_IQ)      return "8X";
-
       if (type == CODETYPE_GALILEO_E6_A)       return "6A";
       if (type == CODETYPE_GALILEO_E6_B)       return "6B";
@@ -1191,28 +1175,16 @@
    else if (system == 'J') {
       if (type == CODETYPE_QZSS_L1_CA)         return "1C";
-      if (type == CODETYPE_QZSS_L1_S)          return "1Z";
-
       if (type == CODETYPE_QZSS_L1C_D)         return "1S";
       if (type == CODETYPE_QZSS_L1C_P)         return "1L";
-      if (type == CODETYPE_QZSS_L1C_DP)        return "1X";
-
       if (type == CODETYPE_QZSS_L2C_M)         return "2S";
       if (type == CODETYPE_QZSS_L2C_L)         return "2L";
       if (type == CODETYPE_QZSS_L2C_ML)        return "2X";
-
       if (type == CODETYPE_QZSS_L5_I)          return "5I";
       if (type == CODETYPE_QZSS_L5_Q)          return "5Q";
       if (type == CODETYPE_QZSS_L5_IQ)         return "5X";
-
       if (type == CODETYPE_QZSS_L6_D)          return "6S";
       if (type == CODETYPE_QZSS_L6_P)          return "6L";
       if (type == CODETYPE_QZSS_L6_DP)         return "6X";
-
-      if (type == CODETYPE_QZSS_L5_D)          return "5D";
-      if (type == CODETYPE_QZSS_L5_P)          return "5P";
-      if (type == CODETYPE_QZSS_L5_DP)         return "5Z";
-
-      if (type == CODETYPE_QZSS_L6_E)          return "6E";
-      if (type == CODETYPE_QZSS_L6_DE)         return "6Z";
+      if (type == CODETYPE_QZSS_L1C_DP)        return "1X";
   }
   else if (system == 'C') {
@@ -1220,28 +1192,19 @@
       if (type == CODETYPE_BDS_B1_Q)         return "2Q";
       if (type == CODETYPE_BDS_B1_IQ)        return "2X";
-
       if (type == CODETYPE_BDS_B3_I)         return "6I";
       if (type == CODETYPE_BDS_B3_Q)         return "6Q";
       if (type == CODETYPE_BDS_B3_IQ)        return "6X";
-
       if (type == CODETYPE_BDS_B2_I)         return "7I";
       if (type == CODETYPE_BDS_B2_Q)         return "7Q";
       if (type == CODETYPE_BDS_B2_IQ)        return "7X";
-
-      if (type == CODETYPE_BDS_B1a_D)        return "1D";
-      if (type == CODETYPE_BDS_B1a_P)        return "1P";
-      if (type == CODETYPE_BDS_B1a_DP)       return "1X";
-
+      if (type == CODETYPE_BDS_B1C_D)        return "1D";
+      if (type == CODETYPE_BDS_B1C_P)        return "1P";
+      if (type == CODETYPE_BDS_B1C_DP)       return "1X";
       if (type == CODETYPE_BDS_B2a_D)        return "5D";
       if (type == CODETYPE_BDS_B2a_P)        return "5P";
       if (type == CODETYPE_BDS_B2a_DP)       return "5X";
-  }
-  else if (system == 'S') {
-      if (type == CODETYPE_SBAS_L1_CA)       return "1C";
-
-      if (type == CODETYPE_SBAS_L5_I)        return "5I";
-      if (type == CODETYPE_SBAS_L5_Q)        return "5Q";
-      if (type == CODETYPE_SBAS_L5_IQ)       return "5X";
-  }
+      if (type == CODETYPE_BDS_B2b_D)        return "7D";
+  }
+
   return "";
 }
@@ -1254,5 +1217,4 @@
     if (type.compare("1P") == 0) {return CODETYPE_GPS_L1_P;}
     if (type.compare("1W") == 0) {return CODETYPE_GPS_L1_Z;}
-
     if (type.compare("2D") == 0) {return CODETYPE_GPS_SEMI_CODELESS;}
     if (type.compare("2C") == 0) {return CODETYPE_GPS_L2_CA;}
@@ -1262,9 +1224,7 @@
     if (type.compare("2L") == 0) {return CODETYPE_GPS_L2C_L;}
     if (type.compare("2X") == 0) {return CODETYPE_GPS_L2C_ML;}
-
     if (type.compare("5I") == 0) {return CODETYPE_GPS_L5_I;}
     if (type.compare("5Q") == 0) {return CODETYPE_GPS_L5_Q;}
     if (type.compare("5X") == 0) {return CODETYPE_GPS_L5_IQ;}
-
     if (type.compare("1S") == 0) {return CODETYPE_GPS_L1C_D;}
     if (type.compare("1L") == 0) {return CODETYPE_GPS_L1C_P;}
@@ -1276,16 +1236,4 @@
     if (type.compare("2C") == 0) {return CODETYPE_GLONASS_L2_CA;}
     if (type.compare("2P") == 0) {return CODETYPE_GLONASS_L2_P;}
-
-    if (type.compare("4A") == 0) {return CODETYPE_GLONASS_L1a_OCd;}
-    if (type.compare("4B") == 0) {return CODETYPE_GLONASS_L1a_OCp;}
-    if (type.compare("4X") == 0) {return CODETYPE_GLONASS_L1a_OCdp;}
-
-    if (type.compare("6A") == 0) {return CODETYPE_GLONASS_L2a_CSI;}
-    if (type.compare("6B") == 0) {return CODETYPE_GLONASS_L2a_OCp;}
-    if (type.compare("6X") == 0) {return CODETYPE_GLONASS_L2a_CSIOCp;}
-
-    if (type.compare("3I") == 0) {return CODETYPE_GLONASS_L3_I;}
-    if (type.compare("3Q") == 0) {return CODETYPE_GLONASS_L3_Q;}
-    if (type.compare("3X") == 0) {return CODETYPE_GLONASS_L3_IQ;}
   }
   else if (system == 'E') {
@@ -1295,17 +1243,13 @@
     if (type.compare("1X") == 0) {return CODETYPE_GALILEO_E1_BC;}
     if (type.compare("1Z") == 0) {return CODETYPE_GALILEO_E1_ABC;}
-
     if (type.compare("5I") == 0) {return CODETYPE_GALILEO_E5A_I;}
     if (type.compare("5Q") == 0) {return CODETYPE_GALILEO_E5A_Q;}
     if (type.compare("5X") == 0) {return CODETYPE_GALILEO_E5A_IQ;}
-
     if (type.compare("7I") == 0) {return CODETYPE_GALILEO_E5B_I;}
     if (type.compare("7Q") == 0) {return CODETYPE_GALILEO_E5B_Q;}
     if (type.compare("7X") == 0) {return CODETYPE_GALILEO_E5B_IQ;}
-
     if (type.compare("8I") == 0) {return CODETYPE_GALILEO_E5_I;}
     if (type.compare("8Q") == 0) {return CODETYPE_GALILEO_E5_Q;}
     if (type.compare("8X") == 0) {return CODETYPE_GALILEO_E5_IQ;}
-
     if (type.compare("6A") == 0) {return CODETYPE_GALILEO_E6_A;}
     if (type.compare("6B") == 0) {return CODETYPE_GALILEO_E6_B;}
@@ -1316,28 +1260,16 @@
    else if (system == 'J') {
      if (type.compare("1C") == 0) {return CODETYPE_QZSS_L1_CA;}
-     if (type.compare("1Z") == 0) {return CODETYPE_QZSS_L1_S;}
-
      if (type.compare("1S") == 0) {return CODETYPE_QZSS_L1C_D;}
      if (type.compare("1L") == 0) {return CODETYPE_QZSS_L1C_P;}
-     if (type.compare("1X") == 0) {return CODETYPE_QZSS_L1C_DP;}
-
      if (type.compare("2S") == 0) {return CODETYPE_QZSS_L2C_M;}
      if (type.compare("2L") == 0) {return CODETYPE_QZSS_L2C_L;}
      if (type.compare("2X") == 0) {return CODETYPE_QZSS_L2C_ML;}
-
      if (type.compare("5I") == 0) {return CODETYPE_QZSS_L5_I;}
      if (type.compare("5Q") == 0) {return CODETYPE_QZSS_L5_Q;}
      if (type.compare("5X") == 0) {return CODETYPE_QZSS_L5_IQ;}
-
      if (type.compare("6S") == 0) {return CODETYPE_QZSS_L6_D;}
      if (type.compare("6L") == 0) {return CODETYPE_QZSS_L6_P;}
      if (type.compare("6X") == 0) {return CODETYPE_QZSS_L6_DP;}
-
-     if (type.compare("5D") == 0) {return CODETYPE_QZSS_L5_D;}
-     if (type.compare("5P") == 0) {return CODETYPE_QZSS_L5_P;}
-     if (type.compare("5Z") == 0) {return CODETYPE_QZSS_L5_DP;}
-
-     if (type.compare("6E") == 0) {return CODETYPE_QZSS_L6_E;}
-     if (type.compare("6Z") == 0) {return CODETYPE_QZSS_L6_DE;}
+     if (type.compare("1X") == 0) {return CODETYPE_QZSS_L1C_DP;}
   }
   else if (system == 'C') {
@@ -1345,29 +1277,20 @@
     if (type.compare("2Q") == 0) {return CODETYPE_BDS_B1_Q;}
     if (type.compare("2X") == 0) {return CODETYPE_BDS_B1_IQ;}
-
     if (type.compare("6I") == 0) {return CODETYPE_BDS_B3_I;}
     if (type.compare("6Q") == 0) {return CODETYPE_BDS_B3_Q;}
     if (type.compare("6X") == 0) {return CODETYPE_BDS_B3_IQ;}
-
     if (type.compare("7I") == 0) {return CODETYPE_BDS_B2_I;}
     if (type.compare("7Q") == 0) {return CODETYPE_BDS_B2_Q;}
     if (type.compare("7X") == 0) {return CODETYPE_BDS_B2_IQ;}
-
-    if (type.compare("1D") == 0) {return CODETYPE_BDS_B1a_D;}
-    if (type.compare("1P") == 0) {return CODETYPE_BDS_B1a_P;}
-    if (type.compare("1X") == 0) {return CODETYPE_BDS_B1a_DP;}
-
+    if (type.compare("1D") == 0) {return CODETYPE_BDS_B1C_D;}
+    if (type.compare("1P") == 0) {return CODETYPE_BDS_B1C_P;}
+    if (type.compare("1X") == 0) {return CODETYPE_BDS_B1C_DP;}
     if (type.compare("5D") == 0) {return CODETYPE_BDS_B2a_D;}
     if (type.compare("5P") == 0) {return CODETYPE_BDS_B2a_P;}
     if (type.compare("5X") == 0) {return CODETYPE_BDS_B2a_DP;}
-  }
-  else if (system == 'S') {
-    if (type.compare("1C") == 0) {return CODETYPE_SBAS_L1_CA;}
-
-    if (type.compare("5I") == 0) {return CODETYPE_SBAS_L5_I;}
-    if (type.compare("5Q") == 0) {return CODETYPE_SBAS_L5_Q;}
-    if (type.compare("5X") == 0) {return CODETYPE_SBAS_L5_IQ;}
-  }
-  return RESERVED;
+    if (type.compare("7D") == 0) {return CODETYPE_BDS_B2b_D;}
+  }
+
+  return CODETYPE_RESERVED;
 }
 
Index: trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.h
===================================================================
--- trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.h	(revision 10828)
+++ trunk/BNC/src/RTCM3/clock_and_orbit/clock_orbit_rtcm_new.h	(revision 10829)
@@ -23,63 +23,48 @@
     COBBASE_GPS     = 1057;
     COBBASE_GLONASS =   41;
-    COBBASE_GALILEO = 1240;
-    COBBASE_QZSS    = 1246;
-    COBBASE_SBAS    = 1252;
-    COBBASE_BDS     = 1258;
-    COBBASE_NUM     =    6;
-    corbase << COBBASE_GPS
+    COBBASE_GALILEO =   62;
+    COBBASE_BDS     =   63;
+    COBBASE_QZSS    =   64;
+    COBBASE_NUM     =    5;
+    corbase
+        << COBBASE_GPS
         << COBBASE_GLONASS
         << COBBASE_GALILEO
-        << COBBASE_QZSS
-        << COBBASE_SBAS
-        << COBBASE_BDS;
-  };
-
-  void setCorOffset() {
-    COBOFS_ORBIT     = 0;
-    COBOFS_CLOCK     = 1;
-    COBOFS_CBIAS     = 2;
-    COBOFS_COMBINED  = 3;
-    COBOFS_URA       = 4;
-    COBOFS_HR        = 5;
-    COBOFS_NUM       = 6;
-  };
+        << COBBASE_BDS
+        << COBBASE_QZSS;
+  };
+
+  void setCorOffset() { };
 
   void setCoType() {
-    COTYPE_GPSORBIT        = COBBASE_GPS + COBOFS_ORBIT;
+    COTYPE_GPSORBIT        = COBBASE_GPS;
     COTYPE_GPSCLOCK        = COTYPE_GPSORBIT + 1;
-    COTYPE_GPSCOMBINED     = COBBASE_GPS + COBOFS_COMBINED;
+    COTYPE_GPSCOMBINED     = COTYPE_GPSCLOCK + 2;
     COTYPE_GPSURA          = COTYPE_GPSCOMBINED + 1;
     COTYPE_GPSHR           = COTYPE_GPSURA + 1;
 
-    COTYPE_GLONASSORBIT    = COBBASE_GLONASS + COBOFS_ORBIT;
+    COTYPE_GLONASSORBIT    = COBBASE_GLONASS;
     COTYPE_GLONASSCLOCK    = COTYPE_GLONASSORBIT + 1;
-    COTYPE_GLONASSCOMBINED = COBBASE_GLONASS + COBOFS_COMBINED;
+    COTYPE_GLONASSCOMBINED = COTYPE_GLONASSCLOCK + 2;
     COTYPE_GLONASSURA      = COTYPE_GLONASSCOMBINED + 1;
     COTYPE_GLONASSHR       = COTYPE_GLONASSURA + 1;
 
-    COTYPE_GALILEOORBIT    = COBBASE_GALILEO + COBOFS_ORBIT,
-    COTYPE_GALILEOCLOCK    = COTYPE_GALILEOORBIT + 1;
-    COTYPE_GALILEOCOMBINED = COBBASE_GALILEO + COBOFS_COMBINED;
-    COTYPE_GALILEOURA      = COTYPE_GALILEOCOMBINED + 1;
-    COTYPE_GALILEOHR       = COTYPE_GALILEOURA + 1;
-
-    COTYPE_QZSSORBIT       = COBBASE_QZSS + COBOFS_ORBIT;
-    COTYPE_QZSSCLOCK       = COTYPE_QZSSORBIT + 1;
-    COTYPE_QZSSCOMBINED    = COBBASE_QZSS + COBOFS_COMBINED,
-    COTYPE_QZSSURA         = COTYPE_QZSSCOMBINED + 1;
-    COTYPE_QZSSHR          = COTYPE_QZSSURA + 1;
-
-    COTYPE_SBASORBIT       = COBBASE_SBAS + COBOFS_ORBIT;
-    COTYPE_SBASCLOCK       = COTYPE_SBASORBIT + 1;
-    COTYPE_SBASCOMBINED    = COBBASE_SBAS + COBOFS_COMBINED;
-    COTYPE_SBASURA         = COTYPE_SBASCOMBINED + 1;
-    COTYPE_SBASHR          = COTYPE_SBASURA + 1;
-
-    COTYPE_BDSORBIT        = COBBASE_BDS + COBOFS_ORBIT;
-    COTYPE_BDSCLOCK        = COTYPE_BDSORBIT + 1;
-    COTYPE_BDSCOMBINED     = COBBASE_BDS + COBOFS_COMBINED,
-    COTYPE_BDSURA          = COTYPE_BDSCOMBINED + 1;
-    COTYPE_BDSHR           = COTYPE_BDSURA + 1;
+    COTYPE_GALILEOORBIT    = COBBASE_GALILEO;
+    COTYPE_GALILEOCLOCK    = COTYPE_GALILEOORBIT + 3;
+    COTYPE_GALILEOCOMBINED = COTYPE_GALILEOCLOCK + 6;
+    COTYPE_GALILEOURA      = COTYPE_GALILEOCOMBINED + 3;
+    COTYPE_GALILEOHR       = COTYPE_GALILEOURA + 3;
+
+    COTYPE_BDSORBIT        = COBBASE_BDS;
+    COTYPE_BDSCLOCK        = COTYPE_BDSORBIT + 3;
+    COTYPE_BDSCOMBINED     = COTYPE_BDSCLOCK + 6;
+    COTYPE_BDSURA          = COTYPE_BDSCOMBINED + 3;
+    COTYPE_BDSHR           = COTYPE_BDSURA + 3;
+
+    COTYPE_QZSSORBIT       = COBBASE_QZSS;
+    COTYPE_QZSSCLOCK       = COTYPE_QZSSORBIT + 3;
+    COTYPE_QZSSCOMBINED    = COTYPE_QZSSCLOCK + 6;
+    COTYPE_QZSSURA         = COTYPE_QZSSCOMBINED + 3;
+    COTYPE_QZSSHR          = COTYPE_QZSSURA + 3;
 
     COTYPE_AUTO = 0;
@@ -87,10 +72,9 @@
 
   void setCbType() {
-    CBTYPE_GPS     = COBBASE_GPS     + COBOFS_CBIAS;
-    CBTYPE_GLONASS = COBBASE_GLONASS + COBOFS_CBIAS;
-    CBTYPE_GALILEO = COBBASE_GALILEO + COBOFS_CBIAS;
-    CBTYPE_QZSS    = COBBASE_QZSS    + COBOFS_CBIAS;
-    CBTYPE_SBAS    = COBBASE_SBAS    + COBOFS_CBIAS;
-    CBTYPE_BDS     = COBBASE_BDS     + COBOFS_CBIAS;
+    CBTYPE_GPS     = COBBASE_GPS     + 2;
+    CBTYPE_GLONASS = COBBASE_GLONASS + 2;
+    CBTYPE_GALILEO = COBBASE_GALILEO + 6;
+    CBTYPE_QZSS    = COBBASE_QZSS    + 6;
+    CBTYPE_BDS     = COBBASE_BDS     + 6;
     CBTYPE_AUTO = 0;
   };
@@ -116,17 +100,45 @@
   };
 
-
-  void setVtecType() {
-      VTEC_BASE   = 1264;
-  };
+  void setVtecType() {};
+
+  void setSatAntType() {
+    SATANTTYPE_BASE    = 80;
+    SATANTTYPE_GPS     = SATANTTYPE_BASE;
+    SATANTTYPE_GLONASS = SATANTTYPE_GPS++;
+    SATANTTYPE_GALILEO = SATANTTYPE_GLONASS++;
+    SATANTTYPE_BDS     = SATANTTYPE_GALILEO++;
+    SATANTTYPE_QZSS    = SATANTTYPE_BDS++;
+    SATANTTYPE_AUTO    = 0;
+  };
+
+  void setGridDefType() {
+    GRID_BASE = 61;
+  }
+
+  void setTropoType() {
+    TROPOTYPE_BASE = 95;
+  }
+
+  void setRegIonoType() {
+    REGIONOTYPE_BASE    = 96;
+    REGIONOTYPE_GPS     = REGIONOTYPE_BASE;
+    REGIONOTYPE_GLONASS = REGIONOTYPE_GPS++;
+    REGIONOTYPE_GALILEO = REGIONOTYPE_GLONASS++;
+    REGIONOTYPE_BDS     = REGIONOTYPE_GALILEO++;
+    REGIONOTYPE_QZSS    = REGIONOTYPE_BDS++;
+    REGIONOTYPE_AUTO    = 0;
+  }
+
+  void setMetaDataType() {
+    METADATATYPE_BASE = 60;
+  }
 
   void setCodeType() {
-    RESERVED = 99;
-
+    CODETYPE_RESERVED = 99;
+    // GPS
     CODETYPE_GPS_L1_CA          =  0;
     CODETYPE_GPS_L1_P           =  1;
     CODETYPE_GPS_L1_Z           =  2;
-
-
+    // 3 + 4 RESERVED
     CODETYPE_GPS_L2_CA          =  5;
     CODETYPE_GPS_SEMI_CODELESS  =  6;
@@ -136,6 +148,5 @@
     CODETYPE_GPS_L2_P           = 10;
     CODETYPE_GPS_L2_Z           = 11;
-
-
+    //12 + 13 RESEVED
     CODETYPE_GPS_L5_I           = 14;
     CODETYPE_GPS_L5_Q           = 15;
@@ -144,19 +155,14 @@
     CODETYPE_GPS_L1C_P          = 18;
     CODETYPE_GPS_L1C_DP         = 19;
-
+    // > 19 RESEVED
+
+    // GLONASS
     CODETYPE_GLONASS_L1_CA      =  0;
     CODETYPE_GLONASS_L1_P       =  1;
     CODETYPE_GLONASS_L2_CA      =  2;
     CODETYPE_GLONASS_L2_P       =  3;
-    CODETYPE_GLONASS_L1a_OCd    =  4;
-    CODETYPE_GLONASS_L1a_OCp    =  5;
-    CODETYPE_GLONASS_L1a_OCdp   =  6;
-    CODETYPE_GLONASS_L2a_CSI    =  7;
-    CODETYPE_GLONASS_L2a_OCp    =  8;
-    CODETYPE_GLONASS_L2a_CSIOCp =  9;
-    CODETYPE_GLONASS_L3_I       = 10;
-    CODETYPE_GLONASS_L3_Q       = 11;
-    CODETYPE_GLONASS_L3_IQ      = 12;
-
+    // > 3 RESERVED
+
+    // Galileo
     CODETYPE_GALILEO_E1_A       =  0;
     CODETYPE_GALILEO_E1_B       =  1;
@@ -178,4 +184,5 @@
     CODETYPE_GALILEO_E6_BC      = 17;
     CODETYPE_GALILEO_E6_ABC     = 18;
+    // > 18 RESERVED
 
     CODETYPE_QZSS_L1_CA         =  0;
@@ -192,16 +199,7 @@
     CODETYPE_QZSS_L6_DP         = 11;
     CODETYPE_QZSS_L1C_DP        = 12;
-    CODETYPE_QZSS_L1_S          = 13;
-    CODETYPE_QZSS_L5_D          = 14;
-    CODETYPE_QZSS_L5_P          = 15;
-    CODETYPE_QZSS_L5_DP         = 16;
-    CODETYPE_QZSS_L6_E          = 17;
-    CODETYPE_QZSS_L6_DE         = 18;
-
-    CODETYPE_SBAS_L1_CA         =  0;
-    CODETYPE_SBAS_L5_I          =  1;
-    CODETYPE_SBAS_L5_Q          =  2;
-    CODETYPE_SBAS_L5_IQ         =  3;
-
+    // > 12 RESERVED
+
+    // BDS
     CODETYPE_BDS_B1_I           =  0;
     CODETYPE_BDS_B1_Q           =  1;
@@ -213,14 +211,12 @@
     CODETYPE_BDS_B2_Q           =  7;
     CODETYPE_BDS_B2_IQ          =  8;
-    CODETYPE_BDS_B1a_D          =  9;
-    CODETYPE_BDS_B1a_P          = 10;
-    CODETYPE_BDS_B1a_DP         = 11;
+    CODETYPE_BDS_B1C_D          =  9;
+    CODETYPE_BDS_B1C_P          = 10;
+    CODETYPE_BDS_B1C_DP         = 11;
     CODETYPE_BDS_B2a_D          = 12;
     CODETYPE_BDS_B2a_P          = 13;
     CODETYPE_BDS_B2a_DP         = 14;
-
-
-
-
+    CODETYPE_BDS_B2b_D          = 15;
+    // > 15 RESEVED
   }
 
