\section{gear\-:\-:Versatile\-Disk\-Row\-Layout Class Reference}
\label{classgear_1_1VersatileDiskRowLayout}\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}


Implementation of \doxyref{Pad\-Row\-Layout2\-D}{p.}{classgear_1_1PadRowLayout2D} for a wedge shaped module.  




{\ttfamily \#include $<$Versatile\-Disk\-Row\-Layout.\-h$>$}

Inheritance diagram for gear\-:\-:Versatile\-Disk\-Row\-Layout\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classgear_1_1VersatileDiskRowLayout}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class {\bf Row}
\begin{DoxyCompactList}\small\item\em Internal helper class for \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}, describing one row. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Versatile\-Disk\-Row\-Layout} (double r\-Min)
\begin{DoxyCompactList}\small\item\em Construct the \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}. \end{DoxyCompactList}\item 
{\bf Versatile\-Disk\-Row\-Layout} (const {\bf Versatile\-Disk\-Row\-Layout} \&)
\begin{DoxyCompactList}\small\item\em The copy constructor. \end{DoxyCompactList}\item 
{\bf Versatile\-Disk\-Row\-Layout} \& {\bf operator=} (const {\bf Versatile\-Disk\-Row\-Layout} \&)\label{classgear_1_1VersatileDiskRowLayout_affa72dcd5b1d8e04c185c2ee94536020}

\begin{DoxyCompactList}\small\item\em The assignment operator. \end{DoxyCompactList}\item 
virtual {\bf $\sim$\-Versatile\-Disk\-Row\-Layout} ()\label{classgear_1_1VersatileDiskRowLayout_a1d62175fbd58b8a7b826fe38be5cd67d}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
{\bf Pad\-Row\-Layout2\-D} $\ast$ {\bf clone} () const 
\begin{DoxyCompactList}\small\item\em Returns a copy (clone) of this class. \end{DoxyCompactList}\item 
virtual void {\bf add\-Row} (int n\-Pads, double pad\-Pitch, double row\-Height, double offset=0., double pad\-Width=0., double pad\-Height=0., int repeat=1)
\begin{DoxyCompactList}\small\item\em Add 'repeat' rows with the given parameters. \end{DoxyCompactList}\item 
virtual int {\bf get\-Pad\-Layout\-Impl\-Type} () const \label{classgear_1_1VersatileDiskRowLayout_a5f744573c34889af889533b409f360b3}

\begin{DoxyCompactList}\small\item\em The type of the row layout implementation\-: Pad\-Row\-Layout2\-D.\-F\-I\-X\-E\-D\-P\-A\-D\-S\-I\-Z\-E\-D\-I\-S\-K\-L\-A\-Y\-O\-U\-T. \end{DoxyCompactList}\item 
virtual int {\bf get\-Pad\-Layout\-Type} () const 
\item 
virtual int {\bf get\-Pad\-Shape} () const 
\begin{DoxyCompactList}\small\item\em The shape of the pads\-: Pad\-Row\-Layout2\-D\-::\-R\-E\-C\-T\-A\-N\-G\-L\-E (i.\-e. \end{DoxyCompactList}\item 
virtual int {\bf get\-N\-Pads} () const \label{classgear_1_1VersatileDiskRowLayout_a9ec90031c8a378f1377197abad302bfc}

\begin{DoxyCompactList}\small\item\em The total number of pads in the T\-P\-C. \end{DoxyCompactList}\item 
virtual int {\bf get\-N\-Rows} () const \label{classgear_1_1VersatileDiskRowLayout_a574b4c99469f21d7b2481a99a1164820}

\begin{DoxyCompactList}\small\item\em The number of rows. \end{DoxyCompactList}\item 
virtual double {\bf get\-Row\-Height} (int row\-Number) const \label{classgear_1_1VersatileDiskRowLayout_a6a75901b45ac8db6bd12847ca148f5a5}

\begin{DoxyCompactList}\small\item\em The row height in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Pad\-Height} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a2c3ecb8046329e408cb325e782a1dfd2}

\begin{DoxyCompactList}\small\item\em The height of the pad in mm. \end{DoxyCompactList}\item 
virtual double {\bf get\-Pad\-Width} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a57b599b59108e60dcfa64d4a603eb957}

\begin{DoxyCompactList}\small\item\em The width of the pad in radians. \end{DoxyCompactList}\item 
virtual double {\bf get\-Pad\-Pitch} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a51d8b7b06eb641b9cf4d8581638c5d09}

