Index: /trunk/MagicSoft/TDAS-Extractor/Algorithms.tex
===================================================================
--- /trunk/MagicSoft/TDAS-Extractor/Algorithms.tex	(revision 5735)
+++ /trunk/MagicSoft/TDAS-Extractor/Algorithms.tex	(revision 5736)
@@ -1,31 +1,138 @@
 \section{Signal Reconstruction Algorithms \label{sec:algorithms}}
 
-\ldots {\it In this section, the extractors are described, especially w.r.t. which free parameters are left to play, 
-how they subtract the pedestal, how they compare between calibration and cosmics pulses and how an 
-extraction in case of a pure pedestal event takes place. }
-\newline
-\newline
 {\it Missing coding: 
 \begin{itemize}
-\item Implementing a low-gain extraction based on the high-gain information \ldots Arnau
 \item Real fit to the expected pulse shape \ldots Hendrik, Wolfgang ???
 \end{itemize}
 }
 
+\subsection{Implementation of Signal Extractors in MARS}
+
+All signal extractor classes are stored in the MARS-directory {\textit{\bf msignal/}}. 
+There, the base classes {\textit{\bf MExtractor}}, {\textit{\bf MExtractTime}}, {\textit{\bf MExtractTimeAndCharge}} and 
+all individual extractors can be found. Figure~\ref{fig:extractorclasses} gives a sketch of the 
+inheritances of each class and what each class calculates.
+
+\begin{figure}[htp]
+\includegraphics[width=0.99\linewidth]{ExtractorClasses.eps}
+\caption{Sketch of possible inheritances of the MARS signal extractor classes}
+\label{fig:extractorclasses}
+\end{figure}
+
+The following base classes for the extractor tasks are used:
+\begin{description}
+\item[MExtractor:\xspace] This class provides the basic data members equal for all extractors which are:
+  \begin{enumerate}
+  \item Global extraction ranges, parameterized by the variables 
+    {\textit{\bf fHiGainFirst, fHiGainLast, fLoGainFirst, fLoGainLast}} and the function {\textit{\bf SetRange()}}. 
+    The ranges always {\textit{\bf include}} the edge slices. 
+  \item An internal variable {\textit{\bf fHiLoLast}} regulating the overlap of the desired high-gain
+    extraction range into the low-gain array.a
+  \item The maximum possible FADC value, before the slice is declared as saturated, parameterized 
+    by the variable {\textit{\bf fSaturationLimit}} (default:\,254). 
+  \item The typical delay between high-gain and low-gain slices, expressed in FADC slices and parameterized
+    by the variable {\textit{\bf fOffsetLoGain}} (default:\,1.51)
+  \item Pointers to the used storage containers {\textit{\bf MRawEvtData, MRawRunHeader, MPedestalCam}} 
+    and~{\textit{\bf MExtractedSignalCam}}, parameterized by the variables 
+    {\textit{\bf fRawEvt, fRunHeader, fPedestals}} and~{\textit{\bf fSignals}}.
+  \item Names of the used storage containers to be searched for in the parameter list, parameterized 
+    by the variables {\textit{\bf fNamePedestalCam}} and~{\textit{\bf fNameSignalCam}} (default: ``MPedestalCam'' 
+    and~''MExtractedSignalCam'').
+  \item The equivalent number of FADC samples, used for the calculation of the pedestal RMS and then the 
+    number of photo-electrons with the F-Factor method (see eq.~\ref{eq:rmssubtraction} and 
+    section~\ref{sec:photo-electrons}). This number is parameterized by the variables 
+    {\textit{\bf fNumHiGainSamples}} and~{\textit{\bf fNumLoGainSamples}}.
+  \end{enumerate}
+
+  {\textit {\bf MExtractor}} is able to loop over all events, if the {\textit{\bf Process()}}-function is not overwritten. 
+  It uses the following (virtual) functions, to be overwritten by the derived extractor class:
+
+  \begin{enumerate}
+  \item void {\textit {\bf FindSignalHiGain}}(Byte\_t* firstused, Byte\_t* lowgain, Float\_t\& sum, Byte\_t\& sat) const
+  \item void {\textit {\bf FindSignalLoGain}}(Byte\_t* firstused, Float\_t\& sum, Byte\_t\& sat) const
+  \end{enumerate}
+
+  where the pointers ``firstused'' point to the first used FADC slice declared by the extraction ranges,
+  the pointer ``lowgain'' point to the beginning of the low-gain FADC slices array (to be used for 
+  pulses reaching into the low-gain array) and the variables ``sum'' and ``sat'' get filled with the 
+  extracted signal and the number of saturating FADC slices, respectively.
+  \par
+  The pedestals get subtracted automatically {\textit {\bf after}} execution of these two functions.
+
+\item[MExtractTime:\xspace] This class provides - additionally to those already declared in {\textit{\bf MExtractor}}, 
+  the basic data members equal for all time extractors which are:
+  \begin{enumerate}
+  \item Pointers to the used storage containers {\textit{\bf MArrivalTimeCam}}
+    parameterized by the variables 
+    {\textit{\bf fArrTime}}.
+  \item The name of the used ``MArrivalTimeCam''-container to be searched for in the parameter list, 
+    parameterized by the variables {\textit{\bf fNameTimeCam}} (default: ``MArrivalTimeCam'' ).
+  \end{enumerate}
+
+  {\textit {\bf MExtractTime}} is able to loop over all events, if the {\textit{\bf Process()}}-function is not 
+  overwritten. 
+  It uses the following (virtual) functions, to be overwritten by the derived extractor class:
+
+  \begin{enumerate}
+  \item void {\textit {\bf FindTimeHiGain}}(Byte\_t* firstused, Float\_t\& time, Float\_t\& dtime, Byte\_t\& sat, const MPedestlPix \&ped) const
+  \item void {\textit {\bf FindTimeLoGain}}(Byte\_t* firstused, Float\_t\& time, Float\_t\& dtime, Byte\_t\& sat, const MPedestalPix \&ped) const
+  \end{enumerate}
+
+  where the pointers ``firstused'' point to the first used FADC slice declared by the extraction ranges,
+  and the variables ``time'', ``dtime'' and ``sat'' get filled with the 
+  extracted arrival time, its error and the number of saturating FADC slices, respectively.
+  \par
+  The pedestals can be used for the arrival time extraction via the reference ``ped''.
+
+\item[MExtractTimeAndCharge:\xspace] This class provides - additionally to those already declared in 
+  {\textit{\bf MExtractor}} and {\textit{\bf MExtractTime}}, 
+  the basic data members equal for all time and charge extractors which are:
+  \begin{enumerate}
+  \item The actual extraction window sizes, parameterized by the variables 
+    {\textit{\bf fWindowSizeHiGain}} and {\textit{\bf fWindowSizeLoGain}}.
+  \item The shift of the low-gain extraction range start w.r.t. to the found high-gain arrival 
+    time, parameterized by the variable {\textit{\bf fLoGainStartShift}} (default: -2.8)
+  \end{enumerate}
+
+  {\textit {\bf MExtractTimeAndCharge}} is able to loop over all events, if the {\textit{\bf Process()}}-function is not 
+  overwritten. 
+  It uses the following (virtual) functions, to be overwritten by the derived extractor class:
+
+  \begin{enumerate}
+  \item void {\textit {\bf FindTimeAndChargeHiGain}}(Byte\_t* firstused, Byte\_t* logain, Float\_t\& sum, Float\_t\& dsum, 
+    Float\_t\& time, Float\_t\& dtime, Byte\_t\& sat, 
+    const MPedestlPix \&ped, const Bool\_t abflag) const
+  \item void {\textit {\bf FindTimeAndChargeLoGain}}(Byte\_t* firstused, Float\_t\& sum, Float\_t\& dsum, 
+    Float\_t\& time, Float\_t\& dtime, Byte\_t\& sat, 
+    const MPedestalPix \&ped, const Bool\_t abflag) const
+  \end{enumerate}
+
+  where the pointers ``firstused'' point to the first used FADC slice declared by the extraction ranges,
+  the pointer ``lowgain'' point to the beginning of the low-gain FADC slices array (to be used for 
+  pulses reaching into the low-gain array),
+  the variables ``sum'', ``dsum'' get filled with the 
+  extracted signal and its error. The variables ``time'', ``dtime'' and ``sat'' get filled with the 
+  extracted arrival time, its error and the number of saturating FADC slices, respectively. 
+  \par
+  The pedestals can be used for the extraction via the reference ``ped'', also the AB-flag is given 
+  for AB-clock noise correction.
+\end{description}
+  
+  
 \subsection{Pure Signal Extractors}
 
