\section{marlintpc\-:\-:Hit\-And\-Track\-Counter\-Processor Class Reference}
\label{classmarlintpc_1_1HitAndTrackCounterProcessor}\index{marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor@{marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor}}


Count hits in events and tracks, and tracks per event.  




{\ttfamily \#include $<$Hit\-And\-Track\-Counter\-Processor.\-h$>$}

Inheritance diagram for marlintpc\-:\-:Hit\-And\-Track\-Counter\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.951220cm]{classmarlintpc_1_1HitAndTrackCounterProcessor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual Processor $\ast$ {\bf new\-Processor} ()\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a5e295efd4d93b25b881ce9f6f0d53180}

\begin{DoxyCompactList}\small\item\em The \doxyref{new\-Processor()}{p.}{classmarlintpc_1_1HitAndTrackCounterProcessor_a5e295efd4d93b25b881ce9f6f0d53180} function does not make sense for this template class, so it throws an {\ttfamily lcio\-::\-Exception}. \end{DoxyCompactList}\item 
virtual void {\bf init} ()\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a23401c9011dfd9260452b63e9971e3b0}

\begin{DoxyCompactList}\small\item\em Register the A\-I\-D\-A histograms at the A\-I\-D\-A\-Processor. \end{DoxyCompactList}\item 
virtual void {\bfseries process\-Run\-Header} (lcio\-::\-L\-C\-Run\-Header $\ast$run)\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a60dff8236757ba479edb1d0558974788}

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

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static bool {\bfseries compare\-Hit} (const std\-::pair$<$ Tracker\-Hit $\ast$, double $>$ \&pair1, const std\-::pair$<$ Tracker\-Hit $\ast$, double $>$ \&pair2)\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a4e6ffba1d186ab7b5e270cd88a18dcdd}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
std\-::string {\bf \-\_\-tracks\-Col\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a0816509aea82d70c7034759e45f23d63}

\begin{DoxyCompactList}\small\item\em the name of the input tracks collection \end{DoxyCompactList}\item 
std\-::string {\bf \-\_\-hits\-Col\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_af76c938d53e55cb09d4467720e3caf66}

\begin{DoxyCompactList}\small\item\em the name of the input hits collection \end{DoxyCompactList}\item 
const std\-::string {\bfseries \-\_\-hits\-Per\-Track\-Histos\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_aa320a425cfd8da4c3b40d2e9ceef70db}

\item 
const std\-::string {\bfseries \-\_\-hits\-Per\-Event\-Histos\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a325a61f7f46f0de63091a3a9bb55e6b5}

\item 
const std\-::string {\bfseries \-\_\-tracks\-Per\-Event\-Histos\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a2e7da93dcf955de733fa64a0f91325d1}

\item 
const std\-::string {\bfseries \-\_\-hits\-Per\-Track\-Length\-Histos\-Name}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_aa138129cda2769f109f5f53a3101507e}

\item 
A\-I\-D\-A\-::\-I\-Histogram1\-D $\ast$ {\bf \-\_\-hits\-Per\-Event\-Histo}
\begin{DoxyCompactList}\small\item\em For the following histograms a z binning does not make sense. \end{DoxyCompactList}\item 
A\-I\-D\-A\-::\-I\-Histogram1\-D $\ast$ {\bf \-\_\-tracks\-Per\-Event\-Histo}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_aa6dfe860bbad202c173e3c764f222166}

\begin{DoxyCompactList}\small\item\em number of tracks per event \end{DoxyCompactList}\item 
double {\bf \-\_\-max\-Hits\-Per\-Track}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a7186d85533065834ea1082c33e9cd3b6}

\begin{DoxyCompactList}\small\item\em Maximum value in Hits\-Per\-Track histogram. \end{DoxyCompactList}\item 
double {\bf \-\_\-max\-Hits\-Per\-Event}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_aa055501bbe7d6dcec19acfc865428769}

\begin{DoxyCompactList}\small\item\em Maximum value in Hits\-Per\-Event histogram. \end{DoxyCompactList}\item 
double {\bf \-\_\-max\-Tracks\-Per\-Event}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_aa81a2d17aabe93cb4116c8a7ecd0de6a}

