\doxysection{Connection Class Reference}
\hypertarget{classConnection}{}\label{classConnection}\index{Connection@{Connection}}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classConnection_ad2fd635ad962734cd37b6875e4e9432f}\label{classConnection_ad2fd635ad962734cd37b6875e4e9432f} 
\mbox{\hyperlink{classConnection}{Connection}} \texorpdfstring{$\ast$}{*} {\bfseries clone} (\mbox{\hyperlink{classCloneEnv}{Clone\+Env}} \&) const
\item 
\Hypertarget{classConnection_af6b006a4abc5ce7e2ff1b4facdf53780}\label{classConnection_af6b006a4abc5ce7e2ff1b4facdf53780} 
{\bfseries Connection} (\mbox{\hyperlink{classNet}{Net}} \texorpdfstring{$\ast$}{*}, const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&source, \mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*}source\+Pin, const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&target, \mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*}target\+Pin)
\item 
\Hypertarget{classConnection_a9fd88ccc4cb3c8ea955cccfdb5d00585}\label{classConnection_a9fd88ccc4cb3c8ea955cccfdb5d00585} 
{\bfseries Connection} (const \mbox{\hyperlink{classConnection}{Connection}} \&, const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&source, const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&target)
\item 
\Hypertarget{classConnection_af5ee3f8e84b60ace180208c257d002fc}\label{classConnection_af5ee3f8e84b60ace180208c257d002fc} 
void {\bfseries set\+Id} (int id)
\item 
\Hypertarget{classConnection_a2dcecfb4fa01e7bacf75d4b57efc5e8d}\label{classConnection_a2dcecfb4fa01e7bacf75d4b57efc5e8d} 
int {\bfseries id} () const
\item 
\Hypertarget{classConnection_a9984df25b75f4705ddeab5d12793136e}\label{classConnection_a9984df25b75f4705ddeab5d12793136e} 
std\+::string {\bfseries name} () const
\item 
\Hypertarget{classConnection_a0738ec27620cfdc43930791e8b762958}\label{classConnection_a0738ec27620cfdc43930791e8b762958} 
bool {\bfseries has\+Net} () const
\item 
\Hypertarget{classConnection_a538719522fb63c7c7d5bdd5371f78ed3}\label{classConnection_a538719522fb63c7c7d5bdd5371f78ed3} 
\mbox{\hyperlink{classNet}{Net}} \texorpdfstring{$\ast$}{*} {\bfseries net} () const
\item 
\Hypertarget{classConnection_a12899c18a35de2b6dc47aa96d75ffc20}\label{classConnection_a12899c18a35de2b6dc47aa96d75ffc20} 
const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \& {\bfseries source} () const
\item 
\Hypertarget{classConnection_ab80103a9480d9e4c2758c9e492020f1c}\label{classConnection_ab80103a9480d9e4c2758c9e492020f1c} 
const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \& {\bfseries target} () const
\item 
\Hypertarget{classConnection_a25d1fd002d263ca31bd9d4ed87771132}\label{classConnection_a25d1fd002d263ca31bd9d4ed87771132} 
\mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*} {\bfseries source\+Pin} () const
\item 
\Hypertarget{classConnection_a602dcd7a04d3fa77738a4dba299b7887}\label{classConnection_a602dcd7a04d3fa77738a4dba299b7887} 
\mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*} {\bfseries target\+Pin} () const
\item 
\Hypertarget{classConnection_a0d28ad82bc75a24f857e5c47adfef20c}\label{classConnection_a0d28ad82bc75a24f857e5c47adfef20c} 
\mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*} {\bfseries other\+Pin} (const \mbox{\hyperlink{classPin}{Pin}} \texorpdfstring{$\ast$}{*}) const
\item 
\Hypertarget{classConnection_a0ae8c06f993bb080b7a000c7eb60c05e}\label{classConnection_a0ae8c06f993bb080b7a000c7eb60c05e} 
\mbox{\hyperlink{classComponent}{Component}} \texorpdfstring{$\ast$}{*} {\bfseries source\+Component} () const
\item 
\Hypertarget{classConnection_ae74c7230205eb9e2eb06e6ab9cd5bf2c}\label{classConnection_ae74c7230205eb9e2eb06e6ab9cd5bf2c} 
\mbox{\hyperlink{classComponent}{Component}} \texorpdfstring{$\ast$}{*} {\bfseries target\+Component} () const
\item 
\Hypertarget{classConnection_aeaaccf1bf7c1d46a509c98c129d91802}\label{classConnection_aeaaccf1bf7c1d46a509c98c129d91802} 
Vector\+\_\+2 {\bfseries vector2} () const
\item 
\Hypertarget{classConnection_a4f260e4be0611d8012408e7a5a384fb0}\label{classConnection_a4f260e4be0611d8012408e7a5a384fb0} 
Segment\+\_\+2 {\bfseries segment2} () const
\item 
\Hypertarget{classConnection_abf68e30bf35877b8c21a7417cf6f309a}\label{classConnection_abf68e30bf35877b8c21a7417cf6f309a} 
void {\bfseries detach\+Source\+Pin} ()
\item 
\Hypertarget{classConnection_a4815396636eb53fa7b6e8125ff520b08}\label{classConnection_a4815396636eb53fa7b6e8125ff520b08} 
void {\bfseries detach\+Target\+Pin} ()
\item 
\Hypertarget{classConnection_a3c7df919dc9a3a0916be5ec65cc5c12a}\label{classConnection_a3c7df919dc9a3a0916be5ec65cc5c12a} 
void {\bfseries force\+Endpoints\+To\+Grid} (const \mbox{\hyperlink{classUniformGrid25}{Uniform\+Grid25}} \&)
\item 
\Hypertarget{classConnection_afcc0b6bd87652aa3c3e0403c29bdad7b}\label{classConnection_afcc0b6bd87652aa3c3e0403c29bdad7b} 
bool {\bfseries has\+Tracks} () const
\item 
\Hypertarget{classConnection_a5097665a45952ddeac2144f1a325b49a}\label{classConnection_a5097665a45952ddeac2144f1a325b49a} 
uint {\bfseries num\+Tracks} () const
\item 
\Hypertarget{classConnection_a7ccd4e21e0c27c146bf0b8f5d6985874}\label{classConnection_a7ccd4e21e0c27c146bf0b8f5d6985874} 
const std\+::vector$<$ \mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*} $>$ \& {\bfseries get\+Tracks} () const
\item 
\Hypertarget{classConnection_a78ed3a9ad379b7a662c3c4c619a6660f}\label{classConnection_a78ed3a9ad379b7a662c3c4c619a6660f} 
\mbox{\hyperlink{classTrack}{Track}} \& {\bfseries get\+Track} (uint i) const
\item 
\Hypertarget{classConnection_a5732e9703e10bf991e1065be2ee62fc4}\label{classConnection_a5732e9703e10bf991e1065be2ee62fc4} 
\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*} {\bfseries get\+Track\+At} (const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&) const
\item 
\Hypertarget{classConnection_a15db20e48bc2e56278d793f2cca4d5e5}\label{classConnection_a15db20e48bc2e56278d793f2cca4d5e5} 
\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*} {\bfseries new\+Track} (const \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} \&start)
\item 
\Hypertarget{classConnection_ab888f72243df55dd69ac8ff1973a27b6}\label{classConnection_ab888f72243df55dd69ac8ff1973a27b6} 
\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*} {\bfseries pop\+Track} (uint index)
\item 
\Hypertarget{classConnection_a917722bc19691c20ab926a1eba28319e}\label{classConnection_a917722bc19691c20ab926a1eba28319e} 
void {\bfseries clear\+Tracks} ()
\item 
\Hypertarget{classConnection_ad8b27c6fe4c83bd5948a048fa6bb4be6}\label{classConnection_ad8b27c6fe4c83bd5948a048fa6bb4be6} 
bool {\bfseries is\+Routed} () const
\item 
\Hypertarget{classConnection_afc4b06af89976fb072ec3c3eafc8264a}\label{classConnection_afc4b06af89976fb072ec3c3eafc8264a} 
bool {\bfseries \+\_\+is\+Routed} () const
\item 
\Hypertarget{classConnection_a934af66416da8d16c6e7de280d37ba19}\label{classConnection_a934af66416da8d16c6e7de280d37ba19} 
void {\bfseries set\+Routed} (bool b)
\item 
\Hypertarget{classConnection_abe2efb596e0de4e4312d692fb9cc6524}\label{classConnection_abe2efb596e0de4e4312d692fb9cc6524} 
bool {\bfseries check\+Routed} ()
\item 
void \mbox{\hyperlink{classConnection_a9a9a6074a3742bee55f86b7d180028d1}{force\+Routed}} ()
\item 
\Hypertarget{classConnection_af2149aa39603132d1753f25544bce980}\label{classConnection_af2149aa39603132d1753f25544bce980} 
bool {\bfseries is\+Locked} () const
\item 
\Hypertarget{classConnection_a6716cadd6551d0f39dfe98c517177d7d}\label{classConnection_a6716cadd6551d0f39dfe98c517177d7d} 
void {\bfseries set\+Locked} (bool b)
\item 
void \mbox{\hyperlink{classConnection_a445528dee6edfbb5019c53cf03e1599f}{set\+Track}} (\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*})
\item 
\Hypertarget{classConnection_ae81d2ddaed7a6bd0cf21c587bdd626b6}\label{classConnection_ae81d2ddaed7a6bd0cf21c587bdd626b6} 
void {\bfseries set\+Track} (\mbox{\hyperlink{classTrack}{Track}} \&\&)
\item 
\Hypertarget{classConnection_ab4065b6d2147ac873ebf5fdf9d7f35c8}\label{classConnection_ab4065b6d2147ac873ebf5fdf9d7f35c8} 
void {\bfseries set\+Track} (const \mbox{\hyperlink{classTrack}{Track}} \&)
\item 
void \mbox{\hyperlink{classConnection_a0f9308f5e1c63e6dfb0e78e0b6d7cb5f}{append\+Track}} (\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*}T)
\item 
\Hypertarget{classConnection_ad1501009efffff9b5a70eed12e14137f}\label{classConnection_ad1501009efffff9b5a70eed12e14137f} 
void {\bfseries append\+Track} (const \mbox{\hyperlink{classTrack}{Track}} \&T)
\item 
void \mbox{\hyperlink{classConnection_aa18a1c0fb523565fd295d326c754cef6}{reverse}} ()
\item 
void \mbox{\hyperlink{classConnection_a910d28dd0e7645f4ffa2f26e32c32808}{make\+Direct\+Track45}} (Real min\+Squared\+Len, uint via\+Location, float bend\+Location)
\item 
\Hypertarget{classConnection_afbcd54a43564f8e4cb1c05a17132d7f8}\label{classConnection_afbcd54a43564f8e4cb1c05a17132d7f8} 
void {\bfseries make\+Direct\+Track} (Real min\+Squared\+Len, uint via\+Location)
\item 
bool \mbox{\hyperlink{classConnection_aff35eb50408d3ff4904a84478636ab42}{update\+For\+Removed\+Layers}} (uint removed\+ZMin, uint removed\+ZMax)
\item 
std\+::vector$<$ std\+::pair$<$ \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}}, \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} $>$ $>$ \mbox{\hyperlink{classConnection_a296a66b2a8e2a3818c84bbc1d22d24b9}{get\+Rats\+Nest}} () const
\item 
bool \mbox{\hyperlink{classConnection_a53f8bd5123d473f8b8bbddeb5f2f8a16}{are\+Pins\+On\+Net}} (const \mbox{\hyperlink{classNet}{Net}} \texorpdfstring{$\ast$}{*}) const
\item 
\Hypertarget{classConnection_a88daf2ad6bcf0b52d319a3e7d1292b10}\label{classConnection_a88daf2ad6bcf0b52d319a3e7d1292b10} 
Real {\bfseries clearance} () const
\item 
\Hypertarget{classConnection_ae937b84555ea6cd538a5fcf4837b91cc}\label{classConnection_ae937b84555ea6cd538a5fcf4837b91cc} 
Real {\bfseries default\+Width} () const
\item 
\Hypertarget{classConnection_a3489f90fc37a24777fcd4ce0155cda0e}\label{classConnection_a3489f90fc37a24777fcd4ce0155cda0e} 
Real {\bfseries default\+Via\+Diameter} () const
\item 
\Hypertarget{classConnection_aa543c48160c340fcc8b05cd30c780b91}\label{classConnection_aa543c48160c340fcc8b05cd30c780b91} 
Real {\bfseries default\+Via\+Radius} () const
\item 
\Hypertarget{classConnection_ad653d7e0aee933d0d4df036592ca62e3}\label{classConnection_ad653d7e0aee933d0d4df036592ca62e3} 
void {\bfseries set\+Clearance} (Real c)
\item 
\Hypertarget{classConnection_ad80c0edb3a8af8b0d9bf05232c5f3302}\label{classConnection_ad80c0edb3a8af8b0d9bf05232c5f3302} 
void {\bfseries set\+Default\+Width} (float w)
\item 
\Hypertarget{classConnection_a98ff135927cb15bba8e8a4e3069a537c}\label{classConnection_a98ff135927cb15bba8e8a4e3069a537c} 
void {\bfseries set\+Default\+Via\+Diameter} (Real d)
\item 
\Hypertarget{classConnection_a156e119290532cb82691c209b6b5507c}\label{classConnection_a156e119290532cb82691c209b6b5507c} 
bool {\bfseries can\+Route\+On\+Layer} (uint n) const
\item 
\Hypertarget{classConnection_ac59c40cd466bfa87666d3bf9be426ca7}\label{classConnection_ac59c40cd466bfa87666d3bf9be426ca7} 
uint32\+\_\+t {\bfseries get\+Layer\+Mask} () const
\item 
\Hypertarget{classConnection_a3020669d2fb8efa0124871edf78c51bc}\label{classConnection_a3020669d2fb8efa0124871edf78c51bc} 
void {\bfseries set\+Layer\+Mask} (uint32\+\_\+t)
\item 
\Hypertarget{classConnection_a73fa2b53a8b459f66e35d83d81d4dc03}\label{classConnection_a73fa2b53a8b459f66e35d83d81d4dc03} 
void {\bfseries set\+Parameters\+From} (const \mbox{\hyperlink{classConnection}{Connection}} \&)
\item 
\Hypertarget{classConnection_ae80a66183aa58998f032e36dc4d8fd8b}\label{classConnection_ae80a66183aa58998f032e36dc4d8fd8b} 
float {\bfseries reference\+Len} () const
\item 
\Hypertarget{classConnection_a0853841599c36cf25e4eb1bab787c41d}\label{classConnection_a0853841599c36cf25e4eb1bab787c41d} 
void {\bfseries set\+Reference\+Len} (float v)
\item 
\Hypertarget{classConnection_a9f91f9155542c27b439e16b3b5af6e34}\label{classConnection_a9f91f9155542c27b439e16b3b5af6e34} 
Bbox\+\_\+2 {\bfseries tracks\+Bbox} () const
\item 
\Hypertarget{classConnection_a7fff2acaa59c3ab3b7d9468982e120b1}\label{classConnection_a7fff2acaa59c3ab3b7d9468982e120b1} 
Bbox\+\_\+2 {\bfseries bbox} () const
\item 
\Hypertarget{classConnection_a4f618f041d80769e3a42fe6fe471e927}\label{classConnection_a4f618f041d80769e3a42fe6fe471e927} 
Bbox\+\_\+2 {\bfseries bbox\+Around\+Comps} () const
\item 
\Hypertarget{classConnection_a62318c899ec2bf7580ced34ee4ac0ac3}\label{classConnection_a62318c899ec2bf7580ced34ee4ac0ac3} 
Real {\bfseries squared\+\_\+distance} () const
\item 
\Hypertarget{classConnection_a0dfa9ebc89871c8f674bbdd144f45e9b}\label{classConnection_a0dfa9ebc89871c8f674bbdd144f45e9b} 
Real {\bfseries distance} () const
\item 
\Hypertarget{classConnection_aff16394961028f8d38f70eb30055bc84}\label{classConnection_aff16394961028f8d38f70eb30055bc84} 
Real {\bfseries distance45} () const
\item 
bool \mbox{\hyperlink{classConnection_a8f68f01c92e6fec71500c7e13199c853}{is\+Ordered\+XMajor}} () const
\item 
uint \mbox{\hyperlink{classConnection_a4a6970d8fbacbf56166eed5028726c62}{num\+Necessary\+Vias}} () const
\item 
bool \mbox{\hyperlink{classConnection_a95667648eeb64b1ff644a53da3d6c138}{intersects}} (const \mbox{\hyperlink{classConnection}{Connection}} \&) const
\item 
bool \mbox{\hyperlink{classConnection_ae18ebec14ba0b4361780a2218ddbe359}{is\+Rasterized\+\_\+all\+Or\+None}} () const
\item 
bool \mbox{\hyperlink{classConnection_ad7822648a263f19262cfb75c50e2920b}{check\+Rasterization}} (const \mbox{\hyperlink{classNavGrid}{Nav\+Grid}} \&) const
\item 
void \mbox{\hyperlink{classConnection_ab0cd0645d73c9e90e4a9f8981681b801}{set\+Color}} (\mbox{\hyperlink{classColor}{Color}} c)
\item 
\Hypertarget{classConnection_ac326d65aef5e19754606810ba4b66818}\label{classConnection_ac326d65aef5e19754606810ba4b66818} 
\mbox{\hyperlink{classColor}{Color}} {\bfseries get\+Color} () const
\item 
\Hypertarget{classConnection_a8ecbf70f87baf7dd0dc77c44b9dd84f6}\label{classConnection_a8ecbf70f87baf7dd0dc77c44b9dd84f6} 
std\+::string {\bfseries str} () const
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classConnection_a13eacaf0ce967aa7208cdcfe3b2fec8b}{get\+Ends\+Py}} () const
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classConnection_a4674636afbe95d07f73b6ef4a95206fb}{get\+Tracks\+Py}} (bool as\+Numpy) const
\item 
Py\+Object \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{classConnection_a7b8f39f926b452d263c681ca9536e87d}{get\+Py}} (uint depth, bool as\+Numpy) const
\end{DoxyCompactItemize}
\doxysubsubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classConnection_a6e2906d8eb155b37f6ffdd671ba37f51}\label{classConnection_a6e2906d8eb155b37f6ffdd671ba37f51} 
{\footnotesize template$<$class Container$>$ }\\static void {\bfseries sort\+\_\+name} (Container \&)
\end{DoxyCompactItemize}


