\section{marlintpc\-:\-:Primary\-Ionisation\-Processor Class Reference}
\label{classmarlintpc_1_1PrimaryIonisationProcessor}\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}


Processor to create primary ionisation from M\-C\-Particles passing the T\-P\-C.  




{\ttfamily \#include $<$Primary\-Ionisation\-Processor.\-h$>$}

Inheritance diagram for marlintpc\-:\-:Primary\-Ionisation\-Processor\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classmarlintpc_1_1PrimaryIonisationProcessor}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual Processor $\ast$ {\bfseries new\-Processor} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_aa2d553cbdfd10e7d3a7c811f3ccab229}

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

\begin{DoxyCompactList}\small\item\em Called at the begin of the job before anything is read. \end{DoxyCompactList}\item 
virtual void {\bf process\-Run\-Header} (lcio\-::\-L\-C\-Run\-Header $\ast$run)\label{classmarlintpc_1_1PrimaryIonisationProcessor_afe678f1a05ba66ef5deebdd800928e2c}

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

\begin{DoxyCompactList}\small\item\em Called for every event -\/ the working horse. \end{DoxyCompactList}\item 
virtual void {\bf Set\-Particle\-Parameters} (lcio\-::\-M\-C\-Particle $\ast$mcparticle)
\item 
virtual void {\bf Initialize\-Track\-Point} ()
\item 
virtual void {\bf Calculate\-Number\-Of\-Electrons} ()
\item 
virtual void {\bfseries Calculate\-Number\-Of\-Clusters} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad9b6327713e054bfd71d5c2ac8d73b55}

\item 
virtual void {\bfseries Read\-E\-Per\-Cluster\-Info\-File} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_a3e92e5c43b50ceb4cfd74f33d4eef3ac}

\item 
virtual void {\bfseries Read\-Cluster\-Density\-File} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_a61f62c335b222cfed932e022d8041700}

\item 
virtual void {\bf Calculate\-Track\-Pointwith\-Bfield} ()
\item 
virtual void {\bf Calculate\-Track\-Pointwithout\-Bfield} ()
\item 
int {\bfseries Get\-Total\-Number\-Of\-Electrons} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_a5ce2308316469f6867767e0b95b218b0}

\item 
virtual void {\bf Calculate\-Cluster\-Distance} ()
\item 
virtual void {\bf Calculate\-Energy\-Loss} ()
\item 
virtual void {\bf Rotate\-To\-Track} (double x, double y, double z)
\item 
virtual void {\bf Rotate\-To\-Delta} (double x, double y, double z)
\item 
virtual void {\bf Multiple\-Scattering} (double phi, double theta)
\item 
virtual void {\bfseries Set\-Next\-Start\-Point} ()\label{classmarlintpc_1_1PrimaryIonisationProcessor_a8e6265a063d74d629703ea232b978996}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
std\-::string {\bf \-\_\-input\-Collection\-Name}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a6298bb68d6dfa3cf0a98c313a27e46f6}

\begin{DoxyCompactList}\small\item\em Name of input collection. \end{DoxyCompactList}\item 
std\-::string {\bf \-\_\-output\-Collection\-Name}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a85d82265bca0de8536a394a715835fea}

\begin{DoxyCompactList}\small\item\em Name of output collection. \end{DoxyCompactList}\item 
std\-::string {\bf clusterdensityfile}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a843387e89f1814d42deac5a02d044e5b}

\begin{DoxyCompactList}\small\item\em File with parametrisation of cluster density. \end{DoxyCompactList}\item 
std\-::string {\bf eperclusterfile}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a30bbc2994d70ef1eb96b0a42e7275d2b}

\begin{DoxyCompactList}\small\item\em File with parametrisation of electrons per cluster. \end{DoxyCompactList}\item 
int {\bfseries \-\_\-n\-Run}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a293225d54bf5f11e87ee4f8c12b7721f}

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

