\section{marlin\-:\-:Simple\-Fast\-M\-C\-Processor Class Reference}
\label{classmarlin_1_1SimpleFastMCProcessor}\index{marlin\-::\-Simple\-Fast\-M\-C\-Processor@{marlin\-::\-Simple\-Fast\-M\-C\-Processor}}


A simple smearing \char`\"{}\-Monte Carlo\char`\"{} processor.  




{\ttfamily \#include $<$Simple\-Fast\-M\-C\-Processor.\-h$>$}

Inheritance diagram for marlin\-:\-:Simple\-Fast\-M\-C\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classmarlin_1_1SimpleFastMCProcessor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual {\bf Processor} $\ast$ {\bf new\-Processor} ()
\begin{DoxyCompactList}\small\item\em Returns a new instance of the processor. \end{DoxyCompactList}\item 
virtual void {\bf init} ()\label{classmarlin_1_1SimpleFastMCProcessor_aea0d8a3a1bde4211398554449ba61e34}

\begin{DoxyCompactList}\small\item\em Initializes ... \end{DoxyCompactList}\item 
virtual void {\bf process\-Run\-Header} (L\-C\-Run\-Header $\ast$run)\label{classmarlin_1_1SimpleFastMCProcessor_ad0ff8519d0da1edb7e26017292c0260e}

\begin{DoxyCompactList}\small\item\em Called for every run. \end{DoxyCompactList}\item 
virtual void {\bf process\-Event} (L\-C\-Event $\ast$evt)\label{classmarlin_1_1SimpleFastMCProcessor_a89be466c21572b3f5f164f94428b3812}

\begin{DoxyCompactList}\small\item\em Updates all registered conditions handlers and adds the data to the event. \end{DoxyCompactList}\item 
virtual void {\bf check} (L\-C\-Event $\ast$evt)\label{classmarlin_1_1SimpleFastMCProcessor_ad995c551231263c63cb202ad61950cdd}

\begin{DoxyCompactList}\small\item\em Creates some checkplots. \end{DoxyCompactList}\item 
virtual void {\bf end} ()\label{classmarlin_1_1SimpleFastMCProcessor_a081c77fd415a86f8a69bb19ae68e4088}

\begin{DoxyCompactList}\small\item\em Called after data processing for clean up. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
std\-::string {\bf \-\_\-input\-Collection\-Name}\label{classmarlin_1_1SimpleFastMCProcessor_ae29cdb128e603e2b4d62d704961bc71a}

\begin{DoxyCompactList}\small\item\em Input collection name. \end{DoxyCompactList}\item 
std\-::string {\bf \-\_\-reco\-Particle\-Collection\-Name}\label{classmarlin_1_1SimpleFastMCProcessor_a5ed99f3c49b7a6f335271b5764776f9a}

\begin{DoxyCompactList}\small\item\em Ouput collection names. \end{DoxyCompactList}\item 
std\-::string {\bfseries \-\_\-mc\-Truth\-Collection\-Name}\label{classmarlin_1_1SimpleFastMCProcessor_a961dd76d808a16b91f2f583323a95e01}

\item 
float {\bf \-\_\-momentum\-Cut}\label{classmarlin_1_1SimpleFastMCProcessor_a2e78704c76f9fd80b0a3ee011aa700f4}

\begin{DoxyCompactList}\small\item\em Momentum cut in Ge\-V. \end{DoxyCompactList}\item 
Float\-Vec {\bf \-\_\-init\-Charged\-Res}\label{classmarlin_1_1SimpleFastMCProcessor_a95f75168ad9e57971d45e72ab853562e}

\begin{DoxyCompactList}\small\item\em Resolutions of charged particles. \end{DoxyCompactList}\item 
Float\-Vec {\bf \-\_\-init\-Photon\-Res}\label{classmarlin_1_1SimpleFastMCProcessor_a84dbc1ab0b95f32320c09e9c486d4d5b}

\begin{DoxyCompactList}\small\item\em Resolutions of photons. \end{DoxyCompactList}\item 
Float\-Vec {\bf \-\_\-init\-Neutral\-Hadron\-Res}\label{classmarlin_1_1SimpleFastMCProcessor_a3c936c7e00a00ec2f76440581dcfbd0a}

\begin{DoxyCompactList}\small\item\em Resolutions of photons. \end{DoxyCompactList}\item 
{\bf I\-Reco\-Particle\-Factory} $\ast$ {\bf \-\_\-factory}\label{classmarlin_1_1SimpleFastMCProcessor_ad681f56a4e98deccde45478de15a2154}

\begin{DoxyCompactList}\small\item\em The particle factory. \end{DoxyCompactList}\item 
int {\bfseries \-\_\-n\-Run}\label{classmarlin_1_1SimpleFastMCProcessor_a8f952ad275e75f1fd10239a7126ec8f4}

\item 
int {\bfseries \-\_\-n\-Evt}\label{classmarlin_1_1SimpleFastMCProcessor_a34ec1737196b7e31c1c28c809d67f6fe}

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


\subsection{Detailed Description}
A simple smearing \char`\"{}\-Monte Carlo\char`\"{} processor. 

It creates Reconstructed\-Particles from M\-C\-Particles according to the resolution that is specified for the particle type, one of\-: 
\begin{DoxyItemize}
\item photon 
\item charged\-: e+-\/,mu+-\/,pi+-\/,K+-\/,p+-\/,.... 
\item neutral hadron\-: K0\-L, n, Lambda0,... 
\end{DoxyItemize}The resolutions for charged particles are given as delta(1/\-P) for a certain polar angle range (mapped to [0.,pi/2.]), e.\-g. \par
 {\bfseries Charged\-Resolution ~ .7e-\/5 ~ 0. ~ 3.\-141593/2. }\par
 sets the resolution for all charged particles to 0.\-7$\ast$10$^\wedge$-\/5.\par
 Specifying different resolutions for different polar angle ranges allows to mimic degrading detector performance in the very forward region. \par
 The energy of the charged Reconstructed\-Particles is set from the \char`\"{}measured\char`\"{} momentum using the energy momentum relation for electrons and muons and assuming the pion mass for all other charged tracks.\par
 The resolutions for neutral particles are given as A and B for a certain polar angle range, where d\-E/\-E = A \char`\"{}+\char`\"{} B / sqrt(E/\-Ge\-V), e.\-g. \par
 {\bfseries Neutral\-Hadron\-Resolution ~ 0.\-03 ~ .30 ~ 0. ~ 3.\-141593/2. }\par
 sets the resolution for all neutral hadrons to 3\% \char`\"{}+\char`\"{} 30\% / sqrt( E /\-Ge\-V ). The resolution for gammas is specified in {\bfseries Photon\-Resolution}\par
 No Reconstructed\-Particles are created if there is no resolution defined at that polar angle, e.\-g.\par
 {\bfseries Photon\-Resolution ~ .7e-\/5 ~ 0.\-083 ~ 3.\-141593/2. }\par
 effectively limits the acceptance region for photons to theta $>$ 83mrad.\par


A collection of L\-C\-Relations, called \char`\"{}\-M\-C\-Truth\-Mapping\char`\"{} holds the relation between the Reconstructed\-Particles and their proper M\-C\-Particles.

\subparagraph*{Input -\/ Prerequisites}

A collection of M\-C\-Particles (the M\-C\-P\-Article collection).

\subparagraph*{Output}


\begin{DoxyItemize}
\item {\bfseries Reconstructed\-Particles}\-: the collection of reconstructed particles 
\item {\bfseries M\-C\-Truth\-Mapping}\-: holds L\-C\-Relations that map the Reconstructed\-Particles to their proper M\-C\-Particles  
\end{DoxyItemize}


\begin{DoxyParams}{Parameters}
{\em Charged\-Resolution} & Resolution of charged particles in polar angle range\-: d(1/\-P) th\-\_\-min th\-\_\-max \\
\hline
{\em Input\-Collection\-Name} & Name of the M\-C\-Particle input collection \\
\hline
{\em Momentum\-Cut} & No reconstructed particles are produced for smaller momenta (in [Ge\-V]) \\
\hline
{\em Neutral\-Hadron\-Resolution} & Resolution d\-E/\-E=A+\-B/sqrt(E/\-Ge\-V) of neutral hadrons in polar angle range\-: A B th\-\_\-min th\-\_\-max \\
\hline
{\em Photon\-Resolution} & Resolution d\-E/\-E=A+\-B/sqrt(E/\-Ge\-V) of photons in polar angle range\-: A B th\-\_\-min th\-\_\-max\\
\hline
{\em Reco\-Particle\-Collection\-Name} & default is \char`\"{}\-Reconstructed\-Particles\char`\"{} \\
\hline
{\em M\-C\-Truth\-Mapping\-Collection\-Name} & default is \char`\"{}\-M\-C\-Truth\-Mapping\char`\"{}\\
\hline
\end{DoxyParams}
\begin{DoxyAuthor}{Author}
F. Gaede, D\-E\-S\-Y 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{Simple\-Fast\-M\-C\-Processor.\-h}{p.}{SimpleFastMCProcessor_8h_source},v 1.\-4 2007-\/07-\/04 12\-:13\-:06 gaede Exp 
\end{DoxyParagraph}


\subsection{Member Function Documentation}
\index{marlin\-::\-Simple\-Fast\-M\-C\-Processor@{marlin\-::\-Simple\-Fast\-M\-C\-Processor}!new\-Processor@{new\-Processor}}
\index{new\-Processor@{new\-Processor}!marlin::SimpleFastMCProcessor@{marlin\-::\-Simple\-Fast\-M\-C\-Processor}}
\subsubsection[{new\-Processor}]{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf Processor}$\ast$ marlin\-::\-Simple\-Fast\-M\-C\-Processor\-::new\-Processor (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}\label{classmarlin_1_1SimpleFastMCProcessor_a2bbffb6fdd7220f46f3af6c1f487259b}


Returns a new instance of the processor. 



Implements {\bf marlin\-::\-Processor} \doxyref{}{p.}{classmarlin_1_1Processor_a75ba6b66644e5273a896053df31aac4d}.



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