Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 4273)
+++ trunk/MagicSoft/Mars/Changelog	(revision 4274)
@@ -19,4 +19,24 @@
                                                  -*-*- END OF LINE -*-*-
 
+ 2004/06/03: Martin Merck
+
+   * msignal/MArrivalTimeCam.h
+   * msignal/MArrivalTime.h
+   * msignal/MArrivalTimePix.h
+   * msignal/MExtractedSignalCam.h
+   * msignal/MExtractedSignalPix.h
+   * msignal/MExtractedSignalPINDiode.h
+   * msignal/MExtractedSignalBlindPixel.h
+     - Set version in ClassDef to 1 for the streamer.
+
+   * msignal/SignalLinkDef.h
+     - Added a + at the pragma for MExtractedSignalCam and 
+       MExtractedSignalPix for consistency.
+
+   * msjobs/MExtractSignal.[h,cc]
+     - Added methods to set the Extractor and TimeExtractor to be
+       used when extracting the signal.
+
+ 
  2004/06/03: Markus Gaug
 
@@ -934,5 +954,5 @@
 
    * mcalib/MHCalibrationRelTimeCam.[h,cc]
-     -  Getter and Setter for the reference pixel
+     - Getter and Setter for the reference pixel
 
    * mcalib/MCalibrate.cc
@@ -4224,5 +4244,5 @@
 
 
- 2004/02/12: Javier López
+ 2004/02/12: Javier L�ez
 
    * macros/pointspreadfunction.C
@@ -5919,5 +5939,5 @@
 
 
- 2004/01/09: Javier L¢pez
+ 2004/01/09: Javier Lpez
 
    * macros/bootcampstandardanalysis.C
Index: trunk/MagicSoft/Mars/mjobs/MJExtractSignal.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJExtractSignal.cc	(revision 4273)
+++ trunk/MagicSoft/Mars/mjobs/MJExtractSignal.cc	(revision 4274)
@@ -42,4 +42,5 @@
 #include "MTaskList.h"
 #include "MEvtLoop.h"
+#include "MPrint.h"
 
 #include "MHCamera.h"
@@ -59,4 +60,9 @@
 #include "MWriteRootFile.h"
 
+#include "MExtractSlidingWindow.h"
+#include "MExtractor.h"
+#include "MExtractTime.h"
+#include "MExtractTimeFastSpline.h"
+
 #include "MJExtractSignal.h"
 #include "MStatusDisplay.h"
@@ -176,7 +182,8 @@
   static_cast<MRead&>(read).AddFiles(*fRuns);
   
-  MGeomApply      apply; // Only necessary to craete geometry
-  MBadPixelsMerge merge(&fBadPixels);
-  MExtractSignal  extract;
+  MGeomApply               apply; // Only necessary to craete geometry
+  MBadPixelsMerge          merge(&fBadPixels);
+  MExtractTimeFastSpline   exttime;
+  MExtractSlidingWindow    extcharge; // Only for the cosmics filter
   
   MHCamEvent evt("ExtSignal");
@@ -186,4 +193,5 @@
   MWriteRootFile write(GetOutputFileD(), "RECREATE", fRuns->GetRunsAsString(), 2);
   write.AddContainer("MExtractedSignalCam", "Events");
+  write.AddContainer("MArrivalTimeCam",     "Events");
   write.AddContainer("MTime",               "Events");
   write.AddContainer("MRawEvtHeader",       "Events");
@@ -195,5 +203,26 @@
   tlist.AddToList(&apply);
   tlist.AddToList(&merge);
-  tlist.AddToList(&extract);
+  
+  if (fTimeExtractor)
+    tlist.AddToList(fTimeExtractor);
+  else
+  {
+      *fLog << warn << GetDescriptor() 
+            << ": No extractor has been chosen, take default MExtractTimeFastSpline " << endl;
+      tlist.AddToList(&exttime);
+  }
+
+  if (fExtractor)
+    tlist.AddToList(fExtractor);
+  else
+  {
+      *fLog << warn << GetDescriptor() 
+            << ": No extractor has been chosen, take default MExtractSlidingWindow " << endl;
+      tlist.AddToList(&extcharge);
+  }
+
+//  MPrint print("MExtractedSignalCam");
+//  tlist.AddToList(&print);
+  
   if (TestBit(kEnableGraphicalOutput))
     tlist.AddToList(&fill);
Index: trunk/MagicSoft/Mars/mjobs/MJExtractSignal.h
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJExtractSignal.h	(revision 4273)
+++ trunk/MagicSoft/Mars/mjobs/MJExtractSignal.h	(revision 4274)
@@ -17,4 +17,6 @@
 class MCalibrationChargeCam;
 class MCalibrationQECam;
+class MExtractor;
+class MExtractTime;
 
 class MJExtractSignal : public MParContainer