-The pure signal extractors have in common that they compute only the 
-signal, but no arrival time. All treated extractors here derive from the MARS-base
-class {\textit{MExtractor}} which provides the following facilities:
+The pure signal extractors have in common that they reconstruct only the 
+charge, but not  the arrival time. All treated extractors here derive from the MARS-base
+class {\textit{\bf MExtractor}} which provides the following facilities:
 
 \begin{itemize}
 \item The global extraction limits can be set from outside
-\item FADC saturation is kept track off
+\item FADC saturation is kept track of
 \end{itemize}
 
-The following free adjustable parameters have to be set from outside: 
+The following freely adjustable parameters have to be set from outside: 
 \begin{description}
 \item[Global extraction limits:\xspace] Limits in between the extractor is allowed 
-to search. 
+to search, independently for high gain and low gain. 
 \end{description}
 
@@ -33,41 +140,43 @@
 
 This extractor is implemented in the MARS-class {\textit{MExtractFixedWindow}}.
-It simply adds the FADC contents in the allowed ranges. 
+It simply adds the FADC contents in the assigned ranges. 
 As it does not correct for the clock-noise, only an even number of samples is allowed.
 
+\subsubsection{Fixed Window with Integrated Cubic Spline}
+
+This extractor is implemented in the MARS-class {\textit{MExtractFixedWindowSpline}},
+using a cubic spline algorithm, adapted from \cite{NUMREC}. 
+It integrated the 
+spline interpolated FADC slice values. The edge slices are counted as half.
+As it does not correct for the clock-noise, only an odd number of samples is allowed.
+
 \subsubsection{Fixed Window with Global Peak Search}
 
 This extractor is implemented in the MARS-class {\textit{MExtractFixedWindowPeakSearch}}.
-It first fixes a reference point defined as the highest sum of 
+It fixes first a reference point defined as the highest sum of 
 consecutive non-saturating FADC slices in a (smaller) peak-search window. This reference 
-point removes the coherent movement of the arrival times over whole camera due to the trigger jitter.
+point removes the coherent movement of the arrival times in the whole camera due to the trigger jitter.
 \par
-Then, it starts adding the FADC contents starting from one slice before the peak-search window up to 
-a pre-defined window size.
-It loops twice over the all pixels every event, because it first has to find the reference point. 
+In a second loop over the pixels, 
+it adds the FADC contents starting from a pre-defined point before the obtained peak-search window 
+over an extraction window of a pre-defined window size.
+It loops twice over all pixels in every event, because it has to find the reference point, first. 
 As it does not correct for the clock-noise, only an even number of samples is allowed.
 
