\section{marlintpc\-:\-:Simple\-Pedestal\-Calculator\-Processor Class Reference}
\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor}\index{marlintpc\-::\-Simple\-Pedestal\-Calculator\-Processor@{marlintpc\-::\-Simple\-Pedestal\-Calculator\-Processor}}


The Simpe\-Pedestal\-Calculator\-Processor calculates the pedestal for each channel from all events in the run.  




{\ttfamily \#include $<$Simple\-Pedestal\-Calculator\-Processor.\-h$>$}

Inheritance diagram for marlintpc\-:\-:Simple\-Pedestal\-Calculator\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classmarlintpc_1_1SimplePedestalCalculatorProcessor}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class {\bf pedestal\-Creator}
\begin{DoxyCompactList}\small\item\em Internal helper class to sum up the pedestals and calculate the mean value and width. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual Processor $\ast$ {\bfseries new\-Processor} ()\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_ab20c29bd5b4cc159b0addcb08baf2a61}

\item 
virtual void {\bf init} ()\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a6521ed68d70111e0e89578a1edc7bbf2}

\begin{DoxyCompactList}\small\item\em Initialises the processor parameters. \end{DoxyCompactList}\item 
virtual void {\bf process\-Run\-Header} (lcio\-::\-L\-C\-Run\-Header $\ast$run)\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a8cda8c63d48495cbe55569ad981c4682}

\begin{DoxyCompactList}\small\item\em Nothing to do here... \end{DoxyCompactList}\item 
virtual void {\bf process\-Event} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a3210cbae526c29b854cd1b05c2783b84}

\begin{DoxyCompactList}\small\item\em Sum up all pedestals in the \doxyref{pedestal\-Creator}{p.}{classmarlintpc_1_1SimplePedestalCalculatorProcessor_1_1pedestalCreator} classes. \end{DoxyCompactList}\item 
virtual void {\bf check} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a2223e90d538fdfd3c0c5ed4efd61144c}

\begin{DoxyCompactList}\small\item\em Nothing to check. \end{DoxyCompactList}\item 
virtual void {\bf end} ()\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_aef26ee3011734536729ab625b06655ff}

\begin{DoxyCompactList}\small\item\em The end function writes the caclulated pedestals to the lcio file. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Types}
\begin{DoxyCompactItemize}
\item 
typedef std\-::map$<$ std\-::pair\\*
$<$ int, int $>$, {\bf pedestal\-Creator} $>$ {\bf Pedestal\-Creator\-Map\-\_\-t}\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a37735f43a67be07573c659a7d9331d75}

\begin{DoxyCompactList}\small\item\em For better readability\-: define a pedestal map type. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
{\bf Pedestal\-Creator\-Map\-\_\-t} {\bf \-\_\-pedestal\-Creator\-Map}\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a04e17ebf6df1bbcbd415f113f319d0c4}

\begin{DoxyCompactList}\small\item\em A map to associate a hardware I\-D (pair of ints for channel and readout group) to the corresponding pedestal creator object. \end{DoxyCompactList}\item 
std\-::string {\bfseries \-\_\-input\-Col\-Name}\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a8530da5ff2ff620594940dcb04e404dc}

\item 
std\-::string {\bfseries \-\_\-output\-Col\-Name}\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a8b08048440c4d529e778d44f47624f7a}

\item 
std\-::string {\bfseries \-\_\-output\-File\-Name}\label{classmarlintpc_1_1SimplePedestalCalculatorProcessor_a0d271c543358d93e7b58f83bd4b1c4e2}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
The Simpe\-Pedestal\-Calculator\-Processor calculates the pedestal for each channel from all events in the run. 

It just sums up all measured A\-D\-C values and calculates the mean value, so the data must not contain peaks. You need dedicated pedestal runs to record these data. The output is a simple lcio file with only one event containing the conditions data. Data base files or My\-S\-Q\-L conditions data will not be supported.

Processor Parameters\-: 
\begin{DoxyParams}{Parameters}
{\em Input\-Collection\-Name} & Name of the {\ttfamily Tracker\-Raw\-Data} input collection (default\-: T\-P\-C\-Raw\-Data)" \\
\hline
{\em Output\-Collection\-Name} & Name of the output collection (default\-: T\-P\-C\-Pedestals) \\
\hline
{\em Output\-File\-Name} & Name of the lcio output file (existing file will be overwritten). Default\-: T\-P\-C\-Pedestals.\-slcio \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Simple\-Pedestal\-Calculator\-Processor.\-h\item 
Simple\-Pedestal\-Calculator\-Processor.\-cc\end{DoxyCompactItemize}
