\section{I\-M\-P\-L\-:\-:Track\-Impl Class Reference}
\label{classIMPL_1_1TrackImpl}\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}}


Implementation of the L\-C\-I\-O track class.  




{\ttfamily \#include $<$I\-M\-P\-L/\-Track\-Impl.\-h$>$}

Inheritance diagram for I\-M\-P\-L\-:\-:Track\-Impl\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=5.000000cm]{classIMPL_1_1TrackImpl}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Track\-Impl} ()\label{classIMPL_1_1TrackImpl_a161e24490ee2efef6cd237f731cd52e9}

\begin{DoxyCompactList}\small\item\em Default constructor, initializes values to 0. \end{DoxyCompactList}\item 
{\bf Track\-Impl} (const {\bf Track\-Impl} \&)
\begin{DoxyCompactList}\small\item\em Copy constructor -\/ creates shallow copy, i.\-e. \end{DoxyCompactList}\item 
const {\bf Track\-Impl} \& {\bfseries operator=} (const {\bf Track\-Impl} \&o)\label{classIMPL_1_1TrackImpl_a8cd65f243651cb5034d8b4ffa02b1243}

\item 
virtual {\bf $\sim$\-Track\-Impl} ()\label{classIMPL_1_1TrackImpl_aef0265129e12c6307f792a30464c7bc5}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
virtual int {\bf id} () const \label{classIMPL_1_1TrackImpl_a6216ce62ebd7e5b767eb55bd8dd3469e}

\begin{DoxyCompactList}\small\item\em Returns an object id for internal (debugging) use in L\-C\-I\-O. \end{DoxyCompactList}\item 
virtual int {\bf get\-Type} () const 
\begin{DoxyCompactList}\small\item\em Type of track, i.\-e. \end{DoxyCompactList}\item 
virtual float {\bf get\-D0} () const 
\begin{DoxyCompactList}\small\item\em Returns true if the corresponding bit in the type word is set. \end{DoxyCompactList}\item 
virtual float {\bf get\-Phi} () const 
\begin{DoxyCompactList}\small\item\em Phi of the track at reference point. \end{DoxyCompactList}\item 
virtual float {\bf get\-Omega} () const 
\begin{DoxyCompactList}\small\item\em Omega is the signed curvature of the track in [1/mm]. \end{DoxyCompactList}\item 
virtual float {\bf get\-Z0} () const 
\begin{DoxyCompactList}\small\item\em Impact paramter of the track in (r-\/z). \end{DoxyCompactList}\item 
virtual float {\bf get\-Tan\-Lambda} () const 
\begin{DoxyCompactList}\small\item\em Lambda is the dip angle of the track in r-\/z at the reference point. \end{DoxyCompactList}\item 
virtual const {\bf E\-V\-E\-N\-T\-::\-Float\-Vec} \& {\bf get\-Cov\-Matrix} () const 
\begin{DoxyCompactList}\small\item\em Covariance matrix of the track parameters. \end{DoxyCompactList}\item 
virtual const float $\ast$ {\bf get\-Reference\-Point} () const 
\begin{DoxyCompactList}\small\item\em Reference point of the track parameters. \end{DoxyCompactList}\item 
virtual float {\bf get\-Chi2} () const 
\begin{DoxyCompactList}\small\item\em True if the reference point is the point of closest approach. \end{DoxyCompactList}\item 
virtual int {\bf get\-Ndf} () const \label{classIMPL_1_1TrackImpl_a46f3f69090ef0e7978288b3bc1371b4d}

\begin{DoxyCompactList}\small\item\em Number of degrees of freedom of the track fit. \end{DoxyCompactList}\item 
virtual float {\bf getd\-Edx} () const \label{classIMPL_1_1TrackImpl_a7cd44b9404a4aaad85ca929c16af9f5c}