-The following free adjustable parameters have to be set from outside: 
+The following freely adjustable parameters have to be set from outside: 
 \begin{description}
 \item[Peak Search Window:\xspace] Defines the ``sliding window'' in which the peaking sum is 
 searched for (default: 4 slices)
-\item[Offset from Window:\xspace] Defines the offset from the found reference point to start 
-extracting the fixed window (default: 1 slice)
+\item[Offset from Window:\xspace] Defines the offset of the start of the extraction window w.r.t. the 
+starting point of the obtained peak search window (default: 1 slice)
 \item[Low-Gain Peak shift:\xspace] Defines the shift in the low-gain with respect to the peak found 
 in the high-gain (default: 1 slice)
 \end{description}
 
-\subsubsection{Fixed Window with Integrated Cubic Spline}
-
-This extractor is implemented in the MARS-class {\textit{MExtractFixedWindowSpline}}.
-It uses a cubic spline algorithm, adapted from \cite{NUMREC}. 
-It integrated the 
-spline interpolated FADC slice values, counting the edge slices as half.
-As it does not correct for the clock-noise, only an odd number of samples is allowed.
-
 \subsection{Combined Extractors}
 
-The combined extractors have in common that they compute the arrival time and 
-the signal in one step. All treated combined extractors here derive from the MARS-base
+The combined extractors have in common that they reconstruct the arrival time and 
+the charge at the same time and for the same pulse. 
+All treated combined extractors here derive from the MARS-base
 class {\textit{MExtractTimeAndCharge}} which provides the following facilities:
 
@@ -80,10 +189,10 @@
     pulse
 \item The global extraction limits can be set from outside
-\item FADC saturation is kept track off
+\item FADC saturation is kept track of
 \end{itemize}
 
-The following free adjustable parameters have to be set from outside: 
-\begin{description}
-\item[Global extraction limits:\xspace] Limits in between the extractor is allowed 
+The following free adjustable parameters have to be set additionally from outside: 
+\begin{description}
+\item[Global extraction limits:\xspace] Limits in between which the extractor is allowed 
 to search. They are fixed by the extractor for the high-gain, but re-adjusted for 
 every event in the low-gain, depending on the arrival time found in the low-gain. 
@@ -94,10 +203,6 @@
 This variable tells where the extractor is allowed to start searching for the low-gain signal 
 if the high-gain arrival time is known. It avoids that the extractor gets confused by possible high-gain 
-signals leaking into the ``low-gain'' region.
-\end{description}
-
-\ldots {\it Note for the usage of this class together with {\textit{MJCalibration}}: In order to access the 
-arrival times computed by these classes, the option: MJCalibration::SetTimeAndCharge() has to 
-be chosen} \ldots 
+signals leaking into the ``low-gain'' region (default: -2.8).
+\end{description}
 
 \subsubsection{Sliding Window with Amplitude-Weighted Time}
@@ -106,5 +211,5 @@
 It extracts the signal from a sliding window of an adjustable size, for high-gain and low-gain 
 individually (default: 6 and 6) The signal is the one which maximizes the summed 
-(clock-noise and pedestal-corrected) FADC signal over the window.
+(clock-noise and pedestal-corrected) FADC slice contents.
 \par
 The amplitude-weighted arrival time is calculated from the window with 
Index: /trunk/MagicSoft/TDAS-Extractor/Changelog
===================================================================
--- /trunk/MagicSoft/TDAS-Extractor/Changelog	(revision 5735)
+++ /trunk/MagicSoft/TDAS-Extractor/Changelog	(revision 5736)
@@ -29,5 +29,5 @@
 2004/01/05: Markus Gaug
   * Introduction.tex: Some changes in style
-  * Algorithms.tex: Fixed section headers
+  * Algorithms.tex: Fixed section headers, updated text, added figure
   * Reconstruction.tex: text updated
 
Index: /trunk/MagicSoft/TDAS-Extractor/ExtractorClasses.eps
===================================================================
--- /trunk/MagicSoft/TDAS-Extractor/ExtractorClasses.eps	(revision 5735)
+++ /trunk/MagicSoft/TDAS-Extractor/ExtractorClasses.eps	(revision 5736)
@@ -2,7 +2,7 @@
 %%Title: ExtractorClasses.eps
 %%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Fri Jan  7 14:35:16 2005
+%%CreationDate: Fri Jan  7 14:54:55 2005
 %%For: markus@wsmarkus (markus gaug,magic)
-%%BoundingBox: 0 0 1435 1128
+%%BoundingBox: 0 0 1239 1380
 %%Magnification: 1.0000
 %%EndComments
@@ -47,6 +47,6 @@
 end
 save
-newpath 0 1128 moveto 0 0 lineto 1435 0 lineto 1435 1128 lineto closepath clip newpath
-526.4 1177.1 translate
+newpath 0 1380 moveto 0 0 lineto 1239 0 lineto 1239 1380 lineto closepath clip newpath
+364.8 1429.4 translate
 1 -1 scale
 
@@ -96,8 +96,35 @@
  cp gs col7 1.00 shd ef gr gs col0 s gr 
 % Polyline
-n -5535 5130 m -135 5130 l -135 6660 l -5535 6660 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n -8325 15840 m -135 15840 l -135 18180 l -8325 18180 l
+n 1485 20340 m 9675 20340 l 9675 22680 l 1485 22680 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 8100 3240 m 10395 3240 l 10395 3600 l 8100 3600 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 8100 3600 m 10395 3600 l 10395 3960 l 8100 3960 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 8100 3960 m 10395 3960 l 10395 4320 l 8100 4320 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 8100 4320 m 10395 4320 l 10395 4680 l 8100 4680 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 8100 9810 m 10440 9810 l 10440 10170 l 8100 10170 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 11655 3960 m 13860 3960 l 13860 4320 l 11655 4320 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 11655 4320 m 13860 4320 l 13860 4680 l 11655 4680 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 11565 9765 m 13815 9765 l 13815 10125 l 11565 10125 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n -5175 5130 m 225 5130 l 225 6660 l -5175 6660 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n -5760 9495 m 225 9495 l 225 12015 l -5760 12015 l
  cp gs col7 1.00 shd ef gr gs col0 s gr 
 % Polyline