\item 
float {\bf \-\_\-\-T\-P\-C\-Radius}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a70155438a2f90cfc27196015ff6d8050}

\begin{DoxyCompactList}\small\item\em Outer radius of the T\-P\-C. \end{DoxyCompactList}\item 
float {\bf \-\_\-\-T\-P\-C\-Inner\-Radius}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a60f461d551789175a173f7ed3dd261a9}

\begin{DoxyCompactList}\small\item\em Inner radius of the T\-P\-C. \end{DoxyCompactList}\item 
float {\bf \-\_\-\-B\-Field}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ab52cf7cdbf6031c363f445b33db80982}

\begin{DoxyCompactList}\small\item\em Magnetic field strength. \end{DoxyCompactList}\item 
float {\bfseries \-\_\-distance}\label{classmarlintpc_1_1PrimaryIonisationProcessor_af81d2866fe65bf1f0892dbffe9b75e44}

\item 
int {\bfseries \-\_\-transient}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aa9ab3127958dc608b511cde0c64f0b3a}

\item 
bool {\bfseries \-\_\-group\-Electrons}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a0ca3d2e4e1fce9b5d69110112a5b5770}

\item 
int {\bf Curler}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a30698ef38c8f7eff96c44aa372bc7dba}

\begin{DoxyCompactList}\small\item\em For full simulation of Curler set to 0, otherwise standard 1 means simplified treatment of low momentum particles. \end{DoxyCompactList}\item 
double {\bf aheed} [8]
\begin{DoxyCompactList}\small\item\em Fitparameters for calculation of \# clusters from Parameterisation from H\-E\-E\-D. \end{DoxyCompactList}\item 
int {\bfseries numberofelectrons}\label{classmarlintpc_1_1PrimaryIonisationProcessor_abd4e64d8136a19efac64a182f6843f01}

\item 
double {\bfseries numberofclusters}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a3232c01b27bc981f8083b060b4767616}

\item 
double {\bfseries clusterdistance}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a25c61d5dd493a7f04d7005c39018af98}

\item 
std\-::vector$<$ double $>$ {\bf clusterelectrons} [2]\label{classmarlintpc_1_1PrimaryIonisationProcessor_a237be8fd22c8925c46af81140ff5d131}

\begin{DoxyCompactList}\small\item\em For calculation of \# electrons per cluster from Parameterisation from H\-E\-E\-D. \end{DoxyCompactList}\item 
double {\bfseries \-\_\-clusterprobcutoff}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a3ea849bcd301ad7432cbbfb1cd81841a}

\item 
int {\bf In\-T\-P\-C}
\item 
double {\bf xa}
\item 
double {\bfseries ya}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a1d590455c4ae432973d18f9124cdb7d9}

\item 
double {\bfseries za}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aec3a3ab09146bac6d76baa8dee96ff1d}

\item 
double {\bf xv}
\item 
double {\bfseries yv}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a1ba371e82671ed0a169ba2877c7348bf}

\item 
double {\bfseries zv}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aad0d704d3fd732d34bb8828efca34401}

\item 
double {\bf xend}
\item 
double {\bfseries yend}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aa8d7b03c63f21e4628471924d24e7c5a}

\item 
double {\bfseries zend}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a45e020c2462120011d29329bc02ba677}

\item 
double {\bfseries tend}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aab5f4df9e4e9abdbbc3fe4d1f7bb108c}

\item 
double {\bf x\-\_\-e}
\item 
double {\bfseries y\-\_\-e}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ac48a3a8b1825a6be6bfc8802e992b4f7}

\item 
double {\bfseries z\-\_\-e}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad225e0ea931db37dfb7c6235dd4bbd9e}

\item 
double {\bfseries t\-\_\-e}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a83d543017dc2145366a015136d0b2786}

\item 
double {\bf dx}
\item 
double {\bfseries dy}\label{classmarlintpc_1_1PrimaryIonisationProcessor_abaeb394950a7c8d53a98b1fdfd38ef2b}

