\section{gear\-:\-:Z\-Planar\-Parameters\-Impl Class Reference}
\label{classgear_1_1ZPlanarParametersImpl}\index{gear\-::\-Z\-Planar\-Parameters\-Impl@{gear\-::\-Z\-Planar\-Parameters\-Impl}}


Geometry properties of a planar detector (parallel to z-\/axis) needed for reconstruction code.  




{\ttfamily \#include $<$Z\-Planar\-Parameters\-Impl.\-h$>$}

Inheritance diagram for gear\-:\-:Z\-Planar\-Parameters\-Impl\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classgear_1_1ZPlanarParametersImpl}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Z\-Planar\-Parameters\-Impl} (int type, double shell\-Inner\-Radius, double shell\-Outer\-Radius, double shell\-Half\-Length, double shell\-Gap, double shell\-Rad\-Length)
\begin{DoxyCompactList}\small\item\em C'tor. \end{DoxyCompactList}\item 
virtual void {\bf add\-Layer} (int n\-Ladders, double phi0, double ladder\-Distance, double ladder\-Offset, double ladder\-Thickness, double ladder\-Length, double ladder\-Width, double ladder\-Rad\-Length, double sensitive\-Distance, double sensitive\-Offset, double sensitive\-Thickness, double sensitive\-Length, double sensitive\-Width, double sensitive\-Rad\-Length)
\begin{DoxyCompactList}\small\item\em adding a Layer to the vertex one layer consiste of a number of ladders and sensitive areas (n\-Ladders) that are each equidistant to I\-P. \end{DoxyCompactList}\item 
virtual const {\bf Z\-Planar\-Layer\-Layout} \& {\bf get\-Z\-Planar\-Layer\-Layout} () const \label{classgear_1_1ZPlanarParametersImpl_aae8b3ba836bbc13e6f97eb6679984732}

\begin{DoxyCompactList}\small\item\em Returns the layer layout in the Vertex. \end{DoxyCompactList}\item 
virtual int {\bf get\-Type} () const \label{classgear_1_1ZPlanarParametersImpl_a59f10add0ffed6799ffce33ef14675ac}

\begin{DoxyCompactList}\small\item\em The type of Vertex detector\-: Z\-Planar\-Parameters\-Impl.\-C\-C\-D, Z\-Planar\-Parameters\-Impl.\-C\-M\-O\-S or Z\-Planar\-Parameters\-Impl.\-H\-Y\-B\-R\-I\-D. \end{DoxyCompactList}\item 
virtual double {\bf get\-Shell\-Half\-Length} () const \label{classgear_1_1ZPlanarParametersImpl_a9c00bfd04058765628b21e5e01cb999a}

\begin{DoxyCompactList}\small\item\em The half length (z) of the support shell in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Shell\-Gap} () const \label{classgear_1_1ZPlanarParametersImpl_aacc1373592a3dde939d9a98c4c065a82}

\begin{DoxyCompactList}\small\item\em The gap length (z) of the support shell in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Shell\-Inner\-Radius} () const \label{classgear_1_1ZPlanarParametersImpl_a0201c1225719e0d3ee5925dce4657a65}

\begin{DoxyCompactList}\small\item\em The inner radius of the support shell in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Shell\-Outer\-Radius} () const \label{classgear_1_1ZPlanarParametersImpl_a1d617e74b017cd6f11bb6ed2f4e4801a}

\begin{DoxyCompactList}\small\item\em The outer radius of the support shell in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Shell\-Rad\-Length} () const \label{classgear_1_1ZPlanarParametersImpl_af75d0c91e5bdf4b1f6ee20c263d4b8dc}

\begin{DoxyCompactList}\small\item\em The radiation length in the support shell. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Point\-In\-Ladder} ({\bf Vector3\-D} p) const \label{classgear_1_1ZPlanarParametersImpl_ab03d7bcb2243282e9f02a08b18d8e77b}

\begin{DoxyCompactList}\small\item\em returns whether a point is inside a ladder \end{DoxyCompactList}\item 
virtual bool {\bf is\-Point\-In\-Sensitive} ({\bf Vector3\-D} p, {\bf Sensor\-I\-D} $\ast$sensor\-I\-D=0) const \label{classgear_1_1ZPlanarParametersImpl_aa8ce2b5342b3133f6f26b903c5a63acc}

\begin{DoxyCompactList}\small\item\em returns wheter a point is inside a sensitive volume \end{DoxyCompactList}\item 
virtual {\bf Vector3\-D} {\bf distance\-To\-Nearest\-Ladder} ({\bf Vector3\-D} p) const \label{classgear_1_1ZPlanarParametersImpl_a0f7f34ebd6e061a28c5c60d158877a54}