@@ -108,135 +135,15 @@
  cp gs col7 1.00 shd ef gr gs col0 s gr 
 % Polyline
-n 8460 3240 m 10755 3240 l 10755 3600 l 8460 3600 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 8460 3600 m 10755 3600 l 10755 3960 l 8460 3960 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 8460 3960 m 10755 3960 l 10755 4320 l 8460 4320 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 8460 4320 m 10755 4320 l 10755 4680 l 8460 4680 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 12150 3960 m 14355 3960 l 14355 4320 l 12150 4320 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 12150 4320 m 14355 4320 l 14355 4680 l 12150 4680 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 8460 9810 m 10800 9810 l 10800 10170 l 8460 10170 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 12150 9810 m 14400 9810 l 14400 10170 l 12150 10170 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n -6120 9495 m -135 9495 l -135 12015 l -6120 12015 l
- cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 7280 4140 m 7313 4140 l 7346 4140 l 7379 4140 l 7413 4140 l 7447 4140 l
- 7481 4140 l 7515 4140 l 7549 4140 l 7583 4140 l 7616 4140 l
- 7650 4140 l 7684 4140 l 7717 4140 l 7751 4140 l 7785 4140 l
- 7819 4140 l 7852 4140 l 7886 4140 l 7920 4140 l 7954 4140 l
- 7988 4140 l 8022 4140 l 8056 4140 l 8089 4140 l 8122 4140 l
- 8155 4140 l 8189 4140 l 8223 4140 l 8257 4140 l 8291 4140 l
- 8325 4140 l 8358 4140 l 8392 4140 l 8426 4140 l
- 8460 4140 l gs col0 s gr 
-% Polyline
-n 7002 4140 m 7137 4050 l 7272 4140 l 7137 4230 l
- 7002 4140 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 7280 4500 m 7313 4500 l 7346 4500 l 7379 4500 l 7413 4500 l 7447 4500 l
- 7481 4500 l 7515 4500 l 7549 4500 l 7583 4500 l 7616 4500 l
- 7650 4500 l 7684 4500 l 7717 4500 l 7751 4500 l 7785 4500 l
- 7819 4500 l 7852 4500 l 7886 4500 l 7920 4500 l 7954 4500 l
- 7988 4500 l 8022 4500 l 8056 4500 l 8089 4500 l 8122 4500 l
- 8155 4500 l 8189 4500 l 8223 4500 l 8257 4500 l 8291 4500 l
- 8325 4500 l 8358 4500 l 8392 4500 l 8426 4500 l
- 8460 4500 l gs col0 s gr 
-% Polyline
-n 7002 4500 m 7137 4410 l 7272 4500 l 7137 4590 l
- 7002 4500 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 7280 3774 m 7313 3774 l 7346 3774 l 7379 3774 l 7413 3774 l 7447 3774 l
- 7481 3774 l 7515 3774 l 7549 3774 l 7583 3774 l 7616 3774 l
- 7650 3774 l 7684 3774 l 7717 3774 l 7751 3774 l 7785 3774 l
- 7819 3774 l 7852 3774 l 7886 3774 l 7920 3774 l 7954 3774 l
- 7988 3774 l 8022 3774 l 8056 3774 l 8089 3774 l 8122 3774 l
- 8155 3774 l 8189 3774 l 8223 3774 l 8257 3774 l 8291 3774 l
- 8325 3774 l 8358 3774 l 8392 3774 l 8426 3774 l
- 8460 3774 l gs col0 s gr 
-% Polyline
-n 7002 3774 m 7137 3690 l 7272 3774 l 7137 3857 l
- 7002 3774 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 11040 4514 m 11072 4514 l 11104 4514 l 11135 4514 l 11167 4514 l 11199 4514 l
- 11231 4514 l 11263 4514 l 11294 4514 l 11326 4514 l 11357 4514 l
- 11389 4514 l 11421 4514 l 11452 4514 l 11484 4514 l 11516 4514 l
- 11548 4514 l 11579 4514 l 11611 4514 l 11642 4514 l 11674 4514 l
- 11706 4514 l 11738 4514 l 11770 4514 l 11801 4514 l 11833 4514 l
- 11865 4514 l 11897 4514 l 11928 4514 l 11960 4514 l 11991 4514 l
- 12023 4514 l 12054 4514 l 12086 4514 l 12118 4514 l
- 12150 4514 l gs col0 s gr 
-% Polyline
-n 10781 4514 m 10907 4441 l 11034 4514 l 10907 4590 l
- 10781 4514 l  cp gs 0.00 setgray ef gr gs col0 s gr 
-/Helvetica-Narrow ff 120.00 scf sf
-11897 4477 m
-gs 1 -1 sc (577) col0 sh gr
-% Polyline
-n 11040 4154 m 11072 4154 l 11104 4154 l 11135 4154 l 11167 4154 l 11199 4154 l
- 11231 4154 l 11263 4154 l 11294 4154 l 11325 4154 l 11357 4154 l
- 11389 4154 l 11421 4154 l 11452 4154 l 11484 4154 l 11516 4154 l
- 11548 4154 l 11580 4154 l 11611 4154 l 11642 4154 l 11674 4154 l
- 11706 4154 l 11738 4154 l 11770 4154 l 11801 4154 l 11833 4154 l
- 11865 4154 l 11897 4154 l 11928 4154 l 11960 4154 l 11991 4154 l
- 12022 4154 l 12054 4154 l 12086 4154 l 12118 4154 l
- 12150 4154 l gs col0 s gr 
-% Polyline
-n 10781 4154 m 10906 4081 l 11034 4154 l 10906 4230 l
- 10781 4154 l  cp gs 0.00 setgray ef gr gs col0 s gr 
-/Helvetica-Narrow ff 120.00 scf sf
-11897 4117 m
-gs 1 -1 sc (577) col0 sh gr
-% Polyline
-n 7315 9990 m 7348 9990 l 7380 9990 l 7413 9990 l 7445 9990 l 7478 9990 l
- 7511 9990 l 7544 9990 l 7576 9990 l 7609 9990 l 7642 9990 l
- 7675 9990 l 7708 9990 l 7740 9990 l 7772 9990 l 7805 9990 l
- 7838 9990 l 7871 9990 l 7904 9990 l 7936 9990 l 7969 9990 l
- 8002 9990 l 8035 9990 l 8067 9990 l 8100 9990 l 8132 9990 l
- 8165 9990 l 8198 9990 l 8231 9990 l 8263 9990 l 8296 9990 l
- 8329 9990 l 8362 9990 l 8394 9990 l 8427 9990 l
- 8460 9990 l gs col0 s gr 
-% Polyline
-n 7047 9990 m 7177 9900 l 7308 9990 l 7177 10080 l
- 7047 9990 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
-% Polyline
-n 11076 10004 m 11106 10004 l 11137 10004 l 11168 10004 l 11199 10004 l 11230 10004 l
- 11261 10004 l 11291 10004 l 11321 10004 l 11352 10004 l 11383 10004 l
- 11414 10004 l 11445 10004 l 11475 10004 l 11505 10004 l 11536 10004 l
- 11567 10004 l 11598 10004 l 11629 10004 l 11659 10004 l 11689 10004 l
- 11720 10004 l 11751 10004 l 11782 10004 l 11813 10004 l 11844 10004 l
- 11874 10004 l 11905 10004 l 11935 10004 l 11966 10004 l 11996 10004 l
- 12027 10004 l 12058 10004 l 12088 10004 l 12119 10004 l
- 12150 10004 l gs col0 s gr 
-% Polyline
-n 10825 10004 m 10947 9931 l 11070 10004 l 10947 10080 l
- 10825 10004 l  cp gs 0.00 setgray ef gr gs col0 s gr 
-/Helvetica-Narrow ff 120.00 scf sf
-11905 9967 m
-gs 1 -1 sc (577) col0 sh gr
-% Polyline
-n 7280 3414 m 7313 3414 l 7346 3414 l 7379 3414 l 7413 3414 l 7447 3414 l
- 7481 3414 l 7515 3414 l 7549 3414 l 7583 3414 l 7616 3414 l
- 7650 3414 l 7684 3414 l 7717 3414 l 7751 3414 l 7785 3414 l
- 7819 3414 l 7852 3414 l 7886 3414 l 7920 3414 l 7954 3414 l
- 7988 3414 l 8022 3414 l 8056 3414 l 8089 3414 l 8122 3414 l
- 8155 3414 l 8189 3414 l 8223 3414 l 8257 3414 l 8291 3414 l
- 8325 3414 l 8358 3414 l 8392 3414 l 8426 3414 l
- 8460 3414 l gs col0 s gr 
-% Polyline
-n 7002 3414 m 7137 3330 l 7272 3414 l 7137 3497 l
- 7002 3414 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
+n 7241 9990 m 7266 9990 l 7290 9990 l 7315 9990 l 7339 9990 l 7364 9990 l
+ 7388 9990 l 7413 9990 l 7437 9990 l 7462 9990 l 7487 9990 l
+ 7511 9990 l 7536 9990 l 7560 9990 l 7584 9990 l 7609 9990 l
+ 7634 9990 l 7658 9990 l 7683 9990 l 7707 9990 l 7732 9990 l
+ 7757 9990 l 7781 9990 l 7805 9990 l 7830 9990 l 7854 9990 l
+ 7879 9990 l 7904 9990 l 7928 9990 l 7952 9990 l 7977 9990 l
+ 8002 9990 l 8027 9990 l 8051 9990 l 8075 9990 l
+ 8100 9990 l gs col0 s gr 
+% Polyline
+n 7040 9990 m 7138 9900 l 7236 9990 l 7138 10080 l
+ 7040 9990 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
 % Polyline
 n 1466 14400 m