\item 
double {\bfseries dz}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a5476828147a27c743336d4f43ed06e2f}

\item 
double {\bfseries dr}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a1adec8d6a4e03afc227b0b2f5cc4a675}

\item 
double {\bf dp}
\item 
double {\bf px}
\item 
double {\bfseries py}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a23ba84bde3b210d047c4b9570d5765ed}

\item 
double {\bfseries pz}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a64b6789564879148dfba1d83a5c475d3}

\item 
double {\bfseries pt}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad2952c2096fa71b05f8d2436586100c8}

\item 
double {\bfseries p}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a76916c8ac14a3135940f392e7f7a9695}

\item 
double {\bfseries p\-\_\-const}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a14e599909472e209a694ac2ca4a22e33}

\item 
double {\bfseries energy}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aa6574484f5000ce2e80d9df91d64a3c4}

\item 
double {\bfseries mass}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a397ac835efa9ed7f3a3faec87bd92986}

\item 
double {\bfseries charge}\label{classmarlintpc_1_1PrimaryIonisationProcessor_afd0ef4da934825b309b0f2a3f2b4bbfd}

\item 
int {\bfseries pdg}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a8b35938d9f0a25157c6b7f0a185c9b27}

\item 
double {\bfseries delta\-\_\-x}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad27f21594463154afd2a58a21cf9ad10}

\item 
double {\bfseries delta\-\_\-y}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad7588f52c9ed53def7918b408b180919}

\item 
double {\bfseries delta\-\_\-z}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a42763f8f0cbbb1f99162342f80d6e628}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Processor to create primary ionisation from M\-C\-Particles passing the T\-P\-C. 

\subparagraph*{Input -\/ Prerequisites}

Collection of M\-C\-Particles

\subparagraph*{Output}

Collection of Sim\-Tracker\-Hits


\begin{DoxyParams}{Parameters}
{\em Input\-Collection\-Name} & Name of input collection, M\-C\-Particles \\
\hline
{\em Output\-Collection\-Name} & Name of output collection, Sim\-Tracker\-Hits \\
\hline
{\em Transient} & If not 0 the output collection is set transient \\
\hline
{\em Output\-Type} & If not 0 all ions in the T\-P\-C are returned \\
\hline
{\em Full\-Curler} & Switch detailed treatment of curlers on or off \\
\hline
{\em Cluster\-Info} & Path to file containing information on ionisation clusters (\#e-\/ in cluster) \\
\hline
{\em Cluster\-Prob\-Cutoff} & (optional) For Cluster\-Info file\-: set this to a value (very) slightly smaller than where the integrated probability is cut off \\
\hline
{\em Cluster\-Density\-File} & (optional) Use user-\/defined file with heed parametrisation of the cluster density \\
\hline
{\em Group\-Electrons} & Flag whether to group electrons at the same position to a single hit, default\-: false \par
 W\-A\-R\-N\-I\-N\-G\-: Turning on the {\ttfamily Group\-Electrons} flag currently breaks the default digitisation chain (\doxyref{Drift\-Processor}{p.}{classmarlintpc_1_1DriftProcessor} and \doxyref{G\-E\-M\-Processor}{p.}{classmarlintpc_1_1GEMProcessor}). It only works with the \doxyref{Mokka\-To\-Voxel\-Processor}{p.}{classmarlintpc_1_1MokkaToVoxelProcessor}. \\
\hline
\end{DoxyParams}
\begin{DoxyAuthor}{Author}
Astrid Muennich 
\end{DoxyAuthor}


\subsection{Member Function Documentation}
\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Calculate\-Cluster\-Distance@{Calculate\-Cluster\-Distance}}
\index{Calculate\-Cluster\-Distance@{Calculate\-Cluster\-Distance}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Calculate\-Cluster\-Distance}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Calculate\-Cluster\-Distance (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a3e3ec71e56d1f56d2092666da7b785e3}
distributes number of electrons randomly along track segment. 

Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Calculate\-Energy\-Loss@{Calculate\-Energy\-Loss}}
\index{Calculate\-Energy\-Loss@{Calculate\-Energy\-Loss}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Calculate\-Energy\-Loss}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Calculate\-Energy\-Loss (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_aa128631464ca5b5f4c6bf05ae6613606}
Calculates energy loss for helix. 