\begin{DoxyCompactList}\small\item\em returns vector from given point p to nearest ladder \end{DoxyCompactList}\item 
virtual {\bf Vector3\-D} {\bf distance\-To\-Nearest\-Sensitive} ({\bf Vector3\-D} p) const \label{classgear_1_1ZPlanarParametersImpl_a5111183c2760729b0de074eef6f9edb7}

\begin{DoxyCompactList}\small\item\em returns vector from given point p to nearest sensitive volume \end{DoxyCompactList}\item 
virtual {\bf Vector3\-D} {\bf intersection\-Ladder} ({\bf Vector3\-D} p, {\bf Vector3\-D} v) const \label{classgear_1_1ZPlanarParametersImpl_a20eda2140d2027001c47ba20f621e5c3}

\begin{DoxyCompactList}\small\item\em returns the first point where a given strainght line (parameters point p and direction v) crosses a ladder \end{DoxyCompactList}\item 
virtual {\bf Vector3\-D} {\bf intersection\-Sensitive} ({\bf Vector3\-D} p, {\bf Vector3\-D} v) const \label{classgear_1_1ZPlanarParametersImpl_a83764cd0b3244c0ab5d7b32417d1736f}

\begin{DoxyCompactList}\small\item\em returns the first point where a given strainght line (parameters point p and direction v) crosses a sensitive volume \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
static const int {\bfseries C\-C\-D} = 1\label{classgear_1_1ZPlanarParametersImpl_a2190c4f61d0697434b4765bf401979be}

\item 
static const int {\bfseries C\-M\-O\-S} = 2\label{classgear_1_1ZPlanarParametersImpl_aabdb78a3c777a6c83e18d868e158cdc8}

\item 
static const int {\bfseries H\-Y\-B\-R\-I\-D} = 3\label{classgear_1_1ZPlanarParametersImpl_ad8393bba1dbf5aeb119e2b9de1ed6754}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
{\bf Z\-Planar\-Layer\-Layout\-Impl} {\bfseries \-\_\-layer}\label{classgear_1_1ZPlanarParametersImpl_a885f66896d0440e5aba8656669d74dab}

\item 
int {\bfseries \-\_\-type}\label{classgear_1_1ZPlanarParametersImpl_a6984d036407961bae4484f08d74504ef}

\item 
double {\bfseries \-\_\-shell\-Inner\-Radius}\label{classgear_1_1ZPlanarParametersImpl_a08479618f55490193ffe9a3c34b4ab78}

\item 
double {\bfseries \-\_\-shell\-Outer\-Radius}\label{classgear_1_1ZPlanarParametersImpl_a06a70891b85b512c2a6ba4c5dd33ada7}

\item 
double {\bfseries \-\_\-shell\-Half\-Length}\label{classgear_1_1ZPlanarParametersImpl_a2632cd10d0b8886187a5b894754bfdc2}

\item 
double {\bfseries \-\_\-shell\-Gap}\label{classgear_1_1ZPlanarParametersImpl_ad4fc3d31ffefd1131e4bda6686113e34}

\item 
double {\bfseries \-\_\-shell\-Rad\-Length}\label{classgear_1_1ZPlanarParametersImpl_af64ef19c877d0d16a399320f4be08b92}

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


\subsection{Detailed Description}
Geometry properties of a planar detector (parallel to z-\/axis) needed for reconstruction code. 

\par
 

The detector is assumed to consist of a number of layers. Each layer consists of a number of rectangular ladders that are uniformly distributed in a circle around the I\-P.\par
 The sensitive volumes can be placed relative to the (insensitive) ladders. \begin{DoxySeeAlso}{See Also}
\doxyref{add\-Layer}{p.}{classgear_1_1ZPlanarParametersImpl_a21e5743185c15b78c4ac48789e6641c1} .
\end{DoxySeeAlso}


The shell is described by outer and inner radius and it's half length in z.

The gap is assumed to be symetrical around z==0 and goes through all layers and ladders.

\begin{DoxyAuthor}{Author}
R. Lippe, D\-E\-S\-Y 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}
\$\-Id\-: 
\end{DoxyVersion}


Definition at line 26 of file Z\-Planar\-Parameters\-Impl.\-h.



