Index: /trunk/FACT++/src/smartfact.cc
===================================================================
--- /trunk/FACT++/src/smartfact.cc	(revision 14506)
+++ /trunk/FACT++/src/smartfact.cc	(revision 14507)
@@ -1378,8 +1378,8 @@
         fFtmControlState = d.GetQoS();
 
-        const float *crate = d.Ptr<float>(20); // Camera rate
+        const FTM::DimTriggerRates &dim = d.Ref<FTM::DimTriggerRates>();
 
         // New run started
-        if (*crate<0)
+        if (dim.fTriggerRate<0 || dim.fElapsedTime<=0)
         {
             fFtmControlTriggerRateTooLow = -1;
@@ -1391,14 +1391,14 @@
         // by the MCP. Hence, we get a warning. So we have to require
         // two consecutive low rates.
-        if (*crate<1)
+        if (dim.fTriggerRate<1)
             fFtmControlTriggerRateTooLow++;
         else
             fFtmControlTriggerRateTooLow=0;
 
-        const float *brates = crate + 1; // Board rate
-        const float *prates = brates+40; // Patch rate
+        const float *brates = dim.fBoardRate; // Board rate
+        const float *prates = dim.fPatchRate; // Patch rate
 
         // Store a history of the last 60 entries
-        fFtmControlTriggerRateHist.push_back(*crate);
+        fFtmControlTriggerRateHist.push_back(dim.fTriggerRate);
         if (fFtmControlTriggerRateHist.size()>300)
             fFtmControlTriggerRateHist.pop_front();
@@ -1416,5 +1416,5 @@
         out << setprecision(3);
         out << d.GetJavaDate() << '\n';
-        out << HTML::kWhite << '\t' << *crate << '\n';
+        out << HTML::kWhite << '\t' << dim.fTriggerRate << '\n';
 
         ofstream(fPath+"/trigger.data") << out.str();