@@ -288,42 +195,141 @@
 gs 1 -1 sc (PreProcessStd\(\): Find all other pointers) col0 sh gr
 % Polyline
-n -5554 5670 m
- -135 5670 l gs col0 s gr 
-% Polyline
-n -5554 5940 m
- -135 5940 l gs col0 s gr 
+n 1466 20880 m
+ 9675 20880 l gs col0 s gr 
+% Polyline
+n 1466 21600 m
+ 9675 21600 l gs col0 s gr 
 /Helvetica ff 435.00 scf sf
--5445 5535 m
+1575 20745 m
+gs 1 -1 sc (MExtractTimeAndChargeSlidingWindow) col0 sh gr
+/Helvetica ff 195.00 scf sf
+1575 21195 m
+gs 1 -1 sc (fHiGainSignal   \(MArrayF\)) col0 sh gr
+/Helvetica ff 195.00 scf sf
+1575 21465 m
+gs 1 -1 sc (fLoGainSignal  \(MArrayF\)) col0 sh gr
+/Helvetica ff 225.00 scf sf
+1485 21915 m
+gs 1 -1 sc (   InitArrays\(\): Initialize fHiGainSignal  and fLoGainSignal) col0 sh gr
+/Helvetica ff 225.00 scf sf
+1485 22230 m
+gs 1 -1 sc (   FindTimeAndChargeHiGain\(\): extract the sliding window ) col0 sh gr
+/Helvetica ff 225.00 scf sf
+1485 22545 m
+gs 1 -1 sc (   FindTimeAndChargeLoGain\(\): extract the sliding window) col0 sh gr
+% Polyline
+n 7206 4140 m 7231 4140 l 7256 4140 l 7281 4140 l 7307 4140 l 7332 4140 l
+ 7358 4140 l 7384 4140 l 7410 4140 l 7436 4140 l 7461 4140 l
+ 7487 4140 l 7512 4140 l 7537 4140 l 7562 4140 l 7588 4140 l
+ 7614 4140 l 7639 4140 l 7665 4140 l 7691 4140 l 7717 4140 l
+ 7743 4140 l 7768 4140 l 7794 4140 l 7819 4140 l 7844 4140 l
+ 7869 4140 l 7895 4140 l 7921 4140 l 7946 4140 l 7972 4140 l
+ 7997 4140 l 8022 4140 l 8048 4140 l 8074 4140 l
+ 8100 4140 l gs col0 s gr 
+% Polyline
+n 6996 4140 m 7097 4050 l 7200 4140 l 7097 4230 l
+ 6996 4140 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 7206 4500 m 7231 4500 l 7256 4500 l 7281 4500 l 7307 4500 l 7332 4500 l
+ 7358 4500 l 7384 4500 l 7410 4500 l 7436 4500 l 7461 4500 l
+ 7487 4500 l 7512 4500 l 7537 4500 l 7562 4500 l 7588 4500 l
+ 7614 4500 l 7639 4500 l 7665 4500 l 7691 4500 l 7717 4500 l
+ 7743 4500 l 7768 4500 l 7794 4500 l 7819 4500 l 7844 4500 l
+ 7869 4500 l 7895 4500 l 7921 4500 l 7946 4500 l 7972 4500 l
+ 7997 4500 l 8022 4500 l 8048 4500 l 8074 4500 l
+ 8100 4500 l gs col0 s gr 
+% Polyline
+n 6996 4500 m 7097 4410 l 7200 4500 l 7097 4590 l
+ 6996 4500 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 7206 3774 m 7231 3774 l 7256 3774 l 7281 3774 l 7307 3774 l 7332 3774 l
+ 7358 3774 l 7384 3774 l 7410 3774 l 7436 3774 l 7461 3774 l
+ 7487 3774 l 7512 3774 l 7537 3774 l 7562 3774 l 7588 3774 l
+ 7614 3774 l 7639 3774 l 7665 3774 l 7691 3774 l 7717 3774 l
+ 7743 3774 l 7768 3774 l 7794 3774 l 7819 3774 l 7844 3774 l
+ 7869 3774 l 7895 3774 l 7921 3774 l 7946 3774 l 7972 3774 l
+ 7997 3774 l 8022 3774 l 8048 3774 l 8074 3774 l
+ 8100 3774 l gs col0 s gr 
+% Polyline
+n 6996 3774 m 7097 3690 l 7200 3774 l 7097 3857 l
+ 6996 3774 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
+% Polyline
+n 7206 3414 m 7231 3414 l 7256 3414 l 7281 3414 l 7307 3414 l 7332 3414 l
+ 7358 3414 l 7384 3414 l 7410 3414 l 7436 3414 l 7461 3414 l
+ 7487 3414 l 7512 3414 l 7537 3414 l 7562 3414 l 7588 3414 l
+ 7614 3414 l 7639 3414 l 7665 3414 l 7691 3414 l 7717 3414 l
+ 7743 3414 l 7768 3414 l 7794 3414 l 7819 3414 l 7844 3414 l
+ 7869 3414 l 7895 3414 l 7921 3414 l 7946 3414 l 7972 3414 l
+ 7997 3414 l 8022 3414 l 8048 3414 l 8074 3414 l
+ 8100 3414 l gs col0 s gr 
+% Polyline
+n 6996 3414 m 7097 3330 l 7200 3414 l 7097 3497 l
+ 6996 3414 l  cp gs col7 1.00 shd ef gr gs col0 s gr 
+/Helvetica ff 225.00 scf sf
+8145 4590 m
+gs 1 -1 sc (MExtractedSignalCam) col0 sh gr
+/Helvetica ff 225.00 scf sf
+8145 4230 m
+gs 1 -1 sc (MPedestalCam) col0 sh gr
+/Helvetica ff 225.00 scf sf
+8145 3870 m
+gs 1 -1 sc (MRawRunHeader) col0 sh gr
+/Helvetica ff 225.00 scf sf
+8145 3510 m
+gs 1 -1 sc (MRawEvtData) col0 sh gr
+/Helvetica ff 225.00 scf sf
+8190 10080 m
+gs 1 -1 sc (MArrivalTimeCam) col0 sh gr
+/Helvetica ff 225.00 scf sf
+11700 4590 m
+gs 1 -1 sc (MExtractedSignalPix) col0 sh gr
+/Helvetica ff 225.00 scf sf
+11700 4230 m
+gs 1 -1 sc (MPedestalPix) col0 sh gr
+/Helvetica ff 225.00 scf sf
+11610 10035 m
+gs 1 -1 sc (MArrivalTimePix) col0 sh gr
+% Polyline
+n -5194 5670 m
+ 225 5670 l gs col0 s gr 
+% Polyline
+n -5194 5940 m
+ 225 5940 l gs col0 s gr 
+/Helvetica ff 435.00 scf sf
+-5085 5535 m
 gs 1 -1 sc (MExtractFixedWindow) col0 sh gr
 /Helvetica ff 225.00 scf sf
