Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 4251)
+++ trunk/MagicSoft/Mars/Changelog	(revision 4252)
@@ -18,4 +18,13 @@
 
                                                  -*-*- END OF LINE -*-*-
+
+ 2004/06/01: Abelardo Moralejo
+
+   * msignal/MExtractFixedWindowPeakSearch.[h,cc]
+     - Added variable fLowGainPeakShift and setter. It allows to shift
+       the integration window for low gain with respect to the one of
+       the high gain. By default its value is 0 (corresponding to a 
+       total delay of 15 slices) so that default behaviour of the
+       extractor is the same as before.
 
  2004/06/01: Markus Gaug
Index: trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.cc
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.cc	(revision 4251)
+++ trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.cc	(revision 4252)
@@ -55,4 +55,5 @@
 //   fLoGainWindowSize     = fgLoGainWindowSize     = 6
 //   fPeakSearchWindowSize = fgPeakSearchWindowSize = 4
+//   fLowGainPeakShift     = fgLowGainPeakShift     = 0
 //
 //////////////////////////////////////////////////////////////////////////////
@@ -83,4 +84,5 @@
 const Byte_t MExtractFixedWindowPeakSearch::fgPeakSearchWindowSize = 4;
 const Byte_t MExtractFixedWindowPeakSearch::fgOffsetFromWindow     = 1;
+const Byte_t MExtractFixedWindowPeakSearch::fgLowGainPeakShift     = 0;
 // --------------------------------------------------------------------------
 //
@@ -91,4 +93,5 @@
 // - fWindowSizeLoGain to fgWindowSizeLoGain
 // - fPeakSearchWindowSize to fgPeakSearchWindowSize
+// - fLowGainPeakShift to fgLowGainPeakShift
 //
 // Calls: 
@@ -99,5 +102,6 @@
     : fWindowSizeHiGain(fgHiGainWindowSize), 
       fWindowSizeLoGain(fgLoGainWindowSize),
-      fPeakSearchWindowSize(fgPeakSearchWindowSize)
+      fPeakSearchWindowSize(fgPeakSearchWindowSize),
+      fLowGainPeakShift(fgLowGainPeakShift)
 {
 
@@ -392,5 +396,6 @@
 
 
-  loGainFirst = ( hiGainFirst > fLoGainFirst ) ? hiGainFirst : fLoGainFirst;
+  loGainFirst = ( hiGainFirst+fLowGainPeakShift > fLoGainFirst ) ? 
+      hiGainFirst+fLowGainPeakShift : fLoGainFirst;
 
   // Make sure we will not integrate beyond the hi gain limit:
Index: trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.h
===================================================================
--- trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.h	(revision 4251)
+++ trunk/MagicSoft/Mars/msignal/MExtractFixedWindowPeakSearch.h	(revision 4252)
@@ -17,10 +17,12 @@
   static const Byte_t fgLoGainWindowSize;     // Default for fWindowSizeLoGain (now set to: 6)
   static const Byte_t fgPeakSearchWindowSize; // Default for fPeakSearchWindowSize (now set to: 4)
-  static const Byte_t fgOffsetFromWindow;     // Default for fOffsetFromWindow   (now set to: 2)
-  
+  static const Byte_t fgOffsetFromWindow;     // Default for fOffsetFromWindow (now set to: 1)
+  static const Byte_t fgLowGainPeakShift;     // Default for fLowGainPeakShift (now set to: 0)
+
   Byte_t  fWindowSizeHiGain;     // Number of Hi Gain slices in window
   Byte_t  fWindowSizeLoGain;     // Number of Lo Gain slices in window
   Byte_t  fPeakSearchWindowSize; // Size of FADC window in the search for the highest peak of all pixels.
   Byte_t  fOffsetFromWindow;     // Number of slices to start extraction before search window
+  Byte_t  fLowGainPeakShift;     // Shift of the low gain pulse with respect to the high gain pulse, in slices: it is 0 if the low gain is delayed with respect to HG by 15 slices.
 
   void   FindSignalHiGain(Byte_t *ptr, Byte_t *logain, Int_t &sum, Byte_t &sat) const;
@@ -40,4 +42,6 @@
 		    Byte_t peaksearchwindow=fgPeakSearchWindowSize);
     void SetOffsetFromWindow(Byte_t offset=fgOffsetFromWindow)  {  fOffsetFromWindow = offset; }
+
+    void SetLowGainPeakShift(Byte_t shift=fgLowGainPeakShift) { fLowGainPeakShift = shift; }
     
     ClassDef(MExtractFixedWindowPeakSearch, 0) // Signal Extractor for fixed size trigger-corrected extraction window 