\begin{DoxyCompactList}\small\item\em d\-Edx of the track. \end{DoxyCompactList}\item 
virtual float {\bf getd\-Edx\-Error} () const \label{classIMPL_1_1TrackImpl_aa69e475d8528e7c6e940e81c218939b8}

\begin{DoxyCompactList}\small\item\em Error of d\-Edx. \end{DoxyCompactList}\item 
virtual float {\bf get\-Radius\-Of\-Innermost\-Hit} () const 
\begin{DoxyCompactList}\small\item\em The radius of the innermost hit that has been used in the track fit. \end{DoxyCompactList}\item 
virtual const {\bf E\-V\-E\-N\-T\-::\-Int\-Vec} \& {\bf get\-Subdetector\-Hit\-Numbers} () const 
\begin{DoxyCompactList}\small\item\em A vector that holds the number of hits in particular subdetectors. \end{DoxyCompactList}\item 
virtual const {\bf E\-V\-E\-N\-T\-::\-Track\-Vec} \& {\bf get\-Tracks} () const \label{classIMPL_1_1TrackImpl_a29a82dda6255f3c85221335a7ccfcbd2}

\begin{DoxyCompactList}\small\item\em The tracks (as Track objects) that have been combined to this track. \end{DoxyCompactList}\item 
virtual const \\*
{\bf E\-V\-E\-N\-T\-::\-Track\-State\-Vec} \& {\bf get\-Track\-States} () const 
\begin{DoxyCompactList}\small\item\em Returns track states associtated with this track. \end{DoxyCompactList}\item 
virtual const {\bf E\-V\-E\-N\-T\-::\-Track\-State} $\ast$ {\bf get\-Closest\-Track\-State} (float x, float y, float z) const 
\begin{DoxyCompactList}\small\item\em Returns track state closest to the given point. \end{DoxyCompactList}\item 
virtual const {\bf E\-V\-E\-N\-T\-::\-Track\-State} $\ast$ {\bf get\-Track\-State} (int location) const 
\begin{DoxyCompactList}\small\item\em Returns track state for the given location -\/ or N\-U\-L\-L if not found. \end{DoxyCompactList}\item 
virtual const \\*
{\bf E\-V\-E\-N\-T\-::\-Tracker\-Hit\-Vec} \& {\bf get\-Tracker\-Hits} () const \label{classIMPL_1_1TrackImpl_af008b6c8a2be7885e2d32f1b675661b4}

\begin{DoxyCompactList}\small\item\em Optionaly ( check/set flag(\-L\-C\-I\-O\-::\-T\-R\-B\-I\-T\-\_\-\-H\-I\-T\-S)==1) return the hits that have been used to create this track. \end{DoxyCompactList}\item 
virtual void {\bfseries set\-Type\-Bit} (int index, bool val=true)\label{classIMPL_1_1TrackImpl_ad1b3cc7944d318fe7a4e32904c590347}

\item 
virtual void {\bfseries set\-D0} (float d0)\label{classIMPL_1_1TrackImpl_a25955d410c4ea6c0cf7093020ad00d7d}

\item 
virtual void {\bfseries set\-Phi} (float phi)\label{classIMPL_1_1TrackImpl_aa90b3d4de1b8d54cd9ed040e4dabe7de}

\item 
virtual void {\bfseries set\-Omega} (float omega)\label{classIMPL_1_1TrackImpl_a4a5e232b7080be292552097aadab060c}

\item 
virtual void {\bfseries set\-Z0} (float z0)\label{classIMPL_1_1TrackImpl_ad1e18ea2a5911b5a00d5dec42de895bf}

\item 
virtual void {\bfseries set\-Tan\-Lambda} (float tan\-Lambda)\label{classIMPL_1_1TrackImpl_ad941191fa85fc3175d1e6c895a438444}

\item 
virtual void {\bfseries set\-Cov\-Matrix} (const float $\ast$cov)\label{classIMPL_1_1TrackImpl_aa3d1c664ae3e4630fe01611d89df3a13}