References dp.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Calculate\-Number\-Of\-Electrons@{Calculate\-Number\-Of\-Electrons}}
\index{Calculate\-Number\-Of\-Electrons@{Calculate\-Number\-Of\-Electrons}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Calculate\-Number\-Of\-Electrons}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Calculate\-Number\-Of\-Electrons (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ac123892c83832ebf2d2564ab1986fabe}
Determines number of electrons on track segment using parametrisation obtained with H\-E\-E\-D. 

References clusterelectrons.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Calculate\-Track\-Pointwith\-Bfield@{Calculate\-Track\-Pointwith\-Bfield}}
\index{Calculate\-Track\-Pointwith\-Bfield@{Calculate\-Track\-Pointwith\-Bfield}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Calculate\-Track\-Pointwith\-Bfield}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Calculate\-Track\-Pointwith\-Bfield (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a79386544519b644d4a9600c882587aaf}
Calculates end point of track segment with magnetic field. 

References \-\_\-\-B\-Field, dp, px, xa, and xend.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Calculate\-Track\-Pointwithout\-Bfield@{Calculate\-Track\-Pointwithout\-Bfield}}
\index{Calculate\-Track\-Pointwithout\-Bfield@{Calculate\-Track\-Pointwithout\-Bfield}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Calculate\-Track\-Pointwithout\-Bfield}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Calculate\-Track\-Pointwithout\-Bfield (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a4f77b8199da60143e01958c2c945f4ea}
Calculates end point of track segment without magnetic field. 

References dx, px, xa, and xend.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Initialize\-Track\-Point@{Initialize\-Track\-Point}}
\index{Initialize\-Track\-Point@{Initialize\-Track\-Point}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Initialize\-Track\-Point}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Initialize\-Track\-Point (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a6816df4f525ed882d5bddd08d0c26b02}
Calculates parameters for helix like radius, so tracks can be curled if magnetic field is present. 

References xa, and xend.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Multiple\-Scattering@{Multiple\-Scattering}}
\index{Multiple\-Scattering@{Multiple\-Scattering}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Multiple\-Scattering}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Multiple\-Scattering (
\begin{DoxyParamCaption}
\item[{double}]{phi, }
\item[{double}]{theta}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_abe9ac2854466476ef2aa459ea608f406}
Multiple scattering for delta rays. 

References Rotate\-To\-Delta().



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Rotate\-To\-Delta@{Rotate\-To\-Delta}}
\index{Rotate\-To\-Delta@{Rotate\-To\-Delta}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Rotate\-To\-Delta}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Rotate\-To\-Delta (
\begin{DoxyParamCaption}
\item[{double}]{x, }
\item[{double}]{y, }
\item[{double}]{z}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a0e87f539f2737d5f5323e6892b4528ea}
Rotation for delta rays. 

Referenced by Multiple\-Scattering().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Rotate\-To\-Track@{Rotate\-To\-Track}}
\index{Rotate\-To\-Track@{Rotate\-To\-Track}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Rotate\-To\-Track}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Rotate\-To\-Track (
\begin{DoxyParamCaption}
\item[{double}]{x, }
\item[{double}]{y, }
\item[{double}]{z}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a81624d5cfcbe1a177cadb10f5b1d26a2}
Rotation for delta rays. 

References px.