--5580 6255 m
+-5220 6255 m
 gs 1 -1 sc (   FindSignalHiGain\(\): extract the fixed window ) col0 sh gr
 /Helvetica ff 225.00 scf sf
--5580 6570 m
+-5220 6570 m
 gs 1 -1 sc (   FindSignalLoGain\(\): extract the fixed window) col0 sh gr
 % Polyline
-n -8344 16380 m
- -135 16380 l gs col0 s gr 
-% Polyline
-n -8344 17100 m
- -135 17100 l gs col0 s gr 
+n -5779 10035 m
+ 225 10035 l gs col0 s gr 
+% Polyline
+n -5779 11250 m
+ 225 11250 l gs col0 s gr 
 /Helvetica ff 435.00 scf sf
--8235 16245 m
-gs 1 -1 sc (MExtractTimeAndChargeSlidingWindow) col0 sh gr
-/Helvetica ff 195.00 scf sf
--8235 16695 m
-gs 1 -1 sc (fHiGainSignal   \(MArrayF\)) col0 sh gr
-/Helvetica ff 195.00 scf sf
--8235 16965 m
-gs 1 -1 sc (fLoGainSignal  \(MArrayF\)) col0 sh gr
-/Helvetica ff 225.00 scf sf
--8325 17415 m
-gs 1 -1 sc (   InitArrays\(\): Initialize fHiGainSignal  and fLoGainSignal) col0 sh gr
-/Helvetica ff 225.00 scf sf
--8325 17730 m
-gs 1 -1 sc (   FindTimeAndChargeHiGain\(\): extract the sliding window ) col0 sh gr
-/Helvetica ff 225.00 scf sf
--8325 18045 m
-gs 1 -1 sc (   FindTimeAndChargeLoGain\(\): extract the sliding window) col0 sh gr
+-5670 9900 m
+gs 1 -1 sc (MExtractTimeFastSpline) col0 sh gr
+/Helvetica ff 195.00 scf sf
+-5670 10350 m
+gs 1 -1 sc (fHiGainSecondDeriv   \(MArrayF\)) col0 sh gr
+/Helvetica ff 195.00 scf sf
+-5670 10620 m
+gs 1 -1 sc (fLoGainSecondDeriv  \(MArrayF\)) col0 sh gr
+/Helvetica ff 225.00 scf sf
+-5760 11880 m
+gs 1 -1 sc (   FindTimeAndChargeLoGain\(\): extract the spline time) col0 sh gr
+/Helvetica ff 225.00 scf sf
+-5760 11565 m
+gs 1 -1 sc (   FindTimeAndChargeHiGain\(\): extract the spline time) col0 sh gr
+/Helvetica ff 195.00 scf sf
+-5670 10890 m
+gs 1 -1 sc (fResolution                 \(Float_t\)) col0 sh gr
+/Helvetica ff 195.00 scf sf
+-5670 11160 m
+gs 1 -1 sc (fRiseTime                   \(Float_t\)) col0 sh gr
 % Polyline
 n 1466 4725 m
