\hypertarget{classRPCutProcessor}{\subsection{R\-P\-Cut\-Processor Class Reference}
\label{classRPCutProcessor}\index{R\-P\-Cut\-Processor@{R\-P\-Cut\-Processor}}
}


Cuts Reconstucted\-Particles(\-R\-Ps) from a collection (or from a list of R\-Ps held by another R\-P) based on several cut criteria.  




{\ttfamily \#include $<$R\-P\-Cut\-Processor.\-h$>$}



Inherits Processor.



\subsubsection{Detailed Description}
Cuts Reconstucted\-Particles(\-R\-Ps) from a collection (or from a list of R\-Ps held by another R\-P) based on several cut criteria. 

\subparagraph*{Input}

\begin{TabularC}{3}
\hline
Name &Type &Represents \\\cline{1-3}
Input\-R\-C\-P\-Collection &Reconstructed\-Particle &Collection to be cut \\\cline{1-3}
\end{TabularC}
\subparagraph*{Output}

\begin{TabularC}{3}
\hline
Name &Type &Represents \\\cline{1-3}
Output\-R\-C\-P\-Collection &Reconstructed\-Particle &If Write\-New\-Collection=true contains the R\-Ps that passed the cuts. \\\cline{1-3}
\end{TabularC}
\subparagraph*{Description}

Based on several criteria this processor removes R\-Ps from a collection, or if Sub\-Particle\-Lists = true then it removes R\-Ps held by R\-Ps in a collection. \par
 Depending on Write\-New\-Collection, the Output is either the original collection with the R\-Ps removed, or a new collection with the input collection remaining untouched. \par
 N\-O\-T\-E -\/ A track is cut if its Reconstructed\-Particle has no Track objects attached. \par
Most cuts follow a standard set of parameters\-: \begin{TabularC}{2}
\hline
{\bfseries a1\-\_\-\{Cut\-Name\}Enable} &If true the cut is enabled \\\cline{1-2}
{\bfseries a2\-\_\-\{Cut\-Name\}Cut\-Lower\-Than} &If true R\-Ps with a value lower than the cut value are cut, if false those higher than the cut value are cut. \\\cline{1-2}
{\bfseries a3\-\_\-\{Cut\-Name\}Cut\-Value} &The value of the cut \\\cline{1-2}
\end{TabularC}
(The letter and number index prefixed to each parameter are to ensure they stay together in the output of Marlin -\/x) The cuts that follow this scheme are\-: \begin{TabularC}{2}
\hline
Name&Description \\\cline{1-2}
&\\\cline{1-2}
Chi2\-Over\-D\-O\-F&Chi squared over degrees of freedom (Track\-::gethi2()) \\\cline{1-2}
D0&Track D0 (Track\-::get\-D0()) \\\cline{1-2}
D0\-Err&D0 Covariance (Track\-::get\-Cov\-Matrix()\mbox{[}0\mbox{]}) \\\cline{1-2}
Z0&Track Z0 (Track\-::get\-Z0()) \\\cline{1-2}
Z0\-Err&Z0 Covariance (Track\-::get\-Cov\-Matrix()\mbox{[}9\mbox{]}) \\\cline{1-2}
P\-T&Track Pt (r\-Phi projection of Track\-::get\-Momentum()) \\\cline{1-2}
\end{TabularC}
\subparagraph*{Subdetector hits}

The cut on subdetector hits relies on information in Track\-::get\-Subdetector\-Hit\-Numbers() this is an array. The processor is told what order the detectors are in this array by parameter \char`\"{}g2\-\_\-\-Sub\-Detector\-Names\char`\"{} which is the sting names of the detectors in the same order. The other parameters then use these names. \par
 \subparagraph*{M\-C P\-I\-D of Parents}

This cut uses M\-C information provided by the M\-C\-Particle\-Relation collection to cut particles whose parents have a P\-I\-D in the list provided by parameter \char`\"{}h2\-\_\-\-Cut\-P\-I\-D\-S\char`\"{} \par
 \subparagraph*{Bad parameters cut}

If enabled by \char`\"{}i1\-\_\-\-Bad\-Parameters\-Enable\char`\"{} this cut removes tracks with nan covariances and parameters. \par
 \subparagraph*{M\-C Vertex cut}

Experimental M\-C Cut -\/ most likely removed in next release \begin{DoxyAuthor}{Author}
Ben Jeffery (\href{mailto:b.jeffery1@physics.ox.ac.uk}{\tt b.\-jeffery1@physics.\-ox.\-ac.\-uk}) 
\end{DoxyAuthor}


The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
R\-P\-Cut\-Processor.\-h\end{DoxyCompactItemize}