\begin{DoxyCompactList}\small\item\em The pitch of the pad in radians. \end{DoxyCompactList}\item 
virtual {\bf Vector2\-D} {\bf get\-Pad\-Center} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a5d92b2f2bd3be584e2e4e4b21bb6ff89}

\begin{DoxyCompactList}\small\item\em The center of the pad in 2d coordinates, (x,y) or (r,phi). \end{DoxyCompactList}\item 
virtual const std\-::vector$<$ int $>$ \& {\bf get\-Pads\-In\-Row} (int row\-Number) const \label{classgear_1_1VersatileDiskRowLayout_aa0e78df916cebf875744022ca65c1e60}

\begin{DoxyCompactList}\small\item\em Indices of all pads in row row\-Number (row indices start from 0 at the bottom (C\-A\-R\-T\-E\-S\-I\-A\-N) or at the center (P\-O\-L\-A\-R)). \end{DoxyCompactList}\item 
virtual const std\-::vector\\*
$<$ double $>$ \& {\bf get\-Plane\-Extent} () const \label{classgear_1_1VersatileDiskRowLayout_a4d33e96fcc7893196758ebe90cc6d617}

\begin{DoxyCompactList}\small\item\em Extent of the sensitive plane -\/ [xmin,xmax,ymin,ymax] C\-A\-R\-T\-E\-S\-I\-A\-N or [rmin,rmax,phimin,phimax] P\-O\-L\-A\-R. \end{DoxyCompactList}\item 
virtual int {\bf get\-Row\-Number} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a532c9b1f029dbdd315f9a8d7cb348815}

\begin{DoxyCompactList}\small\item\em The number of the row that contains the pad at pad\-Index -\/ numbering starts at r/y==0. \end{DoxyCompactList}\item 
virtual int {\bf get\-Pad\-Number} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_aec85906136da4a97a34b443e3fb2a467}

\begin{DoxyCompactList}\small\item\em The pad number (column) within the row -\/ numbering starts at phi/x =. \end{DoxyCompactList}\item 
virtual int {\bf get\-Pad\-Index} (int row\-Num, int pad\-Num) const \label{classgear_1_1VersatileDiskRowLayout_a5a68143fb927f852ae7b55607a43cdaa}

\begin{DoxyCompactList}\small\item\em Create a pad\-Index for the given row and pad ( column ) number. \end{DoxyCompactList}\item 
virtual int {\bf get\-Nearest\-Pad} (double c0, double c1) const \label{classgear_1_1VersatileDiskRowLayout_ad4aece7a80b1d23436f22c1e6960450d}

\begin{DoxyCompactList}\small\item\em The index of the pad nearest to the given point in 2d coordinates (x,y,) or (r,phi). \end{DoxyCompactList}\item 
virtual int {\bf get\-Right\-Neighbour} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_af5fc36d173c0356af6247ea0c9f93649}

\begin{DoxyCompactList}\small\item\em The index of the right neighbour pad. \end{DoxyCompactList}\item 
virtual int {\bf get\-Left\-Neighbour} (int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_ab06d90ceff5801c5ba3a4a52a28af6a6}

\begin{DoxyCompactList}\small\item\em The index of the left neighbour pad. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Inside\-Pad} (double c0, double c1, int pad\-Index) const \label{classgear_1_1VersatileDiskRowLayout_a392c52cbe66d8aea9ffd28a0da87ea29}

\begin{DoxyCompactList}\small\item\em True if coordinate (c0,c1) is within the given pad. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Inside\-Pad} (double c0, double c1) const \label{classgear_1_1VersatileDiskRowLayout_a7180d34755cace1b78becee278c84fa1}

\begin{DoxyCompactList}\small\item\em True if coordinate (c0,c1) is within any pad. \end{DoxyCompactList}\item 
virtual bool {\bf is\-Frayed} () const \label{classgear_1_1VersatileDiskRowLayout_a0b7f5176287a74f8352db26d21f69f45}

\begin{DoxyCompactList}\small\item\em Get information whether geometry has large staggering. \end{DoxyCompactList}\item 
const std\-::vector$<$ {\bf Row} $>$ \& {\bf rows} () const \label{classgear_1_1VersatileDiskRowLayout_ad46e6fd3e0dcbd54e01fa32c66a1770e}