\label{doc-func-members}
\Hypertarget{classConnection_doc-func-members}
\doxysubsection{Member Function Documentation}
\Hypertarget{classConnection_a0f9308f5e1c63e6dfb0e78e0b6d7cb5f}\index{Connection@{Connection}!appendTrack@{appendTrack}}
\index{appendTrack@{appendTrack}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{appendTrack()}{appendTrack()}}
{\footnotesize\ttfamily \label{classConnection_a0f9308f5e1c63e6dfb0e78e0b6d7cb5f} 
void Connection\+::append\+Track (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*}}]{T}{}\end{DoxyParamCaption})}

Append the track to this connection. WARNING\+: The pointer may no longer be valid after this call! \Hypertarget{classConnection_a53f8bd5123d473f8b8bbddeb5f2f8a16}\index{Connection@{Connection}!arePinsOnNet@{arePinsOnNet}}
\index{arePinsOnNet@{arePinsOnNet}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{arePinsOnNet()}{arePinsOnNet()}}
{\footnotesize\ttfamily \label{classConnection_a53f8bd5123d473f8b8bbddeb5f2f8a16} 
bool Connection\+::are\+Pins\+On\+Net (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classNet}{Net}} \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption}) const}

sanity \Hypertarget{classConnection_ad7822648a263f19262cfb75c50e2920b}\index{Connection@{Connection}!checkRasterization@{checkRasterization}}
\index{checkRasterization@{checkRasterization}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{checkRasterization()}{checkRasterization()}}
{\footnotesize\ttfamily \label{classConnection_ad7822648a263f19262cfb75c50e2920b} 
bool Connection\+::check\+Rasterization (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classNavGrid}{Nav\+Grid}} \&}]{}{}\end{DoxyParamCaption}) const}