\item 
virtual void {\bfseries set\-Cov\-Matrix} (const {\bf E\-V\-E\-N\-T\-::\-Float\-Vec} \&cov)\label{classIMPL_1_1TrackImpl_a9a669a725602d844631f4556f4602a66}

\item 
virtual void {\bfseries set\-Reference\-Point} (const float $\ast$r\-Pnt)\label{classIMPL_1_1TrackImpl_a973033d8c3c689697c5a4826f1f928dc}

\item 
virtual void {\bfseries set\-Chi2} (float chi2)\label{classIMPL_1_1TrackImpl_aa81d26d496bed96ac2af5ffab80c52eb}

\item 
virtual void {\bfseries set\-Ndf} (int ndf)\label{classIMPL_1_1TrackImpl_ad62809d2fd5d376e32b0264c73734be7}

\item 
virtual void {\bfseries setd\-Edx} (float d\-Edx)\label{classIMPL_1_1TrackImpl_a6c4bbd5d940c2a0aca4d45cc41a908ff}

\item 
virtual void {\bfseries setd\-Edx\-Error} (float d\-Edx\-Error)\label{classIMPL_1_1TrackImpl_a4c05572ccb05784e1d7b726d01cfa4a4}

\item 
virtual void {\bfseries add\-Track} ({\bf E\-V\-E\-N\-T\-::\-Track} $\ast$trk)\label{classIMPL_1_1TrackImpl_a0a696adbf1376766448fddc145384ab0}

\item 
virtual void {\bfseries add\-Track\-State} ({\bf E\-V\-E\-N\-T\-::\-Track\-State} $\ast$trkstate)\label{classIMPL_1_1TrackImpl_aecb5f7fc4e39915aba6b0d564acdc96e}

\item 
virtual void {\bfseries add\-Hit} ({\bf E\-V\-E\-N\-T\-::\-Tracker\-Hit} $\ast$hit)\label{classIMPL_1_1TrackImpl_a7cfb0620ce52c3149680eb62780312f8}

\item 
virtual {\bf E\-V\-E\-N\-T\-::\-Track\-State\-Vec} \& {\bfseries track\-States} ()\label{classIMPL_1_1TrackImpl_a3d46597fc0f1b3a780db059fadda94f2}

\item 
virtual void {\bfseries set\-Radius\-Of\-Innermost\-Hit} (float r)\label{classIMPL_1_1TrackImpl_a380abd7a4fae824d1215c5e9848e2226}

\item 
virtual {\bf E\-V\-E\-N\-T\-::\-Int\-Vec} \& {\bf subdetector\-Hit\-Numbers} ()
\begin{DoxyCompactList}\small\item\em Allows modification of the subdetector\-Hit\-Numbers, e.\-g. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void {\bfseries set\-Type} (int type)\label{classIMPL_1_1TrackImpl_aa6d910d73f455c28b2f3a79db77344d3}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
std\-::bitset$<$ 32 $>$ {\bfseries \-\_\-type}\label{classIMPL_1_1TrackImpl_a82cddac39befb0b332ce57ce7e8b4352}

\item 
float {\bfseries \-\_\-chi2}\label{classIMPL_1_1TrackImpl_a9772d8339fbbb2dc161f48153788d455}

\item 
int {\bfseries \-\_\-ndf}\label{classIMPL_1_1TrackImpl_a0d06892228b21d709304de14831db327}

\item 
float {\bfseries \-\_\-d\-Edx}\label{classIMPL_1_1TrackImpl_a524303a6b5e25c9dc220f4804a41b597}

\item 
float {\bfseries \-\_\-d\-Edx\-Error}\label{classIMPL_1_1TrackImpl_a21d108a11a5b874dff0851548e6e4c8f}

\item 
float {\bfseries \-\_\-radius\-Of\-Innermost\-Hit}\label{classIMPL_1_1TrackImpl_a719210f0df08a4f756c23daf4cba87c3}

