\hypertarget{classCRL_1_1RoutingGauge}{\section{C\-R\-L\-:\-:Routing\-Gauge Class Reference}
\label{classCRL_1_1RoutingGauge}\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}}
}


Gauge for the detailed routing.  


\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{classCRL_1_1RoutingGauge_a4726a734f9aff09873c4034e5169a93a}{destroy} ()
\item 
\hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_a1bea95781196b75705c8e090ff81bd7f}{get\-Clone} () const 
\item 
const {\bf Name} \hyperlink{classCRL_1_1RoutingGauge_a76b02f56584f8397fd24a8bb63606971}{get\-Name} () const 
\item 
{\bf Technology} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_ab6f0b40c0b74e3b40ee41c807ce7ab00}{get\-Technology} () const 
\item 
size\-\_\-t \hyperlink{classCRL_1_1RoutingGauge_a5f39ce15b420c5d0c9eaa10046b6297b}{get\-Depth} () const 
\item 
\hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_aeeb5a871cc28d5fdb00661244beef46f}{get\-Layer\-Gauge} (const {\bf Layer} $\ast$) const 
\item 
size\-\_\-t \hyperlink{classCRL_1_1RoutingGauge_a40e8127ea7a26b26c3e797571b03121a}{get\-Layer\-Depth} (const {\bf Layer} $\ast$) const 
\item 
unsigned int \hyperlink{classCRL_1_1RoutingGauge_aa48835602dc8e2495e56ca4e4c32da58}{get\-Layer\-Direction} (const {\bf Layer} $\ast$) const 
\item 
\hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_ac4ce3200241f3c24c461cd05b270d1bf}{get\-Layer\-Gauge} (size\-\_\-t depth) const 
\item 
unsigned int \hyperlink{classCRL_1_1RoutingGauge_a4974740815b090166949bbc113fbf634}{get\-Layer\-Direction} (size\-\_\-t depth) const 
\item 
const {\bf Layer} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_aaa35c92a1bd8fdf022014b684eab9b40}{get\-Routing\-Layer} (size\-\_\-t depth) const 
\item 
{\bf Layer} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_ab7d83a8694be580a6a4b9aa60adcb0b0}{get\-Contact\-Layer} (size\-\_\-t depth) const 
\item 
const vector\\*
$<$ \hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} $\ast$ $>$ \& \hyperlink{classCRL_1_1RoutingGauge_a9e83c61bbac640a14fe7dc37b33f1a27}{get\-Layer\-Gauges} () const 
\item 
void \hyperlink{classCRL_1_1RoutingGauge_a32313fbc68080e0b7e03b3e06dc1d9c5}{add\-Layer\-Gauge} (\hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} $\ast$layer\-Gauge)
\item 
void \hyperlink{classCRL_1_1RoutingGauge_a70897b3776ccc713b0a45804b66a1b62}{check\-Connexity} () const 
\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge} $\ast$ \hyperlink{classCRL_1_1RoutingGauge_a7258273728f5db47e422d5914c1c36bd}{create} (const char $\ast$name)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Gauge for the detailed routing. 