\begin{DoxyCompactList}\small\item\em Get access to the individual rows. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
void {\bf copy\-\_\-and\-\_\-assign} (const {\bf Versatile\-Disk\-Row\-Layout} \&)
\begin{DoxyCompactList}\small\item\em function to copy all internal variables, incl. \end{DoxyCompactList}\item 
void {\bf cleanup} ()
\begin{DoxyCompactList}\small\item\em function to delete all the objects pointed to and owned by the \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
int {\bf \-\_\-n\-Pad}\label{classgear_1_1VersatileDiskRowLayout_a17a9dd353e48ab002eb3ecf94c4bd4ce}

\begin{DoxyCompactList}\small\item\em number of pads, keep for performance reasons \end{DoxyCompactList}\item 
std\-::vector$<$ {\bf Row} $>$ {\bf \-\_\-rows}\label{classgear_1_1VersatileDiskRowLayout_ae8211557aba017d194680bbb77831356}

\begin{DoxyCompactList}\small\item\em vector with all the rows of the pad plane \end{DoxyCompactList}\item 
std\-::vector$<$ double $>$ {\bf \-\_\-extent}\label{classgear_1_1VersatileDiskRowLayout_a935a985e1f89ede60f94cdf1d8b6b4a0}

\begin{DoxyCompactList}\small\item\em the plane extent \end{DoxyCompactList}\item 
std\-::vector$<$ std\-::vector$<$ int $>$ $\ast$ $>$ {\bf \-\_\-pad\-Indices}\label{classgear_1_1VersatileDiskRowLayout_a34a54342c68b7e7ac23ca639fc01303f}

\begin{DoxyCompactList}\small\item\em vector for get\-Pads\-In\-Row \end{DoxyCompactList}\item 
bool {\bf \-\_\-is\-Frayed}\label{classgear_1_1VersatileDiskRowLayout_aa28c12a7e929ddcaedbadcfeae62e2c7}

\begin{DoxyCompactList}\small\item\em Flag that describes if the geometry is frayed. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Implementation of \doxyref{Pad\-Row\-Layout2\-D}{p.}{classgear_1_1PadRowLayout2D} for a wedge shaped module. 

It is made up of individual rows. All pads within a row are the same. They are keystone shaped. The height and width can vary from row to row. Each row can have an offset in phi, so a staggering can be implemented.

The geometry is specified as frayed if the edge of a the first or last pad in a row is further away from the edge than half its height. In this case the \doxyref{get\-Nearest\-Pad()}{p.}{classgear_1_1VersatileDiskRowLayout_ad4aece7a80b1d23436f22c1e6960450d} function does not work reliably.

For a description and visualisation of the geometric parameters see the documentation of the X\-M\-L syntax in \doxyref{Versatile\-Disk\-Row\-Layout\-X\-M\-L}{p.}{classgear_1_1VersatileDiskRowLayoutXML}.

\begin{DoxyAuthor}{Author}
M. Killenberg, University of Bonn 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{Versatile\-Disk\-Row\-Layout.\-h}{p.}{VersatileDiskRowLayout_8h_source} 441 2012-\/11-\/08 02\-:30\-:06\-Z killenb 
\end{DoxyParagraph}


Definition at line 25 of file Versatile\-Disk\-Row\-Layout.\-h.



\subsection{Constructor \& Destructor Documentation}
\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!Versatile\-Disk\-Row\-Layout@{Versatile\-Disk\-Row\-Layout}}
\index{Versatile\-Disk\-Row\-Layout@{Versatile\-Disk\-Row\-Layout}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{Versatile\-Disk\-Row\-Layout}]{\setlength{\rightskip}{0pt plus 5cm}gear\-::\-Versatile\-Disk\-Row\-Layout\-::\-Versatile\-Disk\-Row\-Layout (
\begin{DoxyParamCaption}
\item[{double}]{r\-Min}
\end{DoxyParamCaption}
)}\label{classgear_1_1VersatileDiskRowLayout_ac91453472c38aa87f8151269f1e8e64f}


Construct the \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}. 

The only requred parameter is the minimal radius. All other parameters are calculated when adding the pad rows. 

Definition at line 13 of file Versatile\-Disk\-Row\-Layout.\-cc.



References \-\_\-extent.