Referenced by process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!Set\-Particle\-Parameters@{Set\-Particle\-Parameters}}
\index{Set\-Particle\-Parameters@{Set\-Particle\-Parameters}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{Set\-Particle\-Parameters}]{\setlength{\rightskip}{0pt plus 5cm}void marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-Set\-Particle\-Parameters (
\begin{DoxyParamCaption}
\item[{lcio\-::\-M\-C\-Particle $\ast$}]{mcparticle}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_adc75d2db61d35279092aaa329c72aef0}
Reads in values from generator particle needed for track, like vertex, energy, momentum etc. 

References px, and xv.



Referenced by process\-Event().



\subsection{Member Data Documentation}
\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!aheed@{aheed}}
\index{aheed@{aheed}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{aheed}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::aheed[8]\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a77808c4db11e84828bd38ff19a0a30ec}


Fitparameters for calculation of \# clusters from Parameterisation from H\-E\-E\-D. 

Random generator for landau and gaussian. 

Referenced by init().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!dp@{dp}}
\index{dp@{dp}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{dp}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::dp\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ad5fd0785970bbce17b6d4b96ad4d1aa8}
Scale factor for radius in case of d\-E/dx. 

Referenced by Calculate\-Energy\-Loss(), Calculate\-Track\-Pointwith\-Bfield(), init(), and process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!dx@{dx}}
\index{dx@{dx}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{dx}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::dx\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a2e0f2bb65543aba5c67286999f82b8b2}
Length of track segment. 

Referenced by Calculate\-Track\-Pointwithout\-Bfield(), and init().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!In\-T\-P\-C@{In\-T\-P\-C}}
\index{In\-T\-P\-C@{In\-T\-P\-C}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{In\-T\-P\-C}]{\setlength{\rightskip}{0pt plus 5cm}int marlintpc\-::\-Primary\-Ionisation\-Processor\-::\-In\-T\-P\-C\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a168a72e51df5ea9dfe5757d319c9f2e4}
\#e-\/ in one event 

Referenced by init(), and process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!px@{px}}
\index{px@{px}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{px}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::px\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a718f2dff9b4812682a81e900a00d3fa5}
Particle impulses. 

Referenced by Calculate\-Track\-Pointwith\-Bfield(), Calculate\-Track\-Pointwithout\-Bfield(), init(), process\-Event(), Rotate\-To\-Track(), and Set\-Particle\-Parameters().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!x\-\_\-e@{x\-\_\-e}}
\index{x\-\_\-e@{x\-\_\-e}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{x\-\_\-e}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::x\-\_\-e\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_afcc63b1cc00efb20e6c834302469dce1}
e-\/ coordinate on track segment. \index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!xa@{xa}}
\index{xa@{xa}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{xa}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::xa\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_ae1e8d04d154cdb71f51af5df33520258}
Start point of track segment. 

Referenced by Calculate\-Track\-Pointwith\-Bfield(), Calculate\-Track\-Pointwithout\-Bfield(), init(), and Initialize\-Track\-Point().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!xend@{xend}}
\index{xend@{xend}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{xend}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::xend\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a61df1b6957443b403a6beeab9bbbabb3}
End point of track segment. 

Referenced by Calculate\-Track\-Pointwith\-Bfield(), Calculate\-Track\-Pointwithout\-Bfield(), init(), Initialize\-Track\-Point(), and process\-Event().

\index{marlintpc\-::\-Primary\-Ionisation\-Processor@{marlintpc\-::\-Primary\-Ionisation\-Processor}!xv@{xv}}
\index{xv@{xv}!marlintpc::PrimaryIonisationProcessor@{marlintpc\-::\-Primary\-Ionisation\-Processor}}
\subsubsection[{xv}]{\setlength{\rightskip}{0pt plus 5cm}double marlintpc\-::\-Primary\-Ionisation\-Processor\-::xv\hspace{0.3cm}{\ttfamily [protected]}}\label{classmarlintpc_1_1PrimaryIonisationProcessor_a1c6a6c6a20c93fee6d307d246c947ea8}
Vertex of particle. 

Referenced by init(), process\-Event(), and Set\-Particle\-Parameters().



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