Index: trunk/BNC/src/PPP/pppClient.cpp
===================================================================
--- trunk/BNC/src/PPP/pppClient.cpp	(revision 5777)
+++ trunk/BNC/src/PPP/pppClient.cpp	(revision 5778)
@@ -155,5 +155,5 @@
 // 
 //////////////////////////////////////////////////////////////////////////////
-t_irc t_pppClient::prepareObs(const vector<t_pppSatObs>& pppSatObs,
+t_irc t_pppClient::prepareObs(const vector<t_pppSatObs*>& pppSatObs,
                               vector<t_satObs*>& obsVector, bncTime& epoTime) {
   // Default 
@@ -169,7 +169,7 @@
   int numValidGPS = 0;
   for (unsigned ii = 0; ii < pppSatObs.size(); ii++) {
-    char system = pppSatObs[ii]._prn.system();
+    char system = pppSatObs[ii]->_prn.system();
     if (system == 'G' || (system == 'R' && OPT->useGlonass())) {
-      t_satObs* satObs = new t_satObs(pppSatObs[ii]);
+      t_satObs* satObs = new t_satObs(*pppSatObs[ii]);
       if (satObs->isValid()) {
         obsVector.push_back(satObs);
@@ -410,5 +410,5 @@
 // 
 //////////////////////////////////////////////////////////////////////////////
-void t_pppClient::processEpoch(const vector<t_pppSatObs>& pppSatObs, t_output* output) {
+void t_pppClient::processEpoch(const vector<t_pppSatObs*>& pppSatObs, t_output* output) {
 
   try {
Index: trunk/BNC/src/PPP/pppClient.h
===================================================================
--- trunk/BNC/src/PPP/pppClient.h	(revision 5777)
+++ trunk/BNC/src/PPP/pppClient.h	(revision 5778)
@@ -27,5 +27,5 @@
   void putClkCorrections(const std::vector<t_clkCorr>& corr); 
   void putBiases(const std::vector<t_satBiases>& biases);   
-  void processEpoch(const std::vector<t_pppSatObs>& pppSatObs, t_output* output);
+  void processEpoch(const std::vector<t_pppSatObs*>& pppSatObs, t_output* output);
 
   const t_ephPool* ephPool() const {return _ephPool;}
@@ -46,5 +46,5 @@
   void finish(t_irc irc);
   void clearObs();
-  t_irc prepareObs(const std::vector<t_pppSatObs>& pppSatObs,
+  t_irc prepareObs(const std::vector<t_pppSatObs*>& pppSatObs,
                    std::vector<t_satObs*>& obsVector, bncTime& epoTime);
   t_irc cmpModel(t_station* station, const ColumnVector& xyzc,
Index: trunk/BNC/src/PPP/pppThread.cpp
===================================================================
--- trunk/BNC/src/PPP/pppThread.cpp	(revision 5777)
+++ trunk/BNC/src/PPP/pppThread.cpp	(revision 5778)
@@ -167,7 +167,11 @@
   }
 
-  vector<t_pppSatObs> satObs;
-  t_output            output;
+  vector<t_pppSatObs*> satObs;
+  QListIterator<t_obs> it(obsList);
+  while (it.hasNext()) {
+    const t_obs& obs = it.next();
+  }
 
+  t_output output;
   _pppClient->processEpoch(satObs, &output);
 
