\section{marlintpc\-:\-:A\-D\-C\-Pulse\-Converter\-Processor Class Reference}
\label{classmarlintpc_1_1ADCPulseConverterProcessor}\index{marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor@{marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor}}


Convert zero-\/suppressed A\-D\-C raw data to pulses.  




{\ttfamily \#include $<$A\-D\-C\-Pulse\-Converter\-Processor.\-h$>$}

Inheritance diagram for marlintpc\-:\-:A\-D\-C\-Pulse\-Converter\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classmarlintpc_1_1ADCPulseConverterProcessor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual Processor $\ast$ {\bfseries new\-Processor} ()\label{classmarlintpc_1_1ADCPulseConverterProcessor_af664c6a9950ddfb9b5bfc07e434e0347}

\item 
{\bf A\-D\-C\-Pulse\-Converter\-Processor} ()\label{classmarlintpc_1_1ADCPulseConverterProcessor_ae5a295c44357a5b6f91258fd1790b9ec}

\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
virtual void {\bfseries init} ()\label{classmarlintpc_1_1ADCPulseConverterProcessor_adee2cf30131232c0c38b42eaa4fbf0a1}

\item 
virtual void {\bfseries process\-Run\-Header} (lcio\-::\-L\-C\-Run\-Header $\ast$run)\label{classmarlintpc_1_1ADCPulseConverterProcessor_ab5f050171a127d9b732f874d5c935168}

\item 
virtual void {\bfseries process\-Event} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1ADCPulseConverterProcessor_a2e74a689a157fa4921a3a70767d9a79d}

\item 
virtual void {\bfseries check} (lcio\-::\-L\-C\-Event $\ast$evt)\label{classmarlintpc_1_1ADCPulseConverterProcessor_a2f6a995fcd668c6cee4233193a7c8915}

\item 
virtual void {\bfseries end} ()\label{classmarlintpc_1_1ADCPulseConverterProcessor_a47a55f9a5cb2d9adf9f88121c8d7826b}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
int {\bf find\-Pulses} (lcio\-::\-Tracker\-Data $\ast$this\-Data, lcio\-::\-L\-C\-Collection\-Vec $\ast$this\-Collection, float Start\-Threshold)
\begin{DoxyCompactList}\small\item\em find pulses by threshold in the A\-D\-C information \end{DoxyCompactList}\item 
float {\bf calc\-Pulse\-Time} (lcio\-::\-Tracker\-Data $\ast$this\-Pulse)\label{classmarlintpc_1_1ADCPulseConverterProcessor_ade0afdc02b9a82906822a5f70770bfda}

\begin{DoxyCompactList}\small\item\em The time is just the centre of gravity of the pulse. \end{DoxyCompactList}\item 
float {\bf calc\-Pulse\-Charge} (lcio\-::\-Tracker\-Data $\ast$this\-Pulse)\label{classmarlintpc_1_1ADCPulseConverterProcessor_aadac93fb4ca0b8046ca304af2e7b5a4f}

\begin{DoxyCompactList}\small\item\em calculate the integrated charge of the given pulse by sum up all bins of the A\-D\-C spectrum \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
std\-::string {\bf \-\_\-input\-Col\-Name}\label{classmarlintpc_1_1ADCPulseConverterProcessor_a4f6e3a68af95e6a9849d177fa6edf08e}

\begin{DoxyCompactList}\small\item\em name of the collection, where input data are stored \end{DoxyCompactList}\item 
std\-::string {\bf \-\_\-output\-Pulse\-Col\-Name}\label{classmarlintpc_1_1ADCPulseConverterProcessor_a9c7fa65c0a6cca3dfa2732e2948fd8e7}

\begin{DoxyCompactList}\small\item\em name of the collection, where Tracker\-Pulse are stored \end{DoxyCompactList}\item 
int {\bf \-\_\-output\-Is\-Transient}\label{classmarlintpc_1_1ADCPulseConverterProcessor_abf2a3fc49f0a9ae386e6f98e3323a786}

\begin{DoxyCompactList}\small\item\em set the status which is set to the transient flag of the output collection it is an int instead of a boolean, because the processor parameter cannot be a boolean \end{DoxyCompactList}\item 
int {\bf \-\_\-force\-Spectrum\-Save}\label{classmarlintpc_1_1ADCPulseConverterProcessor_ad39b3fa8b28e65a952e59e547f2b6450}

\begin{DoxyCompactList}\small\item\em if not 0 the A\-D\-C spectrum will be saved for all pulses instead of only for pulses with quality !=0 it is an int instead of a boolean, bcause the processor parameter cannot be a boolean \end{DoxyCompactList}\item 
int {\bfseries \-\_\-min\-Pulse\-Data\-Size}\label{classmarlintpc_1_1ADCPulseConverterProcessor_a684ac4c71d22fc3a4abaa6f550853b0f}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Convert zero-\/suppressed A\-D\-C raw data to pulses. 

Runs on all channels without applying an additional threshold, no pedestal information needed. No pre-\/ and afterpulses are considered as the threshold is 0, so everything that is there is put into the pulse.

\subparagraph*{Input -\/ Prerequisites}

\begin{DoxyItemize}
\item Collection of zero suppressed Tracker\-Data \item The correct readoutfrequency set in the G\-E\-A\-R T\-P\-C\-Parameters\end{DoxyItemize}
\subparagraph*{Output}

Collection of Tracker\-Pulses //\-Collection of Tracker\-Data which belong to a pulse


\begin{DoxyParams}{Parameters}
{\em Input\-Collection\-Name} & name of the input Tracker\-Data collection \\
\hline
{\em Output\-Tracker\-Pulse\-Collection\-Name} & name of the output Tracker\-Pulse collection \\
\hline
{\em //} & Output\-Tracker\-Data\-Collection\-Name name of the output Tracker\-Data collection \\
\hline
{\em Force\-Spectrum\-Save} & if not 0 the A\-D\-C spectrum will be stored for all pulses\\
\hline
\end{DoxyParams}
\begin{DoxyAuthor}{Author}
Martin Killenberg, University of Bonn 
\end{DoxyAuthor}


\subsection{Member Function Documentation}
\index{marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor@{marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor}!find\-Pulses@{find\-Pulses}}
\index{find\-Pulses@{find\-Pulses}!marlintpc::ADCPulseConverterProcessor@{marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor}}
\subsubsection[{find\-Pulses}]{\setlength{\rightskip}{0pt plus 5cm}int marlintpc\-::\-A\-D\-C\-Pulse\-Converter\-Processor\-::find\-Pulses (
\begin{DoxyParamCaption}
\item[{lcio\-::\-Tracker\-Data $\ast$}]{this\-Data, }
\item[{lcio\-::\-L\-C\-Collection\-Vec $\ast$}]{this\-Collection, }
\item[{float}]{Start\-Threshold}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1ADCPulseConverterProcessor_a278dde69cd7f9dff58f330847c3f769e}


find pulses by threshold in the A\-D\-C information 


\begin{DoxyParams}{Parameters}
{\em this\-Data} & 'raw' data (non zero supressed, can also handle zero supressed data) \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
A\-D\-C\-Pulse\-Converter\-Processor.\-h\item 
A\-D\-C\-Pulse\-Converter\-Processor.\-cc\end{DoxyCompactItemize}
