\hypertarget{classCRL_1_1AllianceFramework}{\section{C\-R\-L\-:\-:Alliance\-Framework Class Reference}
\label{classCRL_1_1AllianceFramework}\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}}
}


A Framework to work with Alliance formats.  




Inherits {\bf Hurricane\-::\-D\-Bo}.

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432}{Instances\-Count\-Flags} \{ \\*
\hyperlink{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a3c65ebdaecc4b34b54a01ff3a5c3195a}{Recursive} = (1$<$$<$0), 
\\*
\hyperlink{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a4a10630340ffb5b0aa9983f8b7f4cbe0}{Ignore\-Feeds} = (1$<$$<$1)
 \}
\item 
enum \hyperlink{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25}{Library\-Flags} \{ \\*
\hyperlink{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25ade58398b3ec849dc3aedb6a0812fbc7a}{Create\-Library} = (1$<$$<$0)
, \\*
\hyperlink{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25a8d9678631764327cbfe81f8184fa9e05}{Has\-Catalog} = (1$<$$<$2)
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
string \hyperlink{classCRL_1_1AllianceFramework_a5992ef0669bfdefc4d712db9369bfb81}{get\-Print} () const 
\item 
bool \hyperlink{classCRL_1_1AllianceFramework_adc7dc5aa7e84b1fd94bc4a29bc6260e1}{is\-P\-O\-W\-E\-R} (const string \&name)
\item 
bool \hyperlink{classCRL_1_1AllianceFramework_a0dcd1a667226f37353fdf0ea232d9c5d}{is\-G\-R\-O\-U\-N\-D} (const string \&name)
\item 
bool \hyperlink{classCRL_1_1AllianceFramework_a79ae573b6b685c1796e29ccc15c1c146}{is\-C\-L\-O\-C\-K} (const string \&name)
\item 
bool \hyperlink{classCRL_1_1AllianceFramework_aa41d24d292c19624236fff250a28b102}{is\-B\-L\-O\-C\-K\-A\-G\-E} (const string \&name)
\item 
bool \hyperlink{classCRL_1_1AllianceFramework_a0c48b5b15d769c6f17c4098dcaf46bcd}{is\-Pad} (const string \&name)
\item 
\hyperlink{classCRL_1_1Environment}{Environment} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a8e044592d2ceaea0060aec5dc5cc6900}{get\-Environment} ()
\item 
\hyperlink{classCRL_1_1Catalog}{Catalog} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a036bd6fa8f837c81f60b9d424f817add}{get\-Catalog} ()
\item 
const {\bf Name} \& \hyperlink{classCRL_1_1AllianceFramework_a9d2ad16894430081a00545d8fae952ed}{get\-Parent\-Library\-Name} () const 
\item 
{\bf Library} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_afe822e9e04b613862aec5066743e1ffd}{get\-Parent\-Library} ()
\item 
{\bf Library} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_ab6f9ac0f07b20c2444b13ef8bc55c9ea}{get\-Library} (unsigned int index)
\item 
\hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a4085f3bc96ca5e4bf2d41a4ada9658f2}{get\-Alliance\-Library} (unsigned int index)
\item 
\hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a8e007b3f2ac45feec2907f77530a718c}{get\-Alliance\-Library} ({\bf Library} $\ast$)
\item 
\hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a4efc06e6a6d5413398946453c3fd6649}{create\-Library} (const string \&path, unsigned int flags, string lib\-Name=\char`\"{}\char`\"{})
\item 
void \hyperlink{classCRL_1_1AllianceFramework_a5e5a3d137a2c141bf8984877b7f7d18a}{save\-Library} ({\bf Library} $\ast$)
\item 
void \hyperlink{classCRL_1_1AllianceFramework_afe7a103d54e865511fd55af90eddcf4e}{save\-Library} (\hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} $\ast$)
\item 
\hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_ae102d655820c5d0a29a0200c5e83d42c}{get\-Routing\-Gauge} (const {\bf Name} \&name=\char`\"{}\char`\"{})
\item 
const {\bf Name} \hyperlink{classCRL_1_1AllianceFramework_aa584786d09bbb2469923a181b6f8e0d4}{get\-Default\-C\-G\-Pin\-Layer\-Name} () const 
\item 
void \hyperlink{classCRL_1_1AllianceFramework_ae182fd150c695fd24c1b10ddbc377b32}{add\-Routing\-Gauge} (\hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge} $\ast$)
\item 
void \hyperlink{classCRL_1_1AllianceFramework_aab16db33a0ce2e3bce5739f7cadb3d5a}{add\-Cell\-Gauge} (Cell\-Gauge $\ast$)
\item 
{\bf Cell} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a5f0b56b303c51af5ea5c1eb1096786dd}{get\-Cell} (const string \&name, unsigned int mode, unsigned int depth=(unsigned int)-\/1)
\item 
{\bf Cell} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_ac4381ad0c3799d584ef3ea160846e2bb}{create\-Cell} (const string \&name, \hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} $\ast$library=N\-U\-L\-L)
\item 
void \hyperlink{classCRL_1_1AllianceFramework_abb34a606c7cd21638b4439701a8dcef9}{save\-Cell} ({\bf Cell} $\ast$, unsigned int mode)
\item 
unsigned int \hyperlink{classCRL_1_1AllianceFramework_a2e43b1928a05eea4b2dc1fe0757e4865}{load\-Library\-Cells} ({\bf Library} $\ast$)
\item 
unsigned int \hyperlink{classCRL_1_1AllianceFramework_adc8acedeb9daa37b4ab2dee0717835fa}{load\-Library\-Cells} (const {\bf Name} \&)
\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \hyperlink{classCRL_1_1AllianceFramework}{Alliance\-Framework} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a8cff32ced8cc163cadca885d8ed8a5fc}{create} (unsigned long flags=No\-Flags)
\item 
static \hyperlink{classCRL_1_1AllianceFramework}{Alliance\-Framework} $\ast$ \hyperlink{classCRL_1_1AllianceFramework_a976479af696a86c998c10d9d2604839d}{get} ()
\item 
static size\-\_\-t \hyperlink{classCRL_1_1AllianceFramework_a95aa8c6b8ab3f995daf22a0317324933}{get\-Instances\-Count} ({\bf Cell} $\ast$, unsigned int flags)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
A Framework to work with Alliance formats. 