\item 
{\bf E\-V\-E\-N\-T\-::\-Int\-Vec} {\bfseries \-\_\-subdetector\-Hit\-Numbers}\label{classIMPL_1_1TrackImpl_a8d9ab2368b9d3c1e0b33771d91bb0d29}

\item 
{\bf E\-V\-E\-N\-T\-::\-Track\-Vec} {\bfseries \-\_\-tracks}\label{classIMPL_1_1TrackImpl_a0b8a835db9a52a6bd7934b84c307a116}

\item 
{\bf E\-V\-E\-N\-T\-::\-Tracker\-Hit\-Vec} {\bfseries \-\_\-hits}\label{classIMPL_1_1TrackImpl_a91339b896a9e1f2b28763c323837a806}

\item 
{\bf E\-V\-E\-N\-T\-::\-Track\-State\-Vec} {\bfseries \-\_\-track\-States}\label{classIMPL_1_1TrackImpl_a5c7a428732449278448a7829a8db5635}

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


\subsection{Detailed Description}
Implementation of the L\-C\-I\-O track class. 

The helix parameterization follows that of the L3 experiment at L\-E\-P. A detailed description of the track parameters is given in the L\-C-\/\-Note L\-C-\/\-D\-E\-T-\/2006-\/004 \char`\"{}\-Track Parameters in L\-C\-I\-O\char`\"{} {\tt (pdf)}.

\begin{DoxySeeAlso}{See Also}
Track 
\end{DoxySeeAlso}
\begin{DoxyAuthor}{Author}
gaede 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{Track\-Impl.\-h}{p.}{TrackImpl_8h_source},v 1.\-15 2007-\/09-\/18 09\-:47\-:10 gaede Exp 
\end{DoxyParagraph}


\subsection{Constructor \& Destructor Documentation}
\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!Track\-Impl@{Track\-Impl}}
\index{Track\-Impl@{Track\-Impl}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{Track\-Impl}]{\setlength{\rightskip}{0pt plus 5cm}I\-M\-P\-L\-::\-Track\-Impl\-::\-Track\-Impl (
\begin{DoxyParamCaption}
\item[{const {\bf Track\-Impl} \&}]{o}
\end{DoxyParamCaption}
)}\label{classIMPL_1_1TrackImpl_adfd2bb2e08c16a5f93035a0bfc474877}


Copy constructor -\/ creates shallow copy, i.\-e. 

all data members are copied but pointers to other L\-C\-Objects i.\-e. Tracker\-Hits and Tracks are preserved. 

\subsection{Member Function Documentation}
\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Chi2@{get\-Chi2}}
\index{get\-Chi2@{get\-Chi2}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Chi2}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Chi2 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_ac14eed7466f5c48470f36a1ee0554e1f}


True if the reference point is the point of closest approach. 

Chi$^\wedge$2 of the track fit. 

Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_ace30ff2db4bb134ee422706a4ff9f904}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Closest\-Track\-State@{get\-Closest\-Track\-State}}
\index{get\-Closest\-Track\-State@{get\-Closest\-Track\-State}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Closest\-Track\-State}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Track\-State} $\ast$ I\-M\-P\-L\-::\-Track\-Impl\-::get\-Closest\-Track\-State (
\begin{DoxyParamCaption}
\item[{float}]{x, }
\item[{float}]{y, }
\item[{float}]{z}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a24c7ca1f9f077a09361e2dea0c72ebed}


Returns track state closest to the given point. 

\begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a4b130ba9a0d4374a92ed6896b99d3b42}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Cov\-Matrix@{get\-Cov\-Matrix}}
\index{get\-Cov\-Matrix@{get\-Cov\-Matrix}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Cov\-Matrix}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Float\-Vec} \& I\-M\-P\-L\-::\-Track\-Impl\-::get\-Cov\-Matrix (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a9471b629fb1007a65f2a14dd3cf83998}


Covariance matrix of the track parameters. 