Check whether the endpoints\textquotesingle{} grid points are marked as having tracks. \Hypertarget{classConnection_a9a9a6074a3742bee55f86b7d180028d1}\index{Connection@{Connection}!forceRouted@{forceRouted}}
\index{forceRouted@{forceRouted}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{forceRouted()}{forceRouted()}}
{\footnotesize\ttfamily \label{classConnection_a9a9a6074a3742bee55f86b7d180028d1} 
void Connection\+::force\+Routed (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}

Force the connection\textquotesingle{}s track\textquotesingle{}s endpoints to the connection endpoints. \Hypertarget{classConnection_a13eacaf0ce967aa7208cdcfe3b2fec8b}\index{Connection@{Connection}!getEndsPy@{getEndsPy}}
\index{getEndsPy@{getEndsPy}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{getEndsPy()}{getEndsPy()}}
{\footnotesize\ttfamily \label{classConnection_a13eacaf0ce967aa7208cdcfe3b2fec8b} 
Py\+Object \texorpdfstring{$\ast$}{*} Connection\+::get\+Ends\+Py (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const}

A tuple (source, target) where source and target are pin names or, if there is no pin, coordinates (x,y,z). \Hypertarget{classConnection_a7b8f39f926b452d263c681ca9536e87d}\index{Connection@{Connection}!getPy@{getPy}}
\index{getPy@{getPy}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{getPy()}{getPy()}}
{\footnotesize\ttfamily \label{classConnection_a7b8f39f926b452d263c681ca9536e87d} 
Py\+Object \texorpdfstring{$\ast$}{*} Connection\+::get\+Py (\begin{DoxyParamCaption}\item[{uint}]{depth}{, }\item[{bool}]{as\+Numpy}{}\end{DoxyParamCaption}) const}

see pcb.\+schema.\+json \Hypertarget{classConnection_a296a66b2a8e2a3818c84bbc1d22d24b9}\index{Connection@{Connection}!getRatsNest@{getRatsNest}}
\index{getRatsNest@{getRatsNest}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{getRatsNest()}{getRatsNest()}}
{\footnotesize\ttfamily \label{classConnection_a296a66b2a8e2a3818c84bbc1d22d24b9} 
std\+::vector$<$ std\+::pair$<$ \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}}, \mbox{\hyperlink{classPoint__25}{Point\+\_\+25}} $>$ $>$ Connection\+::get\+Rats\+Nest (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const}

Returns a set of pairs of disconnected track endpoints such that each point occurs exactly once. Points are paired in order from lowest to highest pair distance over all possible pairings. \Hypertarget{classConnection_a4674636afbe95d07f73b6ef4a95206fb}\index{Connection@{Connection}!getTracksPy@{getTracksPy}}
\index{getTracksPy@{getTracksPy}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{getTracksPy()}{getTracksPy()}}
{\footnotesize\ttfamily \label{classConnection_a4674636afbe95d07f73b6ef4a95206fb} 
Py\+Object \texorpdfstring{$\ast$}{*} Connection\+::get\+Tracks\+Py (\begin{DoxyParamCaption}\item[{bool}]{as\+Numpy}{}\end{DoxyParamCaption}) const}

A list of tracks as per Track\+::get\+Py(as\+Numpy). \Hypertarget{classConnection_a95667648eeb64b1ff644a53da3d6c138}\index{Connection@{Connection}!intersects@{intersects}}
\index{intersects@{intersects}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{intersects()}{intersects()}}
{\footnotesize\ttfamily \label{classConnection_a95667648eeb64b1ff644a53da3d6c138} 
bool Connection\+::intersects (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classConnection}{Connection}} \&}]{}{}\end{DoxyParamCaption}) const}