\subsection{Member Function Documentation}
\hypertarget{classCRL_1_1RoutingGauge_a7258273728f5db47e422d5914c1c36bd}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!create@{create}}
\index{create@{create}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{create}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Routing\-Gauge} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::create (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{classCRL_1_1RoutingGauge_a7258273728f5db47e422d5914c1c36bd}
{\bfseries Returns\-:} A new, empty, gauge named {\ttfamily name}. \hypertarget{classCRL_1_1RoutingGauge_a4726a734f9aff09873c4034e5169a93a}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!destroy@{destroy}}
\index{destroy@{destroy}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{destroy}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Routing\-Gauge\-::destroy (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{classCRL_1_1RoutingGauge_a4726a734f9aff09873c4034e5169a93a}
{\bfseries Returns\-:} destroy the routing gauge. \hypertarget{classCRL_1_1RoutingGauge_a1bea95781196b75705c8e090ff81bd7f}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Clone@{get\-Clone}}
\index{get\-Clone@{get\-Clone}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Clone}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Routing\-Gauge} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Clone (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_a1bea95781196b75705c8e090ff81bd7f}
{\bfseries Returns\-:} a deep copy of the gauge. \hypertarget{classCRL_1_1RoutingGauge_a76b02f56584f8397fd24a8bb63606971}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Name@{get\-Name}}
\index{get\-Name@{get\-Name}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Name}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Name} C\-R\-L\-::\-Routing\-Gauge\-::get\-Name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1RoutingGauge_a76b02f56584f8397fd24a8bb63606971}
{\bfseries Returns\-:} the name of the gauge. \hypertarget{classCRL_1_1RoutingGauge_ab6f0b40c0b74e3b40ee41c807ce7ab00}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Technology@{get\-Technology}}
\index{get\-Technology@{get\-Technology}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Technology}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Hurricane\-::\-Technology} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Technology (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1RoutingGauge_ab6f0b40c0b74e3b40ee41c807ce7ab00}
{\bfseries Returns\-:} the technology the gauge is built upon. \hypertarget{classCRL_1_1RoutingGauge_a5f39ce15b420c5d0c9eaa10046b6297b}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Depth@{get\-Depth}}
\index{get\-Depth@{get\-Depth}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Depth}]{\setlength{\rightskip}{0pt plus 5cm}size\-\_\-t C\-R\-L\-::\-Routing\-Gauge\-::get\-Depth (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1RoutingGauge_a5f39ce15b420c5d0c9eaa10046b6297b}
{\bfseries Returns\-:} the number of routing layers. \hypertarget{classCRL_1_1RoutingGauge_aeeb5a871cc28d5fdb00661244beef46f}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Gauge@{get\-Layer\-Gauge}}
\index{get\-Layer\-Gauge@{get\-Layer\-Gauge}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Routing\-Layer\-Gauge} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Gauge (
\begin{DoxyParamCaption}
\item[{const {\bf Layer} $\ast$}]{layer}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_aeeb5a871cc28d5fdb00661244beef46f}
{\bfseries Returns\-:} the \hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} associated with {\ttfamily layer}. N\-U\-L\-L if {\ttfamily layer} is not managed by the gauge. 

Referenced by get\-Layer\-Direction().

\hypertarget{classCRL_1_1RoutingGauge_a40e8127ea7a26b26c3e797571b03121a}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Depth@{get\-Layer\-Depth}}
\index{get\-Layer\-Depth@{get\-Layer\-Depth}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Depth}]{\setlength{\rightskip}{0pt plus 5cm}size\-\_\-t C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Depth (
\begin{DoxyParamCaption}
\item[{const {\bf Layer} $\ast$}]{layer}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_a40e8127ea7a26b26c3e797571b03121a}
{\bfseries Returns\-:} the depth of the {\ttfamily layer}. If {\ttfamily layer} is not managed by the gauge, return U\-I\-N\-T\-\_\-\-M\-A\-X. \hypertarget{classCRL_1_1RoutingGauge_aa48835602dc8e2495e56ca4e4c32da58}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Direction@{get\-Layer\-Direction}}
\index{get\-Layer\-Direction@{get\-Layer\-Direction}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Direction}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Direction (
\begin{DoxyParamCaption}
\item[{const {\bf Layer} $\ast$}]{layer}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_aa48835602dc8e2495e56ca4e4c32da58}
{\bfseries Returns\-:} the preferred routing direction for {\ttfamily layer}. \hypertarget{classCRL_1_1RoutingGauge_ac4ce3200241f3c24c461cd05b270d1bf}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Gauge@{get\-Layer\-Gauge}}
\index{get\-Layer\-Gauge@{get\-Layer\-Gauge}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Routing\-Layer\-Gauge} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Gauge (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{depth}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_ac4ce3200241f3c24c461cd05b270d1bf}
{\bfseries Returns\-:} the \hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge} at position {\ttfamily depth}. \hypertarget{classCRL_1_1RoutingGauge_a4974740815b090166949bbc113fbf634}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Direction@{get\-Layer\-Direction}}
\index{get\-Layer\-Direction@{get\-Layer\-Direction}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Direction}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Direction (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{depth}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1RoutingGauge_a4974740815b090166949bbc113fbf634}
{\bfseries Returns\-:} the preferred routing direction at position {\ttfamily depth}. 

