Index: /trunk/BNC/rnxobsfile.cpp
===================================================================
--- /trunk/BNC/rnxobsfile.cpp	(revision 3672)
+++ /trunk/BNC/rnxobsfile.cpp	(revision 3673)
@@ -131,4 +131,21 @@
 ////////////////////////////////////////////////////////////////////////////
 t_irc t_rnxObsFile::getEpoch() {
+  if (version() < 3.0) {
+    return getEpochV2();
+  }
+  else {
+    return getEpochV3();
+  }
+}
+
+// Retrieve single Epoch (RINEX Version 3)
+////////////////////////////////////////////////////////////////////////////
+t_irc t_rnxObsFile::getEpochV3() {
+  return failure; // TODO
+}
+
+// Retrieve single Epoch (RINEX Version 2)
+////////////////////////////////////////////////////////////////////////////
+t_irc t_rnxObsFile::getEpochV2() {
   while (_stream->status() == QTextStream::Ok && !_stream->atEnd()) {
     QString line = _stream->readLine();
@@ -136,4 +153,17 @@
       continue;
     }
+    QTextStream in(line.toAscii());
+    int    year, month, day, hour, min, flag;
+    double sec;
+    in >> year >> month >> day >> hour >> min >> sec >> flag;
+    if      (year <  80) {
+      year += 2000;
+    }
+    else if (year < 100) {
+      year += 1900;
+    }
+
+    int numSat;
+    readInt(line, 29, 3, numSat);
   }
   return success;
Index: /trunk/BNC/rnxobsfile.h
===================================================================
--- /trunk/BNC/rnxobsfile.h	(revision 3672)
+++ /trunk/BNC/rnxobsfile.h	(revision 3673)
@@ -60,7 +60,11 @@
   ~t_rnxObsFile();
 
+  float version() const {return _header.version();}
   t_irc getEpoch(); 
 
  private:
+  t_irc getEpochV2();
+  t_irc getEpochV3();
+
   t_rnxObsHeader _header;
   QFile*         _file;
