Index: trunk/MagicSoft/Cosy/devdrv/macs.cc
===================================================================
--- trunk/MagicSoft/Cosy/devdrv/macs.cc	(revision 2613)
+++ trunk/MagicSoft/Cosy/devdrv/macs.cc	(revision 2615)
@@ -4,5 +4,4 @@
 #include <sys/time.h>   // timeval->tv_sec
 
-#include "timer.h"
 #include "network.h"
 #include "MLogManip.h"
@@ -32,6 +31,6 @@
 Macs::Macs(const BYTE_t nodeid, const char *name, MLog &out)
     : NodeDrv(nodeid, name, out), fMacId(2*nodeid+1),
-    fPos(0), fPosTime(0.0), fPdoPos(0), fPdoTime(0.0),
-    fPosActive(0), fRpmActive(0), fStatusPdo3(0xff)
+    fPos(0), fPdoPos(0), fPosActive(0), fRpmActive(0),
+    fStatusPdo3(0xff)
 {
 //    fTimeout = new TTimer(this, 100); //, kFALSE); // 100ms, asynchronous
@@ -87,5 +86,5 @@
 //        lout << "Actual Position: " << dec << (signed long)val << endl;
         fPos = (LWORDS_t)val;
-        fPosTime.SetTimer(tv);
+        fPosTime.Set(*tv);
         return;
 /*
@@ -576,5 +575,5 @@
     fStatus = data[3];
 
-    fPdoTime.SetTimer(tv);
+    fPdoTime.Set(*tv);
 }
 
@@ -735,5 +734,5 @@
         return;
 
-    Timer time;
+    MTime time;
     time.Now();
 
@@ -811,24 +810,4 @@
 }
 
-double Macs::GetTime()
-{
-    return fPosTime.Now();
-}
-
-double Macs::GetMjd()
-{
-    return fPosTime.GetMjd();
-}
-
-double Macs::GetPdoTime()
-{
-    return fPdoTime.Now();
-}
-
-double Macs::GetPdoMjd()
-{
-    return fPdoTime.GetMjd();
-}
-
 /*   0x2000 0 rw Maximum positioning error     */
 /*          1 rw Negative Software Endswitch   */
Index: trunk/MagicSoft/Cosy/devdrv/macs.h
===================================================================
--- trunk/MagicSoft/Cosy/devdrv/macs.h	(revision 2613)
+++ trunk/MagicSoft/Cosy/devdrv/macs.h	(revision 2615)
@@ -3,5 +3,5 @@
 
 #include "nodedrv.h"
-#include "base/timer.h"
+#include "MTime.h"
 
 class Macs : public NodeDrv
@@ -16,10 +16,10 @@
 
     LWORDS_t fPos;
-    Timer    fPosTime;
+    MTime    fPosTime;
 
     LWORD_t  fRes;      // Encoder resolution
 
     LWORDS_t fPdoPos;
-    Timer    fPdoTime;
+    MTime    fPdoTime;
 
     BYTE_t   fPosActive;
@@ -106,10 +106,4 @@
     BYTE_t GetStatus() const { return fStatus; }
 
-    double GetTime();
-    double GetMjd();
-
-    double GetPdoTime();
-    double GetPdoMjd();
-
     LWORDS_t GetPdoPos() const { return fPdoPos; }
 
Index: trunk/MagicSoft/Cosy/devdrv/shaftencoder.cc
===================================================================
--- trunk/MagicSoft/Cosy/devdrv/shaftencoder.cc	(revision 2613)
+++ trunk/MagicSoft/Cosy/devdrv/shaftencoder.cc	(revision 2615)
@@ -1,5 +1,4 @@
 #include "shaftencoder.h"
 
-#include "base/timer.h"
 #include "network.h"
 
@@ -182,5 +181,5 @@
 
     fPos = pos;
-    fTime.SetTimer(tv);
+    fTime.Set(*tv);
     fPosHasChanged = true;
 }
@@ -198,5 +197,5 @@
 
     fPos=pos;
-    fTime.SetTimer(tv);
+    fTime.Set(*tv);
     fPosHasChanged=true;
 
@@ -234,11 +233,6 @@
     fTurn = turn;
 
-    fTime.SetTimer(tv);
+    fTime.Set(*tv);
     fPosHasChanged=true;
-}
-
-double ShaftEncoder::GetTime()
-{
-    return fTime.Now();
 }
 
Index: trunk/MagicSoft/Cosy/devdrv/shaftencoder.h
===================================================================
--- trunk/MagicSoft/Cosy/devdrv/shaftencoder.h	(revision 2613)
+++ trunk/MagicSoft/Cosy/devdrv/shaftencoder.h	(revision 2615)
@@ -2,6 +2,6 @@
 #define SHAFTENCODER_H
 
-#include "base/timer.h"
 #include "nodedrv.h"
+#include "MTime.h"
 
 class TGLabel;
@@ -24,5 +24,5 @@
     bool fPosHasChanged;  //!
 
-    Timer fTime;
+    MTime fTime;
 
     void HandlePDOType0(BYTE_t *data, timeval_t *tv);
@@ -54,5 +54,4 @@
     LWORD_t  GetPhysRes() { return fTicks; }
 
-    double GetTime();
     double GetMjd();
 