Returns whether this connection\textquotesingle{}s tracks come within the maximum of the default clearances of each other. If a connection has no tracks, the rat\textquotesingle{}s nest line (this-\/\texorpdfstring{$>$}{>}segment2()) is used instead. \Hypertarget{classConnection_a8f68f01c92e6fec71500c7e13199c853}\index{Connection@{Connection}!isOrderedXMajor@{isOrderedXMajor}}
\index{isOrderedXMajor@{isOrderedXMajor}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{isOrderedXMajor()}{isOrderedXMajor()}}
{\footnotesize\ttfamily \label{classConnection_a8f68f01c92e6fec71500c7e13199c853} 
bool Connection\+::is\+Ordered\+XMajor (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const}

source.\+x \texorpdfstring{$<$}{<}= target.\+x etc. \Hypertarget{classConnection_ae18ebec14ba0b4361780a2218ddbe359}\index{Connection@{Connection}!isRasterized\_allOrNone@{isRasterized\_allOrNone}}
\index{isRasterized\_allOrNone@{isRasterized\_allOrNone}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{isRasterized\_allOrNone()}{isRasterized\_allOrNone()}}
{\footnotesize\ttfamily \label{classConnection_ae18ebec14ba0b4361780a2218ddbe359} 
bool Connection\+::is\+Rasterized\+\_\+all\+Or\+None (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const}

Check whether the connection\textquotesingle{}s tracks are marked as rasterized. 
\begin{DoxyExceptions}{Exceptions}
{\em std\+::runtime\+\_\+error} & If the tracks\textquotesingle{} status is inconsistent. \\
\hline
\end{DoxyExceptions}
\Hypertarget{classConnection_a910d28dd0e7645f4ffa2f26e32c32808}\index{Connection@{Connection}!makeDirectTrack45@{makeDirectTrack45}}
\index{makeDirectTrack45@{makeDirectTrack45}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{makeDirectTrack45()}{makeDirectTrack45()}}
{\footnotesize\ttfamily \label{classConnection_a910d28dd0e7645f4ffa2f26e32c32808} 
void Connection\+::make\+Direct\+Track45 (\begin{DoxyParamCaption}\item[{Real}]{min\+Squared\+Len}{, }\item[{uint}]{via\+Location}{, }\item[{float}]{bend\+Location}{}\end{DoxyParamCaption})}

Create the most direct track for this connection without considering obstacles. The connection will have up to 2 intermediate points (source --, / start, / end, -- target). 
\begin{DoxyParams}{Parameters}
{\em min\+Squared\+Len} & Don\textquotesingle{}t create segments shorter than this. \\
\hline
{\em via\+Location} & The index of the point where to put the via. \\
\hline
{\em bend\+Location} & 0 to start with the 45° segment, 1 to start with the 0°/90° one, values in between for 3 segments. \\
\hline
\end{DoxyParams}
\Hypertarget{classConnection_a4a6970d8fbacbf56166eed5028726c62}\index{Connection@{Connection}!numNecessaryVias@{numNecessaryVias}}
\index{numNecessaryVias@{numNecessaryVias}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{numNecessaryVias()}{numNecessaryVias()}}
{\footnotesize\ttfamily \label{classConnection_a4a6970d8fbacbf56166eed5028726c62} 
uint Connection\+::num\+Necessary\+Vias (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const}

0 if the layers of the endpoints or pins overlap, 1 otherwise \Hypertarget{classConnection_aa18a1c0fb523565fd295d326c754cef6}\index{Connection@{Connection}!reverse@{reverse}}
\index{reverse@{reverse}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{reverse()}{reverse()}}
{\footnotesize\ttfamily \label{classConnection_aa18a1c0fb523565fd295d326c754cef6} 
void Connection\+::reverse (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}

Reverse the endpoints and the tracks. \Hypertarget{classConnection_ab0cd0645d73c9e90e4a9f8981681b801}\index{Connection@{Connection}!setColor@{setColor}}
\index{setColor@{setColor}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{setColor()}{setColor()}}
{\footnotesize\ttfamily \label{classConnection_ab0cd0645d73c9e90e4a9f8981681b801} 
void Connection\+::set\+Color (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classColor}{Color}}}]{c}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

use Color\+::\+TRANSPARENT to use net\textquotesingle{}s color \Hypertarget{classConnection_a445528dee6edfbb5019c53cf03e1599f}\index{Connection@{Connection}!setTrack@{setTrack}}
\index{setTrack@{setTrack}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{setTrack()}{setTrack()}}
{\footnotesize\ttfamily \label{classConnection_a445528dee6edfbb5019c53cf03e1599f} 
void Connection\+::set\+Track (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classTrack}{Track}} \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})}

Replace all tracks with the one provided. The track is either added by reference, moved, or copied. \Hypertarget{classConnection_aff35eb50408d3ff4904a84478636ab42}\index{Connection@{Connection}!updateForRemovedLayers@{updateForRemovedLayers}}
\index{updateForRemovedLayers@{updateForRemovedLayers}!Connection@{Connection}}
\doxysubsubsection{\texorpdfstring{updateForRemovedLayers()}{updateForRemovedLayers()}}
{\footnotesize\ttfamily \label{classConnection_aff35eb50408d3ff4904a84478636ab42} 
bool Connection\+::update\+For\+Removed\+Layers (\begin{DoxyParamCaption}\item[{uint}]{removed\+ZMin}{, }\item[{uint}]{removed\+ZMax}{}\end{DoxyParamCaption})}

Adjust the connection after removing a range of layers. Pins must be adjusted first! If and endpoint\textquotesingle{}s layer is removed and there is no pin, this will return false and the connection will become invalid. Tracks with segments on the removed layers will be deleted entirely. 

The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/home/chr/devel/\+Ph\+D/\+Environment/pub/\+PCBEnv/pcbenv/cxx/Connection.\+hpp\end{DoxyCompactItemize}