\subsection{Constructor \& Destructor Documentation}
\index{gear\-::\-Z\-Planar\-Parameters\-Impl@{gear\-::\-Z\-Planar\-Parameters\-Impl}!Z\-Planar\-Parameters\-Impl@{Z\-Planar\-Parameters\-Impl}}
\index{Z\-Planar\-Parameters\-Impl@{Z\-Planar\-Parameters\-Impl}!gear::ZPlanarParametersImpl@{gear\-::\-Z\-Planar\-Parameters\-Impl}}
\subsubsection[{Z\-Planar\-Parameters\-Impl}]{\setlength{\rightskip}{0pt plus 5cm}gear\-::\-Z\-Planar\-Parameters\-Impl\-::\-Z\-Planar\-Parameters\-Impl (
\begin{DoxyParamCaption}
\item[{int}]{type, }
\item[{double}]{shell\-Inner\-Radius, }
\item[{double}]{shell\-Outer\-Radius, }
\item[{double}]{shell\-Half\-Length, }
\item[{double}]{shell\-Gap, }
\item[{double}]{shell\-Rad\-Length}
\end{DoxyParamCaption}
)}\label{classgear_1_1ZPlanarParametersImpl_a4c09339c83b1f13412d527ae7c64b4be}


C'tor. 


\begin{DoxyParams}{Parameters}
{\em Type} & the type of the vertex detector\-: C\-C\-D, C\-M\-O\-S or H\-Y\-B\-R\-I\-D \\
\hline
{\em shell\-Inner\-Radius} & the inner Radius of the vertex' shell (in mm) \\
\hline
{\em shell\-Outer\-Radius} & the outer Radius of the vertex' shell (in mm) \\
\hline
{\em shell\-Half\-Length} & the half length in z (in mm) \\
\hline
{\em shell\-Gap} & the total width of the gap at z==0 -\/ symetrical around z==0 \\
\hline
{\em shell\-Rad\-Length} & the material property information about the shell's material radiation length \\
\hline
\end{DoxyParams}


Definition at line 18 of file Z\-Planar\-Parameters\-Impl.\-cc.



\subsection{Member Function Documentation}
\index{gear\-::\-Z\-Planar\-Parameters\-Impl@{gear\-::\-Z\-Planar\-Parameters\-Impl}!add\-Layer@{add\-Layer}}
\index{add\-Layer@{add\-Layer}!gear::ZPlanarParametersImpl@{gear\-::\-Z\-Planar\-Parameters\-Impl}}
\subsubsection[{add\-Layer}]{\setlength{\rightskip}{0pt plus 5cm}virtual void gear\-::\-Z\-Planar\-Parameters\-Impl\-::add\-Layer (
\begin{DoxyParamCaption}
\item[{int}]{n\-Ladders, }
\item[{double}]{phi0, }
\item[{double}]{ladder\-Distance, }
\item[{double}]{ladder\-Offset, }
\item[{double}]{ladder\-Thickness, }
\item[{double}]{ladder\-Length, }
\item[{double}]{ladder\-Width, }
\item[{double}]{ladder\-Rad\-Length, }
\item[{double}]{sensitive\-Distance, }
\item[{double}]{sensitive\-Offset, }
\item[{double}]{sensitive\-Thickness, }
\item[{double}]{sensitive\-Length, }
\item[{double}]{sensitive\-Width, }
\item[{double}]{sensitive\-Rad\-Length}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}\label{classgear_1_1ZPlanarParametersImpl_a21e5743185c15b78c4ac48789e6641c1}


adding a Layer to the vertex one layer consiste of a number of ladders and sensitive areas (n\-Ladders) that are each equidistant to I\-P. 

They are cubic with dimensions length (z), width (perpendicular to connection I\-P-\/spacepoint) and thickness (extension to connection I\-P-\/spacepoint).


\begin{DoxyParams}{Parameters}
{\em n\-Ladders} & the number of ladders and sensitive areas inside the layer \\
\hline
{\em phi0} & azimuthal angle of normal to first ladder \\
\hline
{\em Distance} & the length (mm) of the straigth line between I\-P and spacepoint to ladder (ladder\-Distance) or sensitive Area (sensitive\-Distance) \\
\hline
{\em Offset} & the offset of ladder (ladder\-Offset) or sensitive area (sensitive\-Offset) in direction of increasing phi in mm between spacepoint and middle of ladder/sensitive \\
\hline
{\em Thickness} & the thickness in mm of the ladder (ladder\-Thickness) or the sensitive area (sensitive\-Thickness) \\
\hline
{\em Length} & the length (z-\/direction) in mm of the ladder (ladder\-Length) or the sensitive area (sensitive\-Length) \\
\hline
{\em Width} & the width of the ladder (ladder\-Width) or the sensitive area (sensitive\-Width) in mm in clockwise direction \\
\hline
{\em Rad\-Lenght} & the radiation lenght of the ladder (ladder\-Rad\-Length) or the sensitive area (sensitive\-Rad\-Length) in mm \\
\hline
\end{DoxyParams}


Definition at line 70 of file Z\-Planar\-Parameters\-Impl.\-h.



References gear\-::\-Z\-Planar\-Layer\-Layout\-Impl\-::add\-Layer().



Referenced by gear\-::\-Z\-Planar\-Parameters\-X\-M\-L\-::from\-X\-M\-L().



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