\hypertarget{class_open_chams_1_1_net}{}\section{Net Class Reference}
\label{class_open_chams_1_1_net}\index{Net@{Net}}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
class \mbox{\hyperlink{class_open_chams_1_1_net_1_1_connection}{Connection}}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_open_chams_1_1_port}{Port}} $\ast$ \mbox{\hyperlink{class_open_chams_1_1_net_af395a7c9d6f3c2b24500b91260873664}{add\+Port}} (const std\+::string \&type, unsigned idx, double x, double y, const std\+::string \&orient)
\begin{DoxyCompactList}\small\item\em adds a \mbox{\hyperlink{class_open_chams_1_1_port}{Port}} to the net. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}} $\ast$ \mbox{\hyperlink{class_open_chams_1_1_net_a643a969f62770301b8b70ed63c36a55e}{add\+Wire}} ()
\begin{DoxyCompactList}\small\item\em adds a \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}} to the net. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_open_chams_1_1_net_a40c2c019175ba3bfa4b90f4ad5d06483}{connect\+To}} (const std\+::string \&instance\+Name, const std\+::string \&connector\+Name)
\begin{DoxyCompactList}\small\item\em adds a connection to the net. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a87e7c71b25171dd479af0488865c8179}\label{class_open_chams_1_1_net_a87e7c71b25171dd479af0488865c8179}} 
const std\+::vector$<$ \mbox{\hyperlink{class_open_chams_1_1_net_1_1_connection}{Net\+::\+Connection}} $\ast$ $>$ \& \mbox{\hyperlink{class_open_chams_1_1_net_a87e7c71b25171dd479af0488865c8179}{get\+Connections}} ()
\begin{DoxyCompactList}\small\item\em returns the list of net\textquotesingle{}s connections. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a3fd7335faa33dce2f87c7e50eef3e294}\label{class_open_chams_1_1_net_a3fd7335faa33dce2f87c7e50eef3e294}} 
const std\+::string \& \mbox{\hyperlink{class_open_chams_1_1_net_a3fd7335faa33dce2f87c7e50eef3e294}{get\+Name}} () const
\begin{DoxyCompactList}\small\item\em returns the name of the net. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a4085d6a7b6958ffdd7ab5df7e6d6e53f}\label{class_open_chams_1_1_net_a4085d6a7b6958ffdd7ab5df7e6d6e53f}} 
\mbox{\hyperlink{class_open_chams_1_1_netlist}{Netlist}} $\ast$ \mbox{\hyperlink{class_open_chams_1_1_net_a4085d6a7b6958ffdd7ab5df7e6d6e53f}{get\+Netlist}} ()
\begin{DoxyCompactList}\small\item\em returns the \mbox{\hyperlink{class_open_chams_1_1_netlist}{Netlist}} to which the net belongs. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_ae9d241ec6dd833b6d7813e14ff2d9eca}\label{class_open_chams_1_1_net_ae9d241ec6dd833b6d7813e14ff2d9eca}} 
const std\+::vector$<$ \mbox{\hyperlink{class_open_chams_1_1_port}{Port}} $\ast$ $>$ \& \mbox{\hyperlink{class_open_chams_1_1_net_ae9d241ec6dd833b6d7813e14ff2d9eca}{get\+Ports}} ()
\begin{DoxyCompactList}\small\item\em returns the list of net\textquotesingle{}s \mbox{\hyperlink{class_open_chams_1_1_port}{Port}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a7a88ff26f0ba9cfbfa5059c565d1e30b}\label{class_open_chams_1_1_net_a7a88ff26f0ba9cfbfa5059c565d1e30b}} 
const std\+::string \& \mbox{\hyperlink{class_open_chams_1_1_net_a7a88ff26f0ba9cfbfa5059c565d1e30b}{get\+Type}} ()
\begin{DoxyCompactList}\small\item\em returns the type of the net. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a2f8bcf7cad7711850efeca408f146b8a}\label{class_open_chams_1_1_net_a2f8bcf7cad7711850efeca408f146b8a}} 
const std\+::vector$<$ \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}} $\ast$ $>$ \& \mbox{\hyperlink{class_open_chams_1_1_net_a2f8bcf7cad7711850efeca408f146b8a}{get\+Wires}} ()
\begin{DoxyCompactList}\small\item\em returns the list of net\textquotesingle{}s \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_ac4a660a2f87ab816f6e8b5ae2c2142f9}\label{class_open_chams_1_1_net_ac4a660a2f87ab816f6e8b5ae2c2142f9}} 
bool \mbox{\hyperlink{class_open_chams_1_1_net_ac4a660a2f87ab816f6e8b5ae2c2142f9}{has\+No\+Connections}} ()
\begin{DoxyCompactList}\small\item\em returns true if the net has no \mbox{\hyperlink{class_open_chams_1_1_net_1_1_connection}{Net\+::\+Connection}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_a3eef7a6d1e945441f197f0918ab8895e}\label{class_open_chams_1_1_net_a3eef7a6d1e945441f197f0918ab8895e}} 
bool \mbox{\hyperlink{class_open_chams_1_1_net_a3eef7a6d1e945441f197f0918ab8895e}{has\+No\+Ports}} ()
\begin{DoxyCompactList}\small\item\em returns true if net has no \mbox{\hyperlink{class_open_chams_1_1_port}{Port}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_ac9470e72b26d4cddef3d13e69057ee54}\label{class_open_chams_1_1_net_ac9470e72b26d4cddef3d13e69057ee54}} 
bool \mbox{\hyperlink{class_open_chams_1_1_net_ac9470e72b26d4cddef3d13e69057ee54}{has\+No\+Wires}} ()
\begin{DoxyCompactList}\small\item\em returns true if net has no \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{class_open_chams_1_1_net_ab2570574db49633f58f7b64099d6852c}\label{class_open_chams_1_1_net_ab2570574db49633f58f7b64099d6852c}} 
bool \mbox{\hyperlink{class_open_chams_1_1_net_ab2570574db49633f58f7b64099d6852c}{is\+External}} ()
\begin{DoxyCompactList}\small\item\em returns true if the net is external. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_open_chams_1_1_net_a471976cf479ec4b1f521923d3a4e617d}{Net}} (const std\+::string \&net\+Name, const std\+::string \&type\+Name, bool, \mbox{\hyperlink{class_open_chams_1_1_netlist}{Netlist}} $\ast$)
\begin{DoxyCompactList}\small\item\em creates a new net. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
This class describes a \mbox{\hyperlink{class_open_chams_1_1_net}{Net}}. 