@@ -360,5 +366,5 @@
 1477 6322 m 1477 6007 l 1226 6007 l 1455 6165 l 1226 6322 l cp
 eoclip
-n -135 6165 m
+n 225 6165 m
  1462 6165 l gs col0 s gr gr
 
@@ -367,16 +373,7 @@
 % Polyline
 gs  clippath
-1477 17752 m 1477 17437 l 1226 17437 l 1455 17595 l 1226 17752 l cp
-eoclip
-n -135 17595 m
- 1462 17595 l gs col0 s gr gr
-
-% arrowhead
-n 1226 17752 m 1455 17595 l 1226 17437 l 1226 17752 l  cp gs col7 1.00 shd ef gr  col0 s
-% Polyline
-gs  clippath
 1477 11587 m 1477 11272 l 1226 11272 l 1455 11430 l 1226 11587 l cp
 eoclip
-n -135 11430 m
+n 225 11430 m
  1462 11430 l gs col0 s gr gr
 
@@ -384,9 +381,48 @@
 n 1226 11587 m 1455 11430 l 1226 11272 l 1226 11587 l  cp gs col7 1.00 shd ef gr  col0 s
 % Polyline
-n -6139 10035 m
- -135 10035 l gs col0 s gr 
-% Polyline
-n -6139 11250 m
- -135 11250 l gs col0 s gr 
+gs  clippath
+4072 18683 m 3757 18683 l 3757 18933 l 3915 18705 l 4072 18933 l cp
+eoclip
+n 3915 20295 m
+ 3915 18698 l gs col0 s gr gr
+
+% arrowhead
+n 4072 18933 m 3915 18705 l 3757 18933 l 4072 18933 l  cp gs col7 1.00 shd ef gr  col0 s
+% Polyline
+n 10643 4120 m 10671 4120 l 10699 4120 l 10726 4120 l 10754 4120 l 10781 4120 l
+ 10809 4120 l 10837 4120 l 10864 4120 l 10891 4120 l 10919 4120 l
+ 10947 4120 l 10976 4120 l 11003 4120 l 11030 4120 l 11058 4120 l
+ 11086 4120 l 11114 4120 l 11141 4120 l 11168 4120 l 11196 4120 l
+ 11224 4120 l 11251 4120 l 11279 4120 l 11306 4120 l 11334 4120 l
+ 11362 4120 l 11390 4120 l 11417 4120 l 11445 4120 l 11472 4120 l
+ 11499 4120 l 11526 4120 l 11554 4120 l 11582 4120 l
+ 11610 4120 l gs col0 s gr 
+% Polyline
+n 10418 4120 m 10527 4019 l 10638 4120 l 10527 4224 l
+ 10418 4120 l  cp gs 0.00 setgray ef gr gs col0 s gr 
+% Polyline
+n 10643 4531 m 10671 4531 l 10699 4531 l 10726 4531 l 10754 4531 l 10781 4531 l
+ 10809 4531 l 10837 4531 l 10864 4531 l 10892 4531 l 10919 4531 l
+ 10947 4531 l 10976 4531 l 11003 4531 l 11030 4531 l 11058 4531 l
+ 11086 4531 l 11113 4531 l 11141 4531 l 11168 4531 l 11196 4531 l
+ 11224 4531 l 11251 4531 l 11279 4531 l 11306 4531 l 11334 4531 l
+ 11362 4531 l 11390 4531 l 11417 4531 l 11445 4531 l 11472 4531 l
+ 11499 4531 l 11526 4531 l 11554 4531 l 11582 4531 l
+ 11610 4531 l gs col0 s gr 
+% Polyline
+n 10418 4531 m 10527 4430 l 10638 4531 l 10527 4635 l
+ 10418 4531 l  cp gs 0.00 setgray ef gr gs col0 s gr 
+% Polyline
+n 10670 9974 m 10695 9974 l 10721 9974 l 10747 9974 l 10772 9974 l 10798 9974 l
+ 10824 9974 l 10849 9974 l 10874 9974 l 10900 9974 l 10926 9974 l
+ 10952 9974 l 10977 9974 l 11002 9974 l 11027 9974 l 11053 9974 l
+ 11079 9974 l 11105 9974 l 11131 9974 l 11156 9974 l 11181 9974 l
+ 11207 9974 l 11232 9974 l 11258 9974 l 11284 9974 l 11310 9974 l
+ 11335 9974 l 11361 9974 l 11386 9974 l 11412 9974 l 11437 9974 l
+ 11462 9974 l 11488 9974 l 11513 9974 l 11539 9974 l
+ 11565 9974 l gs col0 s gr 
+% Polyline
+n 10461 9974 m 10562 9871 l 10665 9974 l 10562 10080 l
+ 10461 9974 l  cp gs 0.00 setgray ef gr gs col0 s gr 
 /Helvetica ff 195.00 scf sf
 1620 3870 m
