Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 7427)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 7428)
@@ -18,4 +18,11 @@
 
                                                  -*-*- END OF LINE -*-*-
+ 2005/11/25 Thomas Bretz
+
+   * datacenter/macros/fillsignal.C:
+     - added filling of PulsePos used for seeting the extractor window
+
+
+
  2005/11/25 Daniela Dorner
 
Index: /trunk/MagicSoft/Mars/datacenter/macros/fillsignal.C
===================================================================
--- /trunk/MagicSoft/Mars/datacenter/macros/fillsignal.C	(revision 7427)
+++ /trunk/MagicSoft/Mars/datacenter/macros/fillsignal.C	(revision 7428)
@@ -65,4 +65,7 @@
 #include "MHCamera.h"
 
+#include "MCalibrationPulseTimeCam.h"
+#include "MCalibrationPix.h"
+
 using namespace std;
 
@@ -76,6 +79,20 @@
     }
 
-    MStatusArray *arr = (MStatusArray*)file.Get("MStatusDisplay");
-    if (!arr)
+    Float_t meanextpul = -1;
+    Float_t rmsextpul  = -1;
+
+    MCalibrationPulseTimeCam *pt;
+    file.GetObject("MCalibrationPulseTimeCam", pt);
+    if (pt)
+    {
+        meanextpul = pt->GetAverageArea(0).GetHiGainMean();
+        rmsextpul  = pt->GetAverageArea(0).GetHiGainRms();
+
+        meanextpul = TMath::Nint(meanextpul*100)/100.;
+        rmsextpul  = TMath::Nint(rmsextpul*100)/100.;
+    }
+
+    MStatusArray arr;
+    if (arr.Read()<=0)
     {
         cout << "ERROR - Reading of MStatusDisplay failed." << endl;
@@ -83,5 +100,5 @@
     }
 
-    MHCamera *cam = (MHCamera*)arr->FindObjectInCanvas("PedRMS;avg", "MHCamera", "PedRMS");
+    MHCamera *cam = (MHCamera*)arr.FindObjectInCanvas("PedRMS;avg", "MHCamera", "PedRMS");
     if (!cam)
     {
@@ -90,5 +107,5 @@
     }
 
-    MHCamera *pul = (MHCamera*)arr->FindObjectInCanvas("PulsePos;avg", "MHCamera", "PulsePos");
+    MHCamera *pul = (MHCamera*)arr.FindObjectInCanvas("PulsePos;avg", "MHCamera", "PulsePos");
     if (!pul)
     {
@@ -119,5 +136,5 @@
     meanrmso = TMath::Nint(meanrmso*100)/100.;
 
-    cam = (MHCamera*)arr->FindObjectInCanvas("Interp'd;avg", "MHCamera", "Interp'd");
+    cam = (MHCamera*)arr.FindObjectInCanvas("Interp'd;avg", "MHCamera", "Interp'd");
     if (!cam)
     {
@@ -163,10 +180,18 @@
 
     Int_t seq = atoi(sequence.Data()+6);
-    TString meanrmsinner=Form("%6.2f", meanrmsi);
-    TString meanrmsouter=Form("%6.2f", meanrmso);
-    TString meansiginner=Form("%6.2f", meansigi);
-    TString meansigouter=Form("%6.2f", meansigo);
-    TString meanpulpos  =Form("%6.2f", meanpul);
-    TString rmspulpos   =Form("%6.2f", rmspul);
+    TString meanrmsinner =Form("%6.2f", meanrmsi);
+    TString meanrmsouter =Form("%6.2f", meanrmso);
+    TString meansiginner =Form("%6.2f", meansigi);
+    TString meansigouter =Form("%6.2f", meansigo);
+    TString meanpulpos   =Form("%6.2f", meanpul);
+    TString rmspulpos    =Form("%6.2f", rmspul);
+    TString meanextpulpos=Form("%6.2f", meanextpul);
+    TString rmsextpulpos =Form("%6.2f", rmsextpul);
+
+    if (meanextpul<0 && rmsextpul<0)
+    {
+        meanextpulpos = "NULL";
+        rmsextpulpos  = "NULL";
+    }
 
     cout << "Sequence #" << seq << endl;
@@ -175,15 +200,19 @@
     cout << "  Mean Signal  inner [phe] " << meansiginner << endl;
     cout << "  Mean Signal  outer [phe] " << meansigouter << endl;
-    cout << "  Mean PulsePos            " << meanpulpos   << endl;
-    cout << "  Rms  PulsePos            " << rmspulpos    << endl;
+    cout << "  Mean calibrated PulsePos " << meanpulpos   << endl;
+    cout << "  Rms  calibrated PulsePos " << rmspulpos    << endl;
+    cout << "  Mean extracted  PulsePos " << meanextpulpos   << endl;
+    cout << "  Rms  extracted  PulsePos " << rmsextpulpos    << endl;
 
     TString query = Form("UPDATE Calibration SET "
-                         " fMeanPedRmsInner=%s, fMeanPedRmsOuter=%s, "
-                         " fMeanSignalInner=%s, fMeanSignalOuter=%s, "
-                         " fPulsePosMean=%s,    fPulsePosRms=%s      "
+                         " fMeanPedRmsInner=%s,   fMeanPedRmsOuter=%s, "
+                         " fMeanSignalInner=%s,   fMeanSignalOuter=%s, "
+                         " fPulsePosMean=%s,      fPulsePosRms=%s,     "
+                         " fPulsePosCheckMean=%s, fPulsePosCheckRms=%s "
                          " WHERE fSequenceFirst='%d' ",
-                         meanrmsinner.Data(), meanrmsouter.Data(),
-                         meansiginner.Data(), meansigouter.Data(),
-                         meanpulpos.Data(),   rmspulpos.Data(),
+                         meanrmsinner.Data(),  meanrmsouter.Data(),
+                         meansiginner.Data(),  meansigouter.Data(),
+                         meanpulpos.Data(),    rmspulpos.Data(),
+                         meanextpulpos.Data(), rmsextpulpos.Data(),
                          seq);
 