The \hyperlink{classCRL_1_1AllianceFramework}{Alliance\-Framework} is also registered as {\bf Hurricane\-::\-Property} on the {\bf Hurricane\-::\-Data\-Base}. 

\subsection{Member Enumeration Documentation}
\hypertarget{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Instances\-Count\-Flags@{Instances\-Count\-Flags}}
\index{Instances\-Count\-Flags@{Instances\-Count\-Flags}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{Instances\-Count\-Flags}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf C\-R\-L\-::\-Alliance\-Framework\-::\-Instances\-Count\-Flags}}}\label{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432}
Flags to control the way \hyperlink{classCRL_1_1AllianceFramework_a95aa8c6b8ab3f995daf22a0317324933}{Alliance\-Framework\-::get\-Instances\-Count()} work. \begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{Recursive@{Recursive}!C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}}\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Recursive@{Recursive}}\item[{\em 
\hypertarget{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a3c65ebdaecc4b34b54a01ff3a5c3195a}{Recursive}\label{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a3c65ebdaecc4b34b54a01ff3a5c3195a}
}]Account the instances down to the leaf cells. \index{Ignore\-Feeds@{Ignore\-Feeds}!C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}}\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Ignore\-Feeds@{Ignore\-Feeds}}\item[{\em 
\hypertarget{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a4a10630340ffb5b0aa9983f8b7f4cbe0}{Ignore\-Feeds}\label{classCRL_1_1AllianceFramework_a03ef94e043d2d25eb7a6a5f1ae176432a4a10630340ffb5b0aa9983f8b7f4cbe0}
}]Don't count feed cells. \end{description}
\end{Desc}
\hypertarget{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Library\-Flags@{Library\-Flags}}
\index{Library\-Flags@{Library\-Flags}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{Library\-Flags}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf C\-R\-L\-::\-Alliance\-Framework\-::\-Library\-Flags}}}\label{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25}
Flags to control Library creation. \begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{Create\-Library@{Create\-Library}!C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}}\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Create\-Library@{Create\-Library}}\item[{\em 
\hypertarget{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25ade58398b3ec849dc3aedb6a0812fbc7a}{Create\-Library}\label{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25ade58398b3ec849dc3aedb6a0812fbc7a}
}]Ask to create a library if it doesn't exists. \index{Has\-Catalog@{Has\-Catalog}!C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}}\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!Has\-Catalog@{Has\-Catalog}}\item[{\em 
\hypertarget{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25a8d9678631764327cbfe81f8184fa9e05}{Has\-Catalog}\label{classCRL_1_1AllianceFramework_a0ec1cd09dec34dfecfec22927b92cc25a8d9678631764327cbfe81f8184fa9e05}
}]This flag is set if the C\-A\-T\-A\-L\-O\-G file metadata is present in the library directory. \end{description}
\end{Desc}