References C\-R\-L\-::\-Routing\-Layer\-Gauge\-::get\-Direction(), and get\-Layer\-Gauge().

\hypertarget{classCRL_1_1RoutingGauge_aaa35c92a1bd8fdf022014b684eab9b40}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Routing\-Layer@{get\-Routing\-Layer}}
\index{get\-Routing\-Layer@{get\-Routing\-Layer}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Routing\-Layer}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Layer} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Routing\-Layer (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{depth}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_aaa35c92a1bd8fdf022014b684eab9b40}
{\bfseries Returns\-:} the Layer at position {\ttfamily depth}. \hypertarget{classCRL_1_1RoutingGauge_ab7d83a8694be580a6a4b9aa60adcb0b0}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Contact\-Layer@{get\-Contact\-Layer}}
\index{get\-Contact\-Layer@{get\-Contact\-Layer}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Contact\-Layer}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Layer} $\ast$ C\-R\-L\-::\-Routing\-Gauge\-::get\-Contact\-Layer (
\begin{DoxyParamCaption}
\item[{size\-\_\-t}]{depth}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_ab7d83a8694be580a6a4b9aa60adcb0b0}
{\bfseries Returns\-:} the Contact Layer at position {\ttfamily depth}. \hypertarget{classCRL_1_1RoutingGauge_a9e83c61bbac640a14fe7dc37b33f1a27}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!get\-Layer\-Gauges@{get\-Layer\-Gauges}}
\index{get\-Layer\-Gauges@{get\-Layer\-Gauges}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{get\-Layer\-Gauges}]{\setlength{\rightskip}{0pt plus 5cm}const std\-::vector$<$ {\bf Routing\-Layer\-Gauge} $\ast$ $>$ \& C\-R\-L\-::\-Routing\-Gauge\-::get\-Layer\-Gauges (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_a9e83c61bbac640a14fe7dc37b33f1a27}
{\bfseries Returns\-:} the stack of \hyperlink{classCRL_1_1RoutingLayerGauge}{Routing\-Layer\-Gauge}. \hypertarget{classCRL_1_1RoutingGauge_a32313fbc68080e0b7e03b3e06dc1d9c5}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!add\-Layer\-Gauge@{add\-Layer\-Gauge}}
\index{add\-Layer\-Gauge@{add\-Layer\-Gauge}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{add\-Layer\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Routing\-Gauge\-::add\-Layer\-Gauge (
\begin{DoxyParamCaption}
\item[{{\bf Routing\-Layer\-Gauge} $\ast$}]{layer\-Gauge}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1RoutingGauge_a32313fbc68080e0b7e03b3e06dc1d9c5}
{\bfseries Returns\-:} add a new {\ttfamily layer\-Gauge}, on top of the others. The order of addition is meaningful (it's a stack). The closer to the substrate must be added first. \hypertarget{classCRL_1_1RoutingGauge_a70897b3776ccc713b0a45804b66a1b62}{\index{C\-R\-L\-::\-Routing\-Gauge@{C\-R\-L\-::\-Routing\-Gauge}!check\-Connexity@{check\-Connexity}}
\index{check\-Connexity@{check\-Connexity}!CRL::RoutingGauge@{C\-R\-L\-::\-Routing\-Gauge}}
\subsubsection[{check\-Connexity}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Routing\-Gauge\-::check\-Connexity (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1RoutingGauge_a70897b3776ccc713b0a45804b66a1b62}
{\bfseries Returns\-:} Verify that the stacked layers are connex and that contacts between them exists. 

The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Routing\-Gauge.\-h\item 
Routing\-Gauge.\-dox\end{DoxyCompactItemize}