@@ -24,4 +26,7 @@
 
     MRunIter *fRuns;
+    
+    MExtractor   *fExtractor;                  // Signal extractor
+    MExtractTime *fTimeExtractor;              // Arrival time extractor  
 
     MPedPhotCam   fPedPhotCam;
@@ -48,4 +53,6 @@
     const MBadPixelsCam &GetBadPixels()  const { return fBadPixels; }
 
+    void SetExtractor(MExtractor* ext)              { fExtractor = ext; }
+    void SetTimeExtractor(MExtractTime* ext)         { fTimeExtractor = ext; }
     void SetBadPixels(const MBadPixelsCam &bad) { bad.Copy(fBadPixels); }
 
Index: trunk/MagicSoft/Mars/msignal/MArrivalTime.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MArrivalTime.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MArrivalTime.h	(revision 4274)
@@ -46,5 +46,5 @@
     void DrawPixelContent(Int_t num) const;
 
-    ClassDef(MArrivalTime, 0)    // class for an event containing the arrival times
+//     ClassDef(MArrivalTime, 1)    // class for an event containing the arrival times
 };
 
Index: trunk/MagicSoft/Mars/msignal/MArrivalTimeCam.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MArrivalTimeCam.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MArrivalTimeCam.h	(revision 4274)
@@ -61,5 +61,5 @@
     void DrawPixelContent(Int_t num) const;
 
-    ClassDef(MArrivalTimeCam, 0)	// Storage Container for the ArrivalTime in the camera
+    ClassDef(MArrivalTimeCam, 1)	// Storage Container for the ArrivalTime in the camera
 };
 
Index: trunk/MagicSoft/Mars/msignal/MArrivalTimePix.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MArrivalTimePix.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MArrivalTimePix.h	(revision 4274)
@@ -41,5 +41,5 @@
     Bool_t IsValid() const;   
 
-    ClassDef(MArrivalTimePix, 0)	// Storage Container for ArrivalTime information of one pixel
+    ClassDef(MArrivalTimePix, 1)	// Storage Container for ArrivalTime information of one pixel
 };
 
Index: trunk/MagicSoft/Mars/msignal/MExtractedSignalBlindPixel.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractedSignalBlindPixel.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MExtractedSignalBlindPixel.h	(revision 4274)
@@ -57,5 +57,5 @@
   Float_t GetPedRmsErr() const { return fPedRmsErr; }
 
-  ClassDef(MExtractedSignalBlindPixel, 0)	// Storage Container for Extracted Signal of the blind pixel
+  ClassDef(MExtractedSignalBlindPixel, 1)	// Storage Container for Extracted Signal of the blind pixel
 };
 
Index: trunk/MagicSoft/Mars/msignal/MExtractedSignalCam.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractedSignalCam.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MExtractedSignalCam.h	(revision 4274)
@@ -65,5 +65,5 @@
     void DrawPixelContent(Int_t num) const;
 
-    ClassDef(MExtractedSignalCam, 0)	// Storage Container for extracted signals in the camera
+    ClassDef(MExtractedSignalCam, 1)	// Storage Container for extracted signals in the camera
 };
 
Index: trunk/MagicSoft/Mars/msignal/MExtractedSignalPINDiode.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractedSignalPINDiode.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MExtractedSignalPINDiode.h	(revision 4274)
@@ -47,5 +47,5 @@
     Bool_t IsValid() const;   
 
-    ClassDef(MExtractedSignalPINDiode, 0)	// Storage Container for Extracted Signal information of one pixel
+    ClassDef(MExtractedSignalPINDiode, 1)	// Storage Container for Extracted Signal information of one pixel
 };
 
Index: trunk/MagicSoft/Mars/msignal/MExtractedSignalPix.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractedSignalPix.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/MExtractedSignalPix.h	(revision 4274)
@@ -42,5 +42,5 @@
     Bool_t IsValid() const;   
 
-    ClassDef(MExtractedSignalPix, 0)	// Storage Container for Extracted Signal information of one pixel
+    ClassDef(MExtractedSignalPix, 1)	// Storage Container for Extracted Signal information of one pixel
 };
 
Index: trunk/MagicSoft/Mars/msignal/SignalLinkDef.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/SignalLinkDef.h	(revision 4273)
+++ trunk/MagicSoft/Mars/msignal/SignalLinkDef.h	(revision 4274)
@@ -25,6 +25,6 @@
 #pragma link C++ class MExtractTimeFastSpline+;
 #pragma link C++ class MExtractTimeHighestIntegral+;
-#pragma link C++ class MArrivalTimeCam;
-#pragma link C++ class MArrivalTimePix;
+#pragma link C++ class MArrivalTimeCam+;
+#pragma link C++ class MArrivalTimePix+;
 #pragma link C++ class MArrivalTime+;
 #pragma link C++ class MArrivalTimeCalc+;