\subsection{Member Function Documentation}
\hypertarget{classCRL_1_1AllianceFramework_a8cff32ced8cc163cadca885d8ed8a5fc}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!create@{create}}
\index{create@{create}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{create}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Alliance\-Framework} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::create (
\begin{DoxyParamCaption}
\item[{unsigned long}]{flags = {\ttfamily NoFlags}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{classCRL_1_1AllianceFramework_a8cff32ced8cc163cadca885d8ed8a5fc}
{\bfseries Returns\-:} The \hyperlink{classCRL_1_1AllianceFramework}{Alliance\-Framework} singleton. This function has no effect if the singleton has already been created. It is indeed an alias over \hyperlink{classCRL_1_1AllianceFramework_a976479af696a86c998c10d9d2604839d}{Alliance\-Framework\-::get()}. \hypertarget{classCRL_1_1AllianceFramework_a976479af696a86c998c10d9d2604839d}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get@{get}}
\index{get@{get}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::get (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{classCRL_1_1AllianceFramework_a976479af696a86c998c10d9d2604839d}
{\bfseries Returns\-:} the singleton, create it if need be. \hypertarget{classCRL_1_1AllianceFramework_a5992ef0669bfdefc4d712db9369bfb81}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Print@{get\-Print}}
\index{get\-Print@{get\-Print}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Print}]{\setlength{\rightskip}{0pt plus 5cm}string C\-R\-L\-::\-Alliance\-Framework\-::get\-Print (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}}\label{classCRL_1_1AllianceFramework_a5992ef0669bfdefc4d712db9369bfb81}
{\bfseries Returns\-:} A nicely formatted string displaying the configuration of the \hyperlink{classCRL_1_1AllianceFramework}{Alliance\-Framework}, for ttys. \hypertarget{classCRL_1_1AllianceFramework_adc7dc5aa7e84b1fd94bc4a29bc6260e1}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!is\-P\-O\-W\-E\-R@{is\-P\-O\-W\-E\-R}}
\index{is\-P\-O\-W\-E\-R@{is\-P\-O\-W\-E\-R}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{is\-P\-O\-W\-E\-R}]{\setlength{\rightskip}{0pt plus 5cm}bool C\-R\-L\-::\-Alliance\-Framework\-::is\-P\-O\-W\-E\-R (
\begin{DoxyParamCaption}
\item[{const string \&}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_adc7dc5aa7e84b1fd94bc4a29bc6260e1}
{\bfseries Returns\-:} {\bfseries true} if {\ttfamily name} is recognized as a power net name. \hypertarget{classCRL_1_1AllianceFramework_a0dcd1a667226f37353fdf0ea232d9c5d}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!is\-G\-R\-O\-U\-N\-D@{is\-G\-R\-O\-U\-N\-D}}
\index{is\-G\-R\-O\-U\-N\-D@{is\-G\-R\-O\-U\-N\-D}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{is\-G\-R\-O\-U\-N\-D}]{\setlength{\rightskip}{0pt plus 5cm}bool C\-R\-L\-::\-Alliance\-Framework\-::is\-G\-R\-O\-U\-N\-D (
\begin{DoxyParamCaption}
\item[{const string \&}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a0dcd1a667226f37353fdf0ea232d9c5d}
{\bfseries Returns\-:} {\bfseries true} if {\ttfamily name} is recognized as a ground net name. \hypertarget{classCRL_1_1AllianceFramework_a79ae573b6b685c1796e29ccc15c1c146}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!is\-C\-L\-O\-C\-K@{is\-C\-L\-O\-C\-K}}
\index{is\-C\-L\-O\-C\-K@{is\-C\-L\-O\-C\-K}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{is\-C\-L\-O\-C\-K}]{\setlength{\rightskip}{0pt plus 5cm}bool C\-R\-L\-::\-Alliance\-Framework\-::is\-C\-L\-O\-C\-K (
\begin{DoxyParamCaption}
\item[{const string \&}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a79ae573b6b685c1796e29ccc15c1c146}
{\bfseries Returns\-:} {\bfseries true} if {\ttfamily name} is recognized as a clock net name. \hypertarget{classCRL_1_1AllianceFramework_aa41d24d292c19624236fff250a28b102}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!is\-B\-L\-O\-C\-K\-A\-G\-E@{is\-B\-L\-O\-C\-K\-A\-G\-E}}
\index{is\-B\-L\-O\-C\-K\-A\-G\-E@{is\-B\-L\-O\-C\-K\-A\-G\-E}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{is\-B\-L\-O\-C\-K\-A\-G\-E}]{\setlength{\rightskip}{0pt plus 5cm}bool C\-R\-L\-::\-Alliance\-Framework\-::is\-B\-L\-O\-C\-K\-A\-G\-E (
\begin{DoxyParamCaption}
\item[{const string \&}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_aa41d24d292c19624236fff250a28b102}
{\bfseries Returns\-:} {\bfseries true} if {\ttfamily name} is recognized as a blockage net name. \hypertarget{classCRL_1_1AllianceFramework_a0c48b5b15d769c6f17c4098dcaf46bcd}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!is\-Pad@{is\-Pad}}
\index{is\-Pad@{is\-Pad}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{is\-Pad}]{\setlength{\rightskip}{0pt plus 5cm}bool C\-R\-L\-::\-Alliance\-Framework\-::is\-Pad (
\begin{DoxyParamCaption}
\item[{const string \&}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a0c48b5b15d769c6f17c4098dcaf46bcd}
{\bfseries Returns\-:} {\bfseries true} if {\ttfamily name} is recognized as a pad cell name. \hypertarget{classCRL_1_1AllianceFramework_a8e044592d2ceaea0060aec5dc5cc6900}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Environment@{get\-Environment}}
\index{get\-Environment@{get\-Environment}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Environment}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Environment} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Environment (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a8e044592d2ceaea0060aec5dc5cc6900}
{\bfseries Returns\-:} the Environement. \hypertarget{classCRL_1_1AllianceFramework_a036bd6fa8f837c81f60b9d424f817add}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Catalog@{get\-Catalog}}
\index{get\-Catalog@{get\-Catalog}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Catalog}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Catalog} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Catalog (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a036bd6fa8f837c81f60b9d424f817add}
{\bfseries Returns\-:} the composite catalog build from all the library metadatas. \hypertarget{classCRL_1_1AllianceFramework_a9d2ad16894430081a00545d8fae952ed}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Parent\-Library\-Name@{get\-Parent\-Library\-Name}}
\index{get\-Parent\-Library\-Name@{get\-Parent\-Library\-Name}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Parent\-Library\-Name}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Name} \& C\-R\-L\-::\-Alliance\-Framework\-::get\-Parent\-Library\-Name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_a9d2ad16894430081a00545d8fae952ed}
{\bfseries Returns\-:} the name of the framework parent library, actually hard coded to \char`\"{}\-Root\-Library\char`\"{}. \hypertarget{classCRL_1_1AllianceFramework_afe822e9e04b613862aec5066743e1ffd}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Parent\-Library@{get\-Parent\-Library}}
\index{get\-Parent\-Library@{get\-Parent\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Parent\-Library}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Library} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Parent\-Library (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_afe822e9e04b613862aec5066743e1ffd}
{\bfseries Returns\-:} the library under which the Alliance ones are rooted. \hypertarget{classCRL_1_1AllianceFramework_ab6f9ac0f07b20c2444b13ef8bc55c9ea}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Library@{get\-Library}}
\index{get\-Library@{get\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Library}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Library} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Library (
\begin{DoxyParamCaption}
\item[{unsigned int}]{index}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_ab6f9ac0f07b20c2444b13ef8bc55c9ea}
{\bfseries Returns\-:} the {\bf Hurricane\-::\-Library} at {\ttfamily index} in the search path. \hypertarget{classCRL_1_1AllianceFramework_a4085f3bc96ca5e4bf2d41a4ada9658f2}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Alliance\-Library@{get\-Alliance\-Library}}
\index{get\-Alliance\-Library@{get\-Alliance\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Alliance\-Library}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Alliance\-Library} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Alliance\-Library (
\begin{DoxyParamCaption}
\item[{unsigned int}]{index}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a4085f3bc96ca5e4bf2d41a4ada9658f2}
{\bfseries Returns\-:} the \hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} at {\ttfamily index} in the search path. \hypertarget{classCRL_1_1AllianceFramework_a8e007b3f2ac45feec2907f77530a718c}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Alliance\-Library@{get\-Alliance\-Library}}
\index{get\-Alliance\-Library@{get\-Alliance\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Alliance\-Library}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Alliance\-Library} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Alliance\-Library (
\begin{DoxyParamCaption}
\item[{{\bf Library} $\ast$}]{library}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a8e007b3f2ac45feec2907f77530a718c}
{\bfseries Returns\-:} the \hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} which is associated to the {\bf Hurricane\-::\-Library} {\ttfamily library}. \hypertarget{classCRL_1_1AllianceFramework_a4efc06e6a6d5413398946453c3fd6649}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!create\-Library@{create\-Library}}
\index{create\-Library@{create\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{create\-Library}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Alliance\-Library} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::create\-Library (
\begin{DoxyParamCaption}
\item[{const string \&}]{path, }
\item[{unsigned int}]{flags, }
\item[{string}]{lib\-Name = {\ttfamily \char`\"{}\char`\"{}}}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a4efc06e6a6d5413398946453c3fd6649}

\begin{DoxyParams}{Parameters}
{\em path} & path to the library directory. \\
\hline
{\em flags} & control the creation behavior. \\
\hline
{\em lib\-Name} & the name of the library. {\bfseries Returns\-:} the created Alliance library.\\
\hline
\end{DoxyParams}
Create a new \hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library}. If the library is not already in the search it's prepended, otherwise the one already in place is used. If the library is in {\itshape load by lib} mode, the library parser is called and all the Cells are loaded. \hypertarget{classCRL_1_1AllianceFramework_a5e5a3d137a2c141bf8984877b7f7d18a}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!save\-Library@{save\-Library}}
\index{save\-Library@{save\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{save\-Library}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::save\-Library (
\begin{DoxyParamCaption}
\item[{{\bf Library} $\ast$}]{library}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a5e5a3d137a2c141bf8984877b7f7d18a}
{\bfseries Returns\-:} save to disk all Cells of that library. \hypertarget{classCRL_1_1AllianceFramework_afe7a103d54e865511fd55af90eddcf4e}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!save\-Library@{save\-Library}}
\index{save\-Library@{save\-Library}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{save\-Library}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::save\-Library (
\begin{DoxyParamCaption}
\item[{{\bf Alliance\-Library} $\ast$}]{library}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_afe7a103d54e865511fd55af90eddcf4e}
{\bfseries Returns\-:} save to disk all Cells of that library. \hypertarget{classCRL_1_1AllianceFramework_ae102d655820c5d0a29a0200c5e83d42c}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Routing\-Gauge@{get\-Routing\-Gauge}}
\index{get\-Routing\-Gauge@{get\-Routing\-Gauge}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Routing\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}Cell\-Gauge $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Routing\-Gauge (
\begin{DoxyParamCaption}
\item[{const {\bf Name} \&}]{name = {\ttfamily \char`\"{}\char`\"{}}}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_ae102d655820c5d0a29a0200c5e83d42c}
{\bfseries Returns\-:} get the \hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge} {\ttfamily name}. If {\ttfamily name} is empty, the default one.

{\bfseries Returns\-:} get the Cell\-Gauge {\ttfamily name}. If {\ttfamily name} is empty, the default one. \hypertarget{classCRL_1_1AllianceFramework_aa584786d09bbb2469923a181b6f8e0d4}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Default\-C\-G\-Pin\-Layer\-Name@{get\-Default\-C\-G\-Pin\-Layer\-Name}}
\index{get\-Default\-C\-G\-Pin\-Layer\-Name@{get\-Default\-C\-G\-Pin\-Layer\-Name}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Default\-C\-G\-Pin\-Layer\-Name}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Name} C\-R\-L\-::\-Alliance\-Framework\-::get\-Default\-C\-G\-Pin\-Layer\-Name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{classCRL_1_1AllianceFramework_aa584786d09bbb2469923a181b6f8e0d4}
{\bfseries Returns\-:} argh. Forget for what it is. \hypertarget{classCRL_1_1AllianceFramework_ae182fd150c695fd24c1b10ddbc377b32}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!add\-Routing\-Gauge@{add\-Routing\-Gauge}}
\index{add\-Routing\-Gauge@{add\-Routing\-Gauge}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{add\-Routing\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::add\-Routing\-Gauge (
\begin{DoxyParamCaption}
\item[{{\bf Routing\-Gauge} $\ast$}]{gauge}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_ae182fd150c695fd24c1b10ddbc377b32}
{\bfseries Returns\-:} Add a new \hyperlink{classCRL_1_1RoutingGauge}{Routing\-Gauge}. The last added becomes the default one. \hypertarget{classCRL_1_1AllianceFramework_aab16db33a0ce2e3bce5739f7cadb3d5a}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!add\-Cell\-Gauge@{add\-Cell\-Gauge}}
\index{add\-Cell\-Gauge@{add\-Cell\-Gauge}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{add\-Cell\-Gauge}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::add\-Cell\-Gauge (
\begin{DoxyParamCaption}
\item[{Cell\-Gauge $\ast$}]{gauge}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_aab16db33a0ce2e3bce5739f7cadb3d5a}
{\bfseries Returns\-:} Add a new Cell\-Gauge. The last added becomes the default one. \hypertarget{classCRL_1_1AllianceFramework_a5f0b56b303c51af5ea5c1eb1096786dd}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Cell@{get\-Cell}}
\index{get\-Cell@{get\-Cell}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Cell}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Cell} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::get\-Cell (
\begin{DoxyParamCaption}
\item[{const string \&}]{name, }
\item[{unsigned int}]{mode, }
\item[{unsigned int}]{depth = {\ttfamily (unsigned~int)-\/1}}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a5f0b56b303c51af5ea5c1eb1096786dd}

\begin{DoxyParams}{Parameters}
{\em name} & the name of the Cell. \\
\hline
{\em mode} & control the loader behavior. \\
\hline
{\em depth} & the number of hierarchical levels under this cell. {\bfseries Returns\-:} the requested Cell.\\
\hline
\end{DoxyParams}
Find the first cell that match in the library search path, then call the parsers to load the requested views. If the cell is already in memory, it is directly returned. Thus a Cell never gets loaded twice from disk. \hypertarget{classCRL_1_1AllianceFramework_ac4381ad0c3799d584ef3ea160846e2bb}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!create\-Cell@{create\-Cell}}
\index{create\-Cell@{create\-Cell}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{create\-Cell}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Cell} $\ast$ C\-R\-L\-::\-Alliance\-Framework\-::create\-Cell (
\begin{DoxyParamCaption}
\item[{const string \&}]{name, }
\item[{{\bf Alliance\-Library} $\ast$}]{library = {\ttfamily NULL}}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_ac4381ad0c3799d584ef3ea160846e2bb}

\begin{DoxyParams}{Parameters}
{\em name} & the name of the cell. \\
\hline
{\em library} & an Alliance library. {\bfseries Returns\-:} the newly created Cell.\\
\hline
\end{DoxyParams}
Create a new Cell named {\ttfamily name} in the \hyperlink{classCRL_1_1AllianceLibrary}{Alliance\-Library} {\ttfamily library}. If {\ttfamily library} is {\ttfamily N\-U\-L\-L}, uses the working library. Checks are performed to ensure that in a given library no two cells have the same name. \hypertarget{classCRL_1_1AllianceFramework_abb34a606c7cd21638b4439701a8dcef9}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!save\-Cell@{save\-Cell}}
\index{save\-Cell@{save\-Cell}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{save\-Cell}]{\setlength{\rightskip}{0pt plus 5cm}void C\-R\-L\-::\-Alliance\-Framework\-::save\-Cell (
\begin{DoxyParamCaption}
\item[{{\bf Cell} $\ast$}]{cell, }
\item[{unsigned int}]{mode}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_abb34a606c7cd21638b4439701a8dcef9}
Save on disk the requested Cell (in the revelant library directory). \hypertarget{classCRL_1_1AllianceFramework_a2e43b1928a05eea4b2dc1fe0757e4865}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!load\-Library\-Cells@{load\-Library\-Cells}}
\index{load\-Library\-Cells@{load\-Library\-Cells}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{load\-Library\-Cells}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int C\-R\-L\-::\-Alliance\-Framework\-::load\-Library\-Cells (
\begin{DoxyParamCaption}
\item[{{\bf Library} $\ast$}]{library}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_a2e43b1928a05eea4b2dc1fe0757e4865}
{\bfseries Returns\-:} the number of loaded cell. Load the whole library. \hypertarget{classCRL_1_1AllianceFramework_adc8acedeb9daa37b4ab2dee0717835fa}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!load\-Library\-Cells@{load\-Library\-Cells}}
\index{load\-Library\-Cells@{load\-Library\-Cells}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{load\-Library\-Cells}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int C\-R\-L\-::\-Alliance\-Framework\-::load\-Library\-Cells (
\begin{DoxyParamCaption}
\item[{const {\bf Name} \&}]{}
\end{DoxyParamCaption}
)}}\label{classCRL_1_1AllianceFramework_adc8acedeb9daa37b4ab2dee0717835fa}
{\bfseries Returns\-:} the number of loaded cell. Load the whole library. \hypertarget{classCRL_1_1AllianceFramework_a95aa8c6b8ab3f995daf22a0317324933}{\index{C\-R\-L\-::\-Alliance\-Framework@{C\-R\-L\-::\-Alliance\-Framework}!get\-Instances\-Count@{get\-Instances\-Count}}
\index{get\-Instances\-Count@{get\-Instances\-Count}!CRL::AllianceFramework@{C\-R\-L\-::\-Alliance\-Framework}}
\subsubsection[{get\-Instances\-Count}]{\setlength{\rightskip}{0pt plus 5cm}size\-\_\-t C\-R\-L\-::\-Alliance\-Framework\-::get\-Instances\-Count (
\begin{DoxyParamCaption}
\item[{{\bf Cell} $\ast$}]{cell, }
\item[{unsigned int}]{flags}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{classCRL_1_1AllianceFramework_a95aa8c6b8ab3f995daf22a0317324933}
{\bfseries Returns\-:} the number of instances of that cell. Depending on {\ttfamily flags}, may be recursive or exclude feed cells. 

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