Referenced by clone().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!Versatile\-Disk\-Row\-Layout@{Versatile\-Disk\-Row\-Layout}}
\index{Versatile\-Disk\-Row\-Layout@{Versatile\-Disk\-Row\-Layout}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{Versatile\-Disk\-Row\-Layout}]{\setlength{\rightskip}{0pt plus 5cm}gear\-::\-Versatile\-Disk\-Row\-Layout\-::\-Versatile\-Disk\-Row\-Layout (
\begin{DoxyParamCaption}
\item[{const {\bf Versatile\-Disk\-Row\-Layout} \&}]{right}
\end{DoxyParamCaption}
)}\label{classgear_1_1VersatileDiskRowLayout_a1570ff2bcb4f6c2eced9c9b9843b4972}


The copy constructor. 

Needed because \-\_\-pad\-Indices allocates memory dynamically 

Definition at line 24 of file Versatile\-Disk\-Row\-Layout.\-cc.



References copy\-\_\-and\-\_\-assign().



\subsection{Member Function Documentation}
\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!add\-Row@{add\-Row}}
\index{add\-Row@{add\-Row}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{add\-Row}]{\setlength{\rightskip}{0pt plus 5cm}void gear\-::\-Versatile\-Disk\-Row\-Layout\-::add\-Row (
\begin{DoxyParamCaption}
\item[{int}]{n\-Pads, }
\item[{double}]{pad\-Pitch, }
\item[{double}]{row\-Height, }
\item[{double}]{offset = {\ttfamily 0.}, }
\item[{double}]{pad\-Width = {\ttfamily 0.}, }
\item[{double}]{pad\-Height = {\ttfamily 0.}, }
\item[{int}]{repeat = {\ttfamily 1}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classgear_1_1VersatileDiskRowLayout_a597a77ddbcd20a9605a488192703a021}


Add 'repeat' rows with the given parameters. 

pad\-Pitch, pad\-Width and offset are measured at the central radius of the pad (middle of the pad row). All dimensions are in mm in this function. Note that this is different from the \doxyref{get\-Pad\-Width()}{p.}{classgear_1_1VersatileDiskRowLayout_a57b599b59108e60dcfa64d4a603eb957} and \doxyref{get\-Pad\-Pitch()}{p.}{classgear_1_1VersatileDiskRowLayout_a51d8b7b06eb641b9cf4d8581638c5d09} functions (and all other functions derrived from \doxyref{Pad\-Row\-Layout2\-D}{p.}{classgear_1_1PadRowLayout2D}), which answer in radian as this is a polar layout. 

Definition at line 53 of file Versatile\-Disk\-Row\-Layout.\-cc.



References \-\_\-extent, \-\_\-n\-Pad, \-\_\-pad\-Indices, and \-\_\-rows.



Referenced by gear\-::\-Versatile\-Disk\-Row\-Layout\-X\-M\-L\-::from\-X\-M\-L().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!cleanup@{cleanup}}
\index{cleanup@{cleanup}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{cleanup}]{\setlength{\rightskip}{0pt plus 5cm}void gear\-::\-Versatile\-Disk\-Row\-Layout\-::cleanup (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}}\label{classgear_1_1VersatileDiskRowLayout_afa72184ec760fc6874beef59a0a0b023}


function to delete all the objects pointed to and owned by the \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}. 

Used by desctructor and assigment operator to avoid code duplication 

Definition at line 171 of file Versatile\-Disk\-Row\-Layout.\-cc.



References \-\_\-pad\-Indices.



Referenced by operator=(), and $\sim$\-Versatile\-Disk\-Row\-Layout().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!clone@{clone}}
\index{clone@{clone}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{clone}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Pad\-Row\-Layout2\-D} $\ast$ gear\-::\-Versatile\-Disk\-Row\-Layout\-::clone (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classgear_1_1VersatileDiskRowLayout_a9ae6f8824240e5ce349bf1702231b281}


Returns a copy (clone) of this class. 

As \doxyref{Pad\-Row\-Layout2\-D}{p.}{classgear_1_1PadRowLayout2D} is an abstract interface with several implementation, this is used get a copy of the actual implementation without having to know what the actual implementation is. 

Implements {\bf gear\-::\-Pad\-Row\-Layout2\-D} \doxyref{}{p.}{classgear_1_1PadRowLayout2D_acf245931002c3e22a86b2d1d64cb4c43}.



Definition at line 48 of file Versatile\-Disk\-Row\-Layout.\-cc.