\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_open_chams_1_1_net_a471976cf479ec4b1f521923d3a4e617d}\label{class_open_chams_1_1_net_a471976cf479ec4b1f521923d3a4e617d}} 
\index{Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}!Net@{Net}}
\index{Net@{Net}!Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}}
\subsubsection{\texorpdfstring{Net()}{Net()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_open_chams_1_1_net}{Net}} (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{net\+Name,  }\item[{const std\+::string \&}]{type\+Name,  }\item[{bool}]{is\+External,  }\item[{\mbox{\hyperlink{class_open_chams_1_1_netlist}{Netlist}} $\ast$}]{netlist }\end{DoxyParamCaption})}



creates a new net. 


\begin{DoxyParams}{Parameters}
{\em name} & the name of the net. \\
\hline
{\em type} & the type of the net (L\+O\+G\+I\+C\+AL, P\+O\+W\+ER, G\+R\+O\+U\+ND, ...). \\
\hline
{\em external} & if true, then the net is set as external. \\
\hline
{\em netlist} & the netlist to which the transistor belongs. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_open_chams_1_1_net_af395a7c9d6f3c2b24500b91260873664}\label{class_open_chams_1_1_net_af395a7c9d6f3c2b24500b91260873664}} 
\index{Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}!add\+Port@{add\+Port}}
\index{add\+Port@{add\+Port}!Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}}
\subsubsection{\texorpdfstring{add\+Port()}{addPort()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_open_chams_1_1_port}{Port}} $\ast$ add\+Port (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{type,  }\item[{unsigned}]{idx,  }\item[{double}]{x,  }\item[{double}]{y,  }\item[{const std\+::string \&}]{orient }\end{DoxyParamCaption})}



adds a \mbox{\hyperlink{class_open_chams_1_1_port}{Port}} to the net. 


\begin{DoxyParams}{Parameters}
{\em type} & the type of the port. \\
\hline
{\em idx} & the index of the port. \\
\hline
{\em x} & the x coordinate of the port. \\
\hline
{\em y} & the y coordinate of the port. \\
\hline
{\em orient} & the orientation of the port.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the newly created \mbox{\hyperlink{class_open_chams_1_1_port}{Port}}. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_open_chams_1_1_net_a643a969f62770301b8b70ed63c36a55e}\label{class_open_chams_1_1_net_a643a969f62770301b8b70ed63c36a55e}} 
\index{Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}!add\+Wire@{add\+Wire}}
\index{add\+Wire@{add\+Wire}!Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}}
\subsubsection{\texorpdfstring{add\+Wire()}{addWire()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}} $\ast$ add\+Wire (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



adds a \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}} to the net. 

\begin{DoxyReturn}{Returns}
the newly create \mbox{\hyperlink{class_open_chams_1_1_wire}{Wire}}. 
\end{DoxyReturn}
\mbox{\Hypertarget{class_open_chams_1_1_net_a40c2c019175ba3bfa4b90f4ad5d06483}\label{class_open_chams_1_1_net_a40c2c019175ba3bfa4b90f4ad5d06483}} 
\index{Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}!connect\+To@{connect\+To}}
\index{connect\+To@{connect\+To}!Open\+Chams\+::\+Net@{Open\+Chams\+::\+Net}}
\subsubsection{\texorpdfstring{connect\+To()}{connectTo()}}
{\footnotesize\ttfamily void connect\+To (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{instance\+Name,  }\item[{const std\+::string \&}]{connector\+Name }\end{DoxyParamCaption})}



adds a connection to the net. 


\begin{DoxyParams}{Parameters}
{\em instance\+Name} & the instance\textquotesingle{}s name of the \mbox{\hyperlink{class_open_chams_1_1_net_1_1_connection}{Net\+::\+Connection}}. \\
\hline
{\em connector\+Name} & the connector\textquotesingle{}s name ot the \mbox{\hyperlink{class_open_chams_1_1_net_1_1_connection}{Net\+::\+Connection}}. \\
\hline
\end{DoxyParams}
