Index: trunk/BNC/bncconst.h
===================================================================
--- trunk/BNC/bncconst.h	(revision 4264)
+++ trunk/BNC/bncconst.h	(revision 4265)
@@ -29,15 +29,38 @@
 
 class t_CST {
-  public:
-    static const double c;
-    static const double freq1; // GPS and Galileo E1 
-    static const double freq2; // GPS only           
-    static const double freq5; // GPS and Galileo E5a
-    static const double lambda1;
-    static const double lambda2;
-    static const double lambda5;
-    static const double omega;
-    static const double aell;
-    static const double fInv;
+ public:
+  static double f1(char satSys, int slotNum) {
+    if      (satSys == 'G' || satSys == 'E') {
+      return freq1;
+    }
+    else if (satSys == 'R') {
+      return 1602000000.0 + 562500.0 * slotNum; 
+    }
+    else {
+      return 0.0;
+    }
+  }
+  static double f2(char satSys, int slotNum) {
+    if      (satSys == 'G') {
+      return freq2;
+    }
+    else if (satSys == 'R') {
+      return 1246000000.0 + 437500.0 * slotNum;
+    }
+    else {
+      return 0.0;
+    }
+  }
+
+  static const double c;
+  static const double freq1; // GPS and Galileo E1 
+  static const double freq2; // GPS only           
+  static const double freq5; // GPS and Galileo E5a
+  static const double lambda1;
+  static const double lambda2;
+  static const double lambda5;
+  static const double omega;
+  static const double aell;
+  static const double fInv;
 };
 
Index: trunk/BNC/bncpppclient.cpp
===================================================================
--- trunk/BNC/bncpppclient.cpp	(revision 4264)
+++ trunk/BNC/bncpppclient.cpp	(revision 4265)
@@ -194,6 +194,6 @@
   else if (obs.satSys == 'R') {
     if ( (obs.P1 || obs.C1) && (obs.P2 || obs.C2) && obs.l1() && obs.l2() ) {
-      double f1 = 1602000000.0 + 562500.0 * obs.slotNum; 
-      double f2 = 1246000000.0 + 437500.0 * obs.slotNum;
+      double f1 = t_CST::f1(obs.satSys, obs.slotNum); 
+      double f2 = t_CST::f1(obs.satSys, obs.slotNum); 
       double c1 =   f1 * f1 / (f1 * f1 - f2 * f2);
       double c2 = - f2 * f2 / (f1 * f1 - f2 * f2);
Index: trunk/BNC/rinex/reqcanalyze.cpp
===================================================================
--- trunk/BNC/rinex/reqcanalyze.cpp	(revision 4264)
+++ trunk/BNC/rinex/reqcanalyze.cpp	(revision 4265)
@@ -154,3 +154,7 @@
   }
   currObs = new t_obs(obs);
+
+  if (obs.p1() != 0.0 && obs.p2() != 0.0 && obs.l1() != 0.0 && obs.l2() != 0.0){
+
+  }
 }