References Versatile\-Disk\-Row\-Layout().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!copy\-\_\-and\-\_\-assign@{copy\-\_\-and\-\_\-assign}}
\index{copy\-\_\-and\-\_\-assign@{copy\-\_\-and\-\_\-assign}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{copy\-\_\-and\-\_\-assign}]{\setlength{\rightskip}{0pt plus 5cm}void gear\-::\-Versatile\-Disk\-Row\-Layout\-::copy\-\_\-and\-\_\-assign (
\begin{DoxyParamCaption}
\item[{const {\bf Versatile\-Disk\-Row\-Layout} \&}]{right}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}}\label{classgear_1_1VersatileDiskRowLayout_a96fe973581d5e40a344e5e6a2532a0aa}


function to copy all internal variables, incl. 

the objects pointed to and owned by the \doxyref{Versatile\-Disk\-Row\-Layout}{p.}{classgear_1_1VersatileDiskRowLayout}. Used by constructor and assigment operator to avoid code duplication 

Definition at line 29 of file Versatile\-Disk\-Row\-Layout.\-cc.



References \-\_\-extent, \-\_\-is\-Frayed, \-\_\-n\-Pad, \-\_\-pad\-Indices, and \-\_\-rows.



Referenced by operator=(), and Versatile\-Disk\-Row\-Layout().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!get\-Pad\-Layout\-Type@{get\-Pad\-Layout\-Type}}
\index{get\-Pad\-Layout\-Type@{get\-Pad\-Layout\-Type}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{get\-Pad\-Layout\-Type}]{\setlength{\rightskip}{0pt plus 5cm}int gear\-::\-Versatile\-Disk\-Row\-Layout\-::get\-Pad\-Layout\-Type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}\label{classgear_1_1VersatileDiskRowLayout_aecc583df62805566bbbfdb22bf56129a}
\begin{DoxyRefDesc}{Deprecated}
\item[{\bf Deprecated}]\{ As there now is more than one implementation for each coordinate type this is not sufficient to distinguish the implementations any more. Use \doxyref{get\-Pad\-Layout\-Impl\-Type()}{p.}{classgear_1_1VersatileDiskRowLayout_a5f744573c34889af889533b409f360b3} to get the implementation type. Use \doxyref{get\-Coordinate\-Type()}{p.}{classgear_1_1FixedDiskLayoutBase_a1651d9e01c77d82c4657e846d3579717} to get the type of the coordinate system.\end{DoxyRefDesc}


For backward compatibility this function returns Pad\-Row\-Layout2\-D.\-C\-A\-R\-T\-E\-S\-I\-A\-N, i. e. \doxyref{get\-Coordinate\-Type()}{p.}{classgear_1_1FixedDiskLayoutBase_a1651d9e01c77d82c4657e846d3579717}.\} 

Reimplemented from {\bf gear\-::\-Fixed\-Disk\-Layout\-Base} \doxyref{}{p.}{classgear_1_1FixedDiskLayoutBase_a80b8ceed64bb8e796d2d1e086bc31597}.



Definition at line 151 of file Versatile\-Disk\-Row\-Layout.\-cc.



References gear\-::\-Fixed\-Disk\-Layout\-Base\-::get\-Coordinate\-Type().

\index{gear\-::\-Versatile\-Disk\-Row\-Layout@{gear\-::\-Versatile\-Disk\-Row\-Layout}!get\-Pad\-Shape@{get\-Pad\-Shape}}
\index{get\-Pad\-Shape@{get\-Pad\-Shape}!gear::VersatileDiskRowLayout@{gear\-::\-Versatile\-Disk\-Row\-Layout}}
\subsubsection[{get\-Pad\-Shape}]{\setlength{\rightskip}{0pt plus 5cm}virtual int gear\-::\-Versatile\-Disk\-Row\-Layout\-::get\-Pad\-Shape (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}\label{classgear_1_1VersatileDiskRowLayout_acb59214dbe76ed72956eb30a92d048ad}


The shape of the pads\-: Pad\-Row\-Layout2\-D\-::\-R\-E\-C\-T\-A\-N\-G\-L\-E (i.\-e. 

keystone). 

Reimplemented from {\bf gear\-::\-Fixed\-Disk\-Layout\-Base} \doxyref{}{p.}{classgear_1_1FixedDiskLayoutBase_a8fef9342018a01f501c7eb7d30f3ef23}.



Definition at line 160 of file Versatile\-Disk\-Row\-Layout.\-h.



The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Versatile\-Disk\-Row\-Layout.\-h\item 
Versatile\-Disk\-Row\-Layout.\-cc\end{DoxyCompactItemize}