Stored as lower triangle matrix where the order of parameters is\-: d0, phi, omega, z0, tan(lambda). So we have cov(d0,d0), cov( phi, d0 ), cov( phi, phi), ... Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_afed99dff79b20cc69a5f3eded2d71732}.



References I\-M\-P\-L\-::\-Track\-State\-Impl\-::get\-Cov\-Matrix().

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-D0@{get\-D0}}
\index{get\-D0@{get\-D0}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-D0}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-D0 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a6ec9c9655798cb71e55517ac497b3f54}


Returns true if the corresponding bit in the type word is set. 

Impact paramter of the track in (r-\/phi). Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a3e3649ae573d58ce5a32dc45bf320982}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Omega@{get\-Omega}}
\index{get\-Omega@{get\-Omega}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Omega}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Omega (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_af2d4eb11c4389cf5539607771e19c41b}


Omega is the signed curvature of the track in [1/mm]. 

The sign is that of the particle's charge. Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_abe6f795acf0b37c4556613cc2d158f61}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Phi@{get\-Phi}}
\index{get\-Phi@{get\-Phi}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Phi}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Phi (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_ad8b6beae01a9ca022613be36973af232}


Phi of the track at reference point. 

Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_ab9f657bb39bc567a37869fa1c673b651}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Radius\-Of\-Innermost\-Hit@{get\-Radius\-Of\-Innermost\-Hit}}
\index{get\-Radius\-Of\-Innermost\-Hit@{get\-Radius\-Of\-Innermost\-Hit}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Radius\-Of\-Innermost\-Hit}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Radius\-Of\-Innermost\-Hit (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_ae496d83b51a4eca3dc9ce235619ed62b}


The radius of the innermost hit that has been used in the track fit. 

Helps to detect V0 tracks with small impact paramters or haevy mesons. To be used as convenient information or if hits are not stored in the data set, e.\-g. D\-S\-T or Fast\-M\-C. 

Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a919c0c095530782842dfa686ac23913b}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Reference\-Point@{get\-Reference\-Point}}
\index{get\-Reference\-Point@{get\-Reference\-Point}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Reference\-Point}]{\setlength{\rightskip}{0pt plus 5cm}const float $\ast$ I\-M\-P\-L\-::\-Track\-Impl\-::get\-Reference\-Point (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_afc9de64907afdd26b4f9bd22afd087ba}


Reference point of the track parameters. 

The default for the reference point is the point of closest approach. Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a216d20fe025ee338c1a301200774e3fa}.



References I\-M\-P\-L\-::\-Track\-State\-Impl\-::get\-Reference\-Point().

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Subdetector\-Hit\-Numbers@{get\-Subdetector\-Hit\-Numbers}}
\index{get\-Subdetector\-Hit\-Numbers@{get\-Subdetector\-Hit\-Numbers}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Subdetector\-Hit\-Numbers}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Int\-Vec} \& I\-M\-P\-L\-::\-Track\-Impl\-::get\-Subdetector\-Hit\-Numbers (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a57d856af4d29f1a678eed7c30a290eac}


A vector that holds the number of hits in particular subdetectors. 

The mapping of indices to subdetectors is implementation dependent. To be used as convenient information or if hits are not stored in the data set, e.\-g. D\-S\-T or Fast\-M\-C. T\-O\-D\-O\-: Provide way to store mapping in event/run header. 

Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_aff620ae9a6d15b2a9a949c1e73bfef16}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Tan\-Lambda@{get\-Tan\-Lambda}}
\index{get\-Tan\-Lambda@{get\-Tan\-Lambda}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Tan\-Lambda}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Tan\-Lambda (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_af811a58709f4f266677dbd108c391cf1}


Lambda is the dip angle of the track in r-\/z at the reference point. 

Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_ab1a9d45c18519c16226b7149a47fa720}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Track\-State@{get\-Track\-State}}
\index{get\-Track\-State@{get\-Track\-State}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Track\-State}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Track\-State} $\ast$ I\-M\-P\-L\-::\-Track\-Impl\-::get\-Track\-State (
\begin{DoxyParamCaption}
\item[{int}]{location}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a323356959bcd3254528f3a0f064e17ed}