\begin{DoxyCompactList}\small\item\em Maximum value in Tracks\-Per\-Event histogram. \end{DoxyCompactList}\item 
double {\bf \-\_\-max\-Hits\-Per\-Track\-Length}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a64306cc3b42f5211210fd74d9c77f315}

\begin{DoxyCompactList}\small\item\em Maximum value in Tracks\-Per\-Event histogram. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
static const unsigned int {\bf \-\_\-hits\-Per\-Track\-Histos\-Index} = 0\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a2380800959b188cd1e7012a97206cddc}

\begin{DoxyCompactList}\small\item\em The index of the template parameter for the hits\-Per\-Track histos We want to have these values divided into z bins. \end{DoxyCompactList}\item 
static const unsigned int {\bfseries \-\_\-hits\-Per\-Track\-Length\-Histos\-Index} = 1\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a5ec64ec92c52ccbc5f845e1d0fe55ce2}

\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Count hits in events and tracks, and tracks per event. 

Fill the reults into A\-I\-D\-A histograms.

This Processor is derrived from \doxyref{Z\-Bin\-Template\-Processor}{p.}{classmarlintpc_1_1ZBinTemplateProcessor} to have the number of hits per track binned in z. See also processor parameters of \doxyref{Z\-Bin\-Template\-Processor}{p.}{classmarlintpc_1_1ZBinTemplateProcessor}.

\subparagraph*{Input -\/ Prerequisites}

\begin{DoxyItemize}
\item A collection of reconstructed tracks \par
 To have the hits per track L\-C\-I\-O\-::\-T\-R\-B\-I\-T\-\_\-\-H\-I\-T\-S has to be set, so the hits are stored. \item A collection of reconstructed hits\end{DoxyItemize}
\subparagraph*{Output}

\begin{DoxyItemize}
\item Histograms with number of hits per track \item Histograms with number of hits per event \item Histograms with number of tracks per event \item Histograms with number of hits per track length\end{DoxyItemize}

\begin{DoxyParams}{Parameters}
{\em Input\-Tracks} & Name of input Tracks collection (default\-: T\-P\-C\-Tracks) \\
\hline
{\em Input\-Hits} & Name of input Tracker\-Hits collection (default\-: T\-P\-C\-Hits) \\
\hline
{\em Max\-Hits\-Per\-Track} & Maximum value in Hits\-Per\-Track histogram (default\-: 20 ) \\
\hline
{\em Max\-Hits\-Per\-Event} & Maximum value in Hits\-Per\-Event histogram (default\-: 50 ) \\
\hline
{\em Max\-Tracks\-Per\-Event} & Maximum value in Tracks\-Per\-Event histogram (default\-: 10 )\\
\hline
\end{DoxyParams}
\begin{DoxyAuthor}{Author}
Martin Killenberg, University of Bonn 
\end{DoxyAuthor}


\subsection{Member Data Documentation}
\index{marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor@{marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor}!\-\_\-hits\-Per\-Event\-Histo@{\-\_\-hits\-Per\-Event\-Histo}}
\index{\-\_\-hits\-Per\-Event\-Histo@{\-\_\-hits\-Per\-Event\-Histo}!marlintpc::HitAndTrackCounterProcessor@{marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor}}
\subsubsection[{\-\_\-hits\-Per\-Event\-Histo}]{\setlength{\rightskip}{0pt plus 5cm}A\-I\-D\-A\-::\-I\-Histogram1\-D$\ast$ marlintpc\-::\-Hit\-And\-Track\-Counter\-Processor\-::\-\_\-hits\-Per\-Event\-Histo\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1HitAndTrackCounterProcessor_a9a2b7e476c44ed8506cb14f76525ea64}


For the following histograms a z binning does not make sense. 

They are handled in the usual way without using the Z\-Bin\-Template\-Processor.\-number of hits per event 

Referenced by init().



The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Hit\-And\-Track\-Counter\-Processor.\-h\item 
Hit\-And\-Track\-Counter\-Processor.\-cc\end{DoxyCompactItemize}
