Index: trunk/MagicSoft/Mars/mtemp/mifae/Changelog
===================================================================
--- trunk/MagicSoft/Mars/mtemp/mifae/Changelog	(revision 5998)
+++ trunk/MagicSoft/Mars/mtemp/mifae/Changelog	(revision 5999)
@@ -19,4 +19,8 @@
                                                  -*-*- END OF LINE -*-*-
 
+ 2005/01/25 Javier Rico
+    * macros/mmcCleaning.C
+     - added extractor spline and input arguments
+	
  2005/01/24 Javier Rico
     * programs/RFstd.root, programs/RFdist.root, programs/RFalpha.root
Index: trunk/MagicSoft/Mars/mtemp/mifae/macros/mmcCleaning.C
===================================================================
--- trunk/MagicSoft/Mars/mtemp/mifae/macros/mmcCleaning.C	(revision 5998)
+++ trunk/MagicSoft/Mars/mtemp/mifae/macros/mmcCleaning.C	(revision 5999)
@@ -6,5 +6,5 @@
 
 
-void mmcCleaning()
+void mmcCleaning(TString NoiseFilename, TString NoiseOutFilename)
 {
   //
@@ -15,19 +15,23 @@
 
   // ------------- user change -----------------
-  Char_t*  NonoiseFilename = "/local_disk/jrico/mc/Gammas/Gamma_zbin0_0_7_1000to1009_w0_nonoise.root";  // File to be used for the calibration (must be a camera file without added noise)
-  Char_t*  NoiseFilename   = "/local_disk/jrico/mc/Gammas/Gamma_zbin0_0_7_1000to1009_w0.root"; // File to be analyzed
+  Char_t*  NonoiseFilename = "/local_disk/jrico/mc/Gamma_zbin0_0_7_1000to1009_w0.root";
+  //  Char_t*  NoiseFilename   = "/mnt/wdflix/root_0.73mirror/wuerzburg/gammas/Gamma_zbin3_0_7_1160to1169_w0.root"; // File to be analyzed
 
-  Char_t* NoiseOutFilename   = "/local_disk/jrico/mc/Gammas/prueba.root";   // Output file name
+  //  Char_t* NoiseOutFilename   = "/mnt/users/jrico/prueba.root";   // Output file name
 
-  // Signal extractor
+  const Int_t wsize=2;
+  // Signal sigextract
   // (other extraction methods can be used)
-  MExtractFixedWindowPeakSearch sigextract;
-
+  MExtractor* sigextract = new MExtractTimeAndChargeSpline();
+  ((MExtractTimeAndChargeSpline*)sigextract)->SetTimeType(MExtractTimeAndChargeSpline::kHalfMaximum);
+  ((MExtractTimeAndChargeSpline*)sigextract)->SetChargeType(MExtractTimeAndChargeSpline::kIntegral);      
+  ((MExtractTimeAndChargeSpline*)sigextract)->SetRiseTime((Float_t)wsize*0.25); 
+  ((MExtractTimeAndChargeSpline*)sigextract)->SetFallTime((Float_t)wsize*0.75);
+  
   // Define FADC slices to be integrated in high and low gain:
-  sigextract.SetRange(1, 14, 2, 14);
-  sigextract.SetWindows(6,6,4);
+  sigextract->SetRange(1, 11, 2, 12);
 
   // Defines when to switch to low gain
-  sigextract.SetSaturationLimit(240);
+  sigextract->SetSaturationLimit(240);
 
   // ---------------------------------------------------------------------
@@ -82,5 +86,5 @@
   calib.SetCalibrationMode(MCalibrate::kFfactor);
 
-  MImgCleanStd clean(2.5,2.0);
+  MImgCleanStd clean(4.0,3.5);
   clean.SetCleanRings(1);
   //  clean.SetRemoveSingle(kFALSE);
@@ -97,10 +101,10 @@
   MMcCalibrationCalc mccalibcalc; 
   // Calculates calibration constants to convert from ADC counts to photons.
-  
+
   tlist.AddToList(&read);
   tlist.AddToList(&geom);
   tlist.AddToList(&pcopy);
   tlist.AddToList(&pointcalc);
-  tlist.AddToList(&sigextract);
+  tlist.AddToList(sigextract);
   tlist.AddToList(&mccalibupdate);
   tlist.AddToList(&calib);
@@ -118,5 +122,5 @@
 
   MEvtLoop evtloop;
-  evtloop.SetProgressBar(&bar);
+  //  evtloop.SetProgressBar(&bar);
   evtloop.SetParList(&plist);
 
@@ -133,6 +137,8 @@
   MIslands      isl;
   MArrivalTimeCam timecam;      
+  MTopology     topology;
   plist.AddToList(&isl);
   plist.AddToList(&timecam);
+  plist.AddToList(&topology);
 
   MArrivalTimeCalc2 timecalc;
@@ -143,4 +149,5 @@
   islclean.SetInputName("MIslands");
   islclean.SetMethod(1);
+  MTopologyCalc     topcalc;
 
   MReadMarsFile read2("Events");
@@ -152,7 +159,16 @@
   tlist.AddToListBefore(&timecalc,&mccalibupdate,"All");
   tlist.AddToListBefore(&islandcalc,&hcalc,"All");
-  tlist.AddToListBefore(&islclean,&hcalc,"All");
+  tlist.AddToListBefore(&topcalc,&hcalc,"All");
 
   MWriteRootFile write(NoiseOutFilename); // Writes output
+  write.AddContainer("MRawRunHeader", "RunHeaders");
+  write.AddContainer("MMcRunHeader",  "RunHeaders");
+  write.AddContainer("MSrcPosCam",    "RunHeaders");
+  write.AddContainer("MGeomCam",      "RunHeaders");
+  write.AddContainer("MMcConfigRunHeader",  "RunHeaders");
+  write.AddContainer("MMcCorsikaRunHeader", "RunHeaders");
+  write.AddContainer("MMcFadcHeader",  "RunHeaders");
+  write.AddContainer("MMcTrigHeader",  "RunHeaders");
+
   write.AddContainer("MRawRunHeader", "Events");
   write.AddContainer("MMcEvt",        "Events");
@@ -160,7 +176,11 @@
   write.AddContainer("MHillas",       "Events");
   write.AddContainer("MHillasSrc",    "Events");
+  write.AddContainer("MHillasExt",    "Events");
+  write.AddContainer("MConcentration","Events");
   write.AddContainer("MImagePar",     "Events");
   write.AddContainer("MNewImagePar",  "Events");
   write.AddContainer("MIslands",      "Events");
+  write.AddContainer("MPointingPos",  "Events");
+  write.AddContainer("MTopology",      "Events");
 
   tlist.RemoveFromList(&mccalibcalc);