Returns track state for the given location -\/ or N\-U\-L\-L if not found. 

\begin{DoxySeeAlso}{See Also}
Track\-State. location can be set to\-: At\-I\-P, At\-First\-Hit, At\-Last\-Hit, At\-Calorimeter, At\-Vertex, At\-Other 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_ac3ad439bdd1f1945bd2f154ef44ac29a}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Track\-States@{get\-Track\-States}}
\index{get\-Track\-States@{get\-Track\-States}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Track\-States}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Track\-State\-Vec} \& I\-M\-P\-L\-::\-Track\-Impl\-::get\-Track\-States (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a4351f126e6ae0039f7f50053ba381245}


Returns track states associtated with this track. 

\begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a8e37e036c855548c48e62e482a1eba69}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Type@{get\-Type}}
\index{get\-Type@{get\-Type}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Type}]{\setlength{\rightskip}{0pt plus 5cm}int I\-M\-P\-L\-::\-Track\-Impl\-::get\-Type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a5409466912bdf7bc74c93366734c18da}


Type of track, i.\-e. 

the subdetector(s) used to derive the track paramters, e.\-g. \char`\"{}\-T\-P\-C\char`\"{}, \char`\"{}\-C\-O\-M\-B\char`\"{}, etc. In order to save disc space working groups should try and define three to four letter acronyms for their tracking detectors.\-Flagword that defines the type of track. Bits 0-\/15 can be used to denote the subdetectors that have contributed hits used in the track fit. The definition of the hits has to be done elsewhere, e.\-g. in the run header. Before L\-C\-I\-O 2.\-0 bit 31 was used to encode is\-Reference\-Point\-P\-C\-A (now deprecated). 

Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_a4ebf194e2773279faafcc72a3207cd55}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!get\-Z0@{get\-Z0}}
\index{get\-Z0@{get\-Z0}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{get\-Z0}]{\setlength{\rightskip}{0pt plus 5cm}float I\-M\-P\-L\-::\-Track\-Impl\-::get\-Z0 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a5f32b4f42e7713f279beef96ef7f72da}


Impact paramter of the track in (r-\/z). 

Information is stored in the first Track\-State of this Track, \begin{DoxySeeAlso}{See Also}
Track\-State. 
\end{DoxySeeAlso}


Implements {\bf E\-V\-E\-N\-T\-::\-Track} \doxyref{}{p.}{classEVENT_1_1Track_ac532d8b138587882036cc408de7f10fd}.

\index{I\-M\-P\-L\-::\-Track\-Impl@{I\-M\-P\-L\-::\-Track\-Impl}!subdetector\-Hit\-Numbers@{subdetector\-Hit\-Numbers}}
\index{subdetector\-Hit\-Numbers@{subdetector\-Hit\-Numbers}!IMPL::TrackImpl@{I\-M\-P\-L\-::\-Track\-Impl}}
\subsubsection[{subdetector\-Hit\-Numbers}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Int\-Vec} \& I\-M\-P\-L\-::\-Track\-Impl\-::subdetector\-Hit\-Numbers (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classIMPL_1_1TrackImpl_a7b24acb133754913b6baa7b55a3c7204}


Allows modification of the subdetector\-Hit\-Numbers, e.\-g. 

\par
 track-\/$>$\doxyref{subdetector\-Hit\-Numbers()}{p.}{classIMPL_1_1TrackImpl_a7b24acb133754913b6baa7b55a3c7204}.resize(5) ; \par
 track-\/$>$\doxyref{subdetector\-Hit\-Numbers()}{p.}{classIMPL_1_1TrackImpl_a7b24acb133754913b6baa7b55a3c7204}[4] = 42 ; 

Referenced by S\-I\-O\-::\-S\-I\-O\-Track\-Handler\-::read().



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