@@ -469,28 +505,4 @@
 1620 1620 m
 gs 1 -1 sc (fHiGainFirst, fHiGainLast, fLoGainFirst, fLoGainLast \(Byte_t\)) col0 sh gr
-/Helvetica ff 225.00 scf sf
-8505 4590 m
-gs 1 -1 sc (MExtractedSignalCam) col0 sh gr
-/Helvetica ff 225.00 scf sf
-8505 4230 m
-gs 1 -1 sc (MPedestalCam) col0 sh gr
-/Helvetica ff 225.00 scf sf
-8505 3870 m
-gs 1 -1 sc (MRawRunHeader) col0 sh gr
-/Helvetica ff 225.00 scf sf
-8505 3510 m
-gs 1 -1 sc (MRawEvtData) col0 sh gr
-/Helvetica ff 225.00 scf sf
-12195 4590 m
-gs 1 -1 sc (MExtractedSignalPix) col0 sh gr
-/Helvetica ff 225.00 scf sf
-12195 4230 m
-gs 1 -1 sc (MPedestalPix) col0 sh gr
-/Helvetica ff 225.00 scf sf
-8550 10080 m
-gs 1 -1 sc (MArrivalTimeCam) col0 sh gr
-/Helvetica ff 225.00 scf sf
-12195 10080 m
-gs 1 -1 sc (MArrivalTimePix) col0 sh gr
 /Helvetica ff 195.00 scf sf
 2160 5355 m
@@ -499,25 +511,13 @@
 2070 10890 m
 gs 1 -1 sc (PreProcessStd\(\): Find all other pointers) col0 sh gr
-/Helvetica ff 435.00 scf sf
--6030 9900 m
-gs 1 -1 sc (MExtractTimeFastSpline) col0 sh gr
-/Helvetica ff 195.00 scf sf
--6030 10350 m
-gs 1 -1 sc (fHiGainSecondDeriv   \(MArrayF\)) col0 sh gr
-/Helvetica ff 195.00 scf sf
--6030 10620 m
-gs 1 -1 sc (fLoGainSecondDeriv  \(MArrayF\)) col0 sh gr
-/Helvetica ff 225.00 scf sf
--6120 11880 m
-gs 1 -1 sc (   FindTimeAndChargeLoGain\(\): extract the spline time) col0 sh gr
-/Helvetica ff 225.00 scf sf
--6120 11565 m
-gs 1 -1 sc (   FindTimeAndChargeHiGain\(\): extract the spline time) col0 sh gr
-/Helvetica ff 195.00 scf sf
--6030 10890 m
-gs 1 -1 sc (fResolution                 \(Float_t\)) col0 sh gr
-/Helvetica ff 195.00 scf sf
--6030 11160 m
-gs 1 -1 sc (fRiseTime                   \(Float_t\)) col0 sh gr
+/Helvetica-Narrow ff 150.00 scf sf
+11205 9900 m
+gs 1 -1 sc (577) col0 sh gr
+/Helvetica-Narrow ff 150.00 scf sf
+11295 4050 m
+gs 1 -1 sc (577) col0 sh gr
+/Helvetica-Narrow ff 150.00 scf sf
+11295 4455 m
+gs 1 -1 sc (577) col0 sh gr
 % Polyline
 gs  clippath
