736 lines
54 KiB
TeX
736 lines
54 KiB
TeX
\hypertarget{classKite_1_1TrackSegment}{}\subsection{Track\+Segment Class Reference}
|
|
\label{classKite_1_1TrackSegment}\index{Track\+Segment@{Track\+Segment}}
|
|
|
|
|
|
Derived \textbf{ Katabatic\+::\+Auto\+Segment} for the router.
|
|
|
|
|
|
|
|
|
|
Inheritance diagram for Track\+Segment\+:\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=160pt]{classKite_1_1TrackSegment__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\subsubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_afd7362b850709bed8b61c1aa22399f97}{is\+Fixed}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a21b9cefd33ae22e4c2070ad441bdd30b}{is\+Horizontal}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_abd54544ef1710ee4b67cfb021d73446c}{is\+Vertical}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_add556a145a89fdbcea82346abfb873dc}{is\+Local}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a19ba379112d6b29faa45c5eefbf38500}{is\+Global}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a72741158d19af38e84c5e9c08f91270f}{is\+Bipoint}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a1e074cb3064037035548e5e6d238e315}{is\+Terminal}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a62d61c231cf404a814ae37665fa8164f}{is\+Strap}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a782cff57d3fe10e758d19ee65a06643d}{is\+Slackened}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a75d91371e5281dd21f60ff39ae70a3e5}{is\+Dogleg}} () const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_aa0bb6f1592688e942ff67e0ac318a4fd}{can\+Dogleg}} ()
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_accb4c6a7ee2678a0cff4dbc4a7860fe1}{can\+Dogleg}} (\textbf{ Interval})
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_a4f040cf33009e4886d401115c3bea838}{can\+Dogleg}} (\textbf{ Katabatic\+::\+G\+Cell} $\ast$, unsigned int flags=0)
|
|
\item
|
|
virtual float \mbox{\hyperlink{classKite_1_1TrackSegment_abb61228ad7b29c19c6428902d34126f7}{get\+Max\+Under\+Density}} (unsigned int flags) const
|
|
\item
|
|
virtual unsigned long \mbox{\hyperlink{classKite_1_1TrackSegment_afdedcef127ad2a3677a5b48d7d3453f3}{get\+Id}} () const
|
|
\item
|
|
virtual unsigned int \mbox{\hyperlink{classKite_1_1TrackSegment_a0dd7cf705ace42c662c289955313b2e9}{get\+Direction}} () const
|
|
\item
|
|
virtual \textbf{ Net} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a692492374623a5c6096b2c4a51190359}{get\+Net}} () const
|
|
\item
|
|
virtual const \textbf{ Layer} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_ab045567c4f529dca7790d66c17c3084f}{get\+Layer}} () const
|
|
\item
|
|
virtual unsigned long \mbox{\hyperlink{classKite_1_1TrackSegment_aa7552c20cc46abcac558627b2ca341f8}{get\+Freedom\+Degree}} () const
|
|
\item
|
|
virtual unsigned int \mbox{\hyperlink{classKite_1_1TrackSegment_add78c6f914788c549f144998caacda84}{get\+Dogleg\+Level}} () const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a010b7fc8801c5b88aefa4137cf85186d}{get\+Next}} () const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a55d6115d84c11ad147f4c38fe372ea24}{get\+Previous}} () const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a95ec3b8e7e1ec87c20ee0b37bcc96df7}{get\+Parent}} () const
|
|
\item
|
|
virtual \textbf{ Db\+U\+::\+Unit} \mbox{\hyperlink{classKite_1_1TrackSegment_ab5b5aaa5b318369feee6003dbad039c2}{get\+Axis}} () const
|
|
\item
|
|
virtual \textbf{ Interval} \mbox{\hyperlink{classKite_1_1TrackSegment_a034711e2d3617ea848ef9f5a18255e10}{get\+Free\+Interval}} () const
|
|
\item
|
|
virtual \textbf{ Interval} \mbox{\hyperlink{classKite_1_1TrackSegment_a48f8b54f9489da3778d85c382a483f81}{get\+Source\+Constraints}} () const
|
|
\item
|
|
virtual \textbf{ Interval} \mbox{\hyperlink{classKite_1_1TrackSegment_a69af7d4287bc0e44c9ca2c8e6f692be9}{get\+Target\+Constraints}} () const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1DataNegociate}{Data\+Negociate}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_acd0170a05128ec4af16ecd0060c3a3b5}{get\+Data\+Negociate}} (unsigned int flags=\mbox{\hyperlink{namespaceKite_acca8fffa3182dea5f94208f454f14b47a68e917ff37d4b5cef906303181836404}{Kt\+Data\+Self}}) const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_af2d46d64cbd02bdbba53d5483d95e26d}{get\+Canonical}} (\textbf{ Interval} \&)
|
|
\item
|
|
virtual size\+\_\+t \mbox{\hyperlink{classKite_1_1TrackSegment_af45301f76558f613ccb605a8f851080e}{get\+G\+Cells}} (Katabatic\+::\+G\+Cell\+Vector \&) const
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a7e79fbfe77f173d46b1959c41087930a}{get\+Source\+Dogleg}} ()
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_aeb4e39bd925d093e6c45599433bb421c}{get\+Target\+Dogleg}} ()
|
|
\item
|
|
virtual Track\+Elements \mbox{\hyperlink{classKite_1_1TrackSegment_aa0ba92ebf19f596537dc051c090d5736}{get\+Perpandiculars}} ()
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_abd3d8093f871d3d1a7f24b053648026c}{set\+Track}} (\mbox{\hyperlink{classKite_1_1Track}{Track}} $\ast$)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_af5332d647c0482aa90ad7cc9b2a50f3a}{update\+Freedom\+Degree}} ()
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a2b90319cb042b283aa5d1fdb1992f11f}{set\+Dogleg\+Level}} (unsigned int)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_acc245ce084989d1c34816d0e61b9d510}{swap\+Track}} (\mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a0ffe603ec7d46f21f5e56ccbe84c03fb}{reschedule}} (unsigned int level)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_ac295bade8aee589f6718dfa79edc2a34}{detach}} ()
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a893f1101c650c08c98612515c2b1a89c}{invalidate}} ()
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a5bd93abe1416952ace15a98dbeeed124}{revalidate}} ()
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a262a915c38127d3722ec561b30d80f91}{set\+Axis}} (\textbf{ Db\+U\+::\+Unit}, unsigned int flags)
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a7a9637875364e84e6862de0102341715}{make\+Dogleg}} ()
|
|
\item
|
|
virtual \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a524f1569b2f2c1a84df2fe47e84e28ed}{make\+Dogleg}} (\textbf{ Interval}, unsigned int \&flags)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}{\+\_\+post\+Doglegs}} (\mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$\&perpandicular, \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$\¶llel)
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classKite_1_1TrackSegment_ad79f4c6ea0fe1135b8264a29af085909}{\+\_\+check}} () const
|
|
\end{DoxyCompactItemize}
|
|
\subsubsection*{Static Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
static \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ \mbox{\hyperlink{classKite_1_1TrackSegment_a536f91d468e6c2097f85169e6d790f64}{create}} (\textbf{ Auto\+Segment} $\ast$, \mbox{\hyperlink{classKite_1_1Track}{Track}} $\ast$, bool \&created)
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\subsubsection{Detailed Description}
|
|
Derived \textbf{ Katabatic\+::\+Auto\+Segment} for the router.
|
|
|
|
We create one \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} per aligned \textbf{ Katabatic\+::\+Auto\+Segment} set, the \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} is associated to the canonical one of the set.
|
|
|
|
To provide some speedup, the full extention of the aligned segment set is computed once and stored in the \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} itself. The drawback beeing that whenever one segment from the aligned set has it\textquotesingle{}s extention modified, the full extention must be recomputed.\hypertarget{classKite_1_1TrackSegment_secTSLazyRevalidate}{}\subsubsection{Lazy Revalidate}\label{classKite_1_1TrackSegment_secTSLazyRevalidate}
|
|
When the \mbox{\hyperlink{classKite_1_1TrackSegment_a5bd93abe1416952ace15a98dbeeed124}{Track\+Segment\+::revalidate()}} method is called, it only update the cached size of the segment (from the Auto\+Segment set of aligneds) and the track into which it may be inserted.
|
|
|
|
The associated \mbox{\hyperlink{classKite_1_1DataNegociate}{Data\+Negociate}} and \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} are {\bfseries not} updated.
|
|
\begin{DoxyItemize}
|
|
\item The \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} will be updated when it\textquotesingle{}s key is updated, typically during a requeueing operation {\bfseries and} in the \mbox{\hyperlink{classKite_1_1SegmentFsm}{Segment\+Fsm}} constructor. This should be optimized in the future.
|
|
\item The \mbox{\hyperlink{classKite_1_1DataNegociate}{Data\+Negociate}} is updated {\itshape only} in the \mbox{\hyperlink{classKite_1_1SegmentFsm}{Segment\+Fsm}} constructor. This is the most costly of the two updates as it perform a perpandicular \& parallel connexity exploration.
|
|
\end{DoxyItemize}\hypertarget{classKite_1_1TrackSegment_secDogleg}{}\subsubsection{Dogleg Management}\label{classKite_1_1TrackSegment_secDogleg}
|
|
The basic \textbf{ Auto\+Segment\+::can\+Dogleg()} method is declined in three more dedicated methods in this class\+:
|
|
\begin{DoxyItemize}
|
|
\item \mbox{\hyperlink{classKite_1_1TrackSegment_aa0bb6f1592688e942ff67e0ac318a4fd}{Track\+Segment\+::can\+Dogleg()}}, for locals only, check if a break is possible, never break a segment more than once (to avoid fragmentation).
|
|
\item \mbox{\hyperlink{classKite_1_1TrackSegment_a4f040cf33009e4886d401115c3bea838}{Track\+Segment\+::can\+Dogleg(\+Katabatic\+::\+G\+Cell$\ast$,unsigned int flags)}} for globals, check that the segment is breakable in the desired G\+Cell. Never break twice in the first/last G\+Cell (fragmentation limitation), but may {\itshape reuse} an already existing dogleg.
|
|
\item \mbox{\hyperlink{classKite_1_1TrackSegment_accb4c6a7ee2678a0cff4dbc4a7860fe1}{Track\+Segment\+::can\+Dogleg(\+Interval)}}, for locals only, direct proxy for the Auto\+Segment method. Never allow more than one break.
|
|
\end{DoxyItemize}
|
|
|
|
{\bfseries Relationship between Auto\+Segment and \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}}}
|
|
|
|
Figure 2 below, shows an example of dogleg creation\+:
|
|
\begin{DoxyItemize}
|
|
\item At the Katabatic level, Auto\+Segment {\ttfamily id\+:12} is broken. Thus the creation of Auto\+Segments {\ttfamily id\+:20} and {\ttfamily id\+:21}. The orignal \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} (canonical Auto\+Segment {\ttfamily id\+:10}) remains on the right side (target) of the break.
|
|
\item But, because the canonical of the former aligned Auto\+Segment set {\ttfamily }(10,11,12,13,14) was on the {\itshape right} side of the break, the new parallel \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} will be created on the {\ttfamily left} side, associated to the newly promoted canonical Auto\+Segment {\ttfamily id\+:12}.
|
|
\end{DoxyItemize}
|
|
|
|
The \mbox{\hyperlink{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}{Track\+Segment\+::\+\_\+post\+Doglegs()}} method called by all flavors of \mbox{\hyperlink{classKite_1_1TrackSegment_a7a9637875364e84e6862de0102341715}{Track\+Segment\+::make\+Dogleg()}} methods is responsible for creating new Track\+Segments for the new doglegs (there may be more than one), it also update the dogleg level and source/target dogleg flags.
|
|
|
|
{\bfseries This section is not finished.} I need to review the parent and doglevel numbering management. There seems to be a risk of infinite fragmentation as the numbering of the original segment is not increased, we should create a {\itshape break} counter separate from deepness.\hypertarget{classKite_1_1TrackSegment_secWeakGlobal}{}\subsubsection{Global, Weak Global and Local Segments}\label{classKite_1_1TrackSegment_secWeakGlobal}
|
|
There\textquotesingle{}s a slight semantic change between Katabatic and \mbox{\hyperlink{namespaceKite}{Kite}} about what is local and what is local. This is due to how we consider the intermediate status of {\itshape Weak\+Global}.
|
|
|
|
A {\ttfamily Weak\+Global} segment is a local segment which is aligned with a global (though a V\+Tee or an H\+Tee contact).
|
|
|
|
In Katabatic a local segment is one that is not {\ttfamily Global}, a local segment can be both {\ttfamily Local} and {\ttfamily Weak\+Global}.
|
|
|
|
In \mbox{\hyperlink{namespaceKite}{Kite}} a local segment is one that is neither {\ttfamily Global} or {\ttfamily Weak\+Global}. The {\ttfamily Weak\+Global} sides with {\ttfamily Global} unlike in Katabatic.
|
|
|
|
\subsubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a536f91d468e6c2097f85169e6d790f64}\label{classKite_1_1TrackSegment_a536f91d468e6c2097f85169e6d790f64}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!create@{create}}
|
|
\index{create@{create}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{create()}{create()}}
|
|
{\footnotesize\ttfamily static \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} $\ast$ create (\begin{DoxyParamCaption}\item[{\textbf{ Auto\+Segment} $\ast$}]{segment, }\item[{\mbox{\hyperlink{classKite_1_1Track}{Track}} $\ast$}]{track, }\item[{bool \&}]{created }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em segment} & The Katabatic Auto\+Segment to decorate. \\
|
|
\hline
|
|
{\em track} & A \mbox{\hyperlink{classKite_1_1Track}{Track}} into which insert the \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} (may be {\ttfamily N\+U\+LL}). \\
|
|
\hline
|
|
{\em created} & This flag is sets is a new \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} has be created. \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
A \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} wrapped around an Auto\+Segment.
|
|
\end{DoxyReturn}
|
|
Constructor mainly used at loading time to decorate the Katabatic data-\/base with the router attributes.
|
|
|
|
Referenced by Negociate\+Window\+::create\+Track\+Segment().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_afd7362b850709bed8b61c1aa22399f97}\label{classKite_1_1TrackSegment_afd7362b850709bed8b61c1aa22399f97}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Fixed@{is\+Fixed}}
|
|
\index{is\+Fixed@{is\+Fixed}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Fixed()}{isFixed()}}
|
|
{\footnotesize\ttfamily bool is\+Fixed (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Fixed()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_afd7362b850709bed8b61c1aa22399f97}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::can\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a21b9cefd33ae22e4c2070ad441bdd30b}\label{classKite_1_1TrackSegment_a21b9cefd33ae22e4c2070ad441bdd30b}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Horizontal@{is\+Horizontal}}
|
|
\index{is\+Horizontal@{is\+Horizontal}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Horizontal()}{isHorizontal()}}
|
|
{\footnotesize\ttfamily bool is\+Horizontal (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Horizontal()}.
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_a9d3db1f8a5aca58f8f54d291faebf873}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::get\+G\+Cells().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_abd54544ef1710ee4b67cfb021d73446c}\label{classKite_1_1TrackSegment_abd54544ef1710ee4b67cfb021d73446c}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Vertical@{is\+Vertical}}
|
|
\index{is\+Vertical@{is\+Vertical}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Vertical()}{isVertical()}}
|
|
{\footnotesize\ttfamily bool is\+Vertical (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Vertical()}.
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_a6fa2bf0568a2b295dd7cd1f7207247d5}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_add556a145a89fdbcea82346abfb873dc}\label{classKite_1_1TrackSegment_add556a145a89fdbcea82346abfb873dc}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Local@{is\+Local}}
|
|
\index{is\+Local@{is\+Local}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Local()}{isLocal()}}
|
|
{\footnotesize\ttfamily bool is\+Local (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ Katabatic\+::is\+Local().
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_add556a145a89fdbcea82346abfb873dc}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::\+\_\+post\+Doglegs(), and Track\+Segment\+::can\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a19ba379112d6b29faa45c5eefbf38500}\label{classKite_1_1TrackSegment_a19ba379112d6b29faa45c5eefbf38500}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Global@{is\+Global}}
|
|
\index{is\+Global@{is\+Global}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Global()}{isGlobal()}}
|
|
{\footnotesize\ttfamily bool is\+Global (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Global()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a19ba379112d6b29faa45c5eefbf38500}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a72741158d19af38e84c5e9c08f91270f}\label{classKite_1_1TrackSegment_a72741158d19af38e84c5e9c08f91270f}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Bipoint@{is\+Bipoint}}
|
|
\index{is\+Bipoint@{is\+Bipoint}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Bipoint()}{isBipoint()}}
|
|
{\footnotesize\ttfamily bool is\+Bipoint (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Bipoint()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a72741158d19af38e84c5e9c08f91270f}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a1e074cb3064037035548e5e6d238e315}\label{classKite_1_1TrackSegment_a1e074cb3064037035548e5e6d238e315}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Terminal@{is\+Terminal}}
|
|
\index{is\+Terminal@{is\+Terminal}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Terminal()}{isTerminal()}}
|
|
{\footnotesize\ttfamily bool is\+Terminal (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ Katabatic\+::\+Auto\+Segment\+::is\+Terminal().
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a1e074cb3064037035548e5e6d238e315}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a62d61c231cf404a814ae37665fa8164f}\label{classKite_1_1TrackSegment_a62d61c231cf404a814ae37665fa8164f}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Strap@{is\+Strap}}
|
|
\index{is\+Strap@{is\+Strap}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Strap()}{isStrap()}}
|
|
{\footnotesize\ttfamily bool is\+Strap (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Strap()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a62d61c231cf404a814ae37665fa8164f}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a782cff57d3fe10e758d19ee65a06643d}\label{classKite_1_1TrackSegment_a782cff57d3fe10e758d19ee65a06643d}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Slackened@{is\+Slackened}}
|
|
\index{is\+Slackened@{is\+Slackened}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Slackened()}{isSlackened()}}
|
|
{\footnotesize\ttfamily bool is\+Slackened (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::is\+Slackened()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a782cff57d3fe10e758d19ee65a06643d}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::can\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a75d91371e5281dd21f60ff39ae70a3e5}\label{classKite_1_1TrackSegment_a75d91371e5281dd21f60ff39ae70a3e5}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!is\+Dogleg@{is\+Dogleg}}
|
|
\index{is\+Dogleg@{is\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{is\+Dogleg()}{isDogleg()}}
|
|
{\footnotesize\ttfamily bool is\+Dogleg (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ Katabatic\+::is\+Dogleg().
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a75d91371e5281dd21f60ff39ae70a3e5}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_aa0bb6f1592688e942ff67e0ac318a4fd}\label{classKite_1_1TrackSegment_aa0bb6f1592688e942ff67e0ac318a4fd}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!can\+Dogleg@{can\+Dogleg}}
|
|
\index{can\+Dogleg@{can\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{can\+Dogleg()}{canDogleg()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
|
|
{\footnotesize\ttfamily bool can\+Dogleg (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Auto\+Segment\+::can\+Dogleg()}. At \mbox{\hyperlink{namespaceKite}{Kite}} level, this variant of the method will apply only on local segments and the segment must not already have a source or target dogleg.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_aa0bb6f1592688e942ff67e0ac318a4fd}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_accb4c6a7ee2678a0cff4dbc4a7860fe1}\label{classKite_1_1TrackSegment_accb4c6a7ee2678a0cff4dbc4a7860fe1}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!can\+Dogleg@{can\+Dogleg}}
|
|
\index{can\+Dogleg@{can\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{can\+Dogleg()}{canDogleg()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
|
|
{\footnotesize\ttfamily bool can\+Dogleg (\begin{DoxyParamCaption}\item[{\textbf{ Interval}}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Auto\+Segment\+::can\+Dogleg()}. At \mbox{\hyperlink{namespaceKite}{Kite}} level, this variant of the method will apply only on local segments and the segment must not already have a source or target dogleg.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_accb4c6a7ee2678a0cff4dbc4a7860fe1}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a4f040cf33009e4886d401115c3bea838}\label{classKite_1_1TrackSegment_a4f040cf33009e4886d401115c3bea838}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!can\+Dogleg@{can\+Dogleg}}
|
|
\index{can\+Dogleg@{can\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{can\+Dogleg()}{canDogleg()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
|
|
{\footnotesize\ttfamily bool can\+Dogleg (\begin{DoxyParamCaption}\item[{\textbf{ Katabatic\+::\+G\+Cell} $\ast$}]{dogleg\+G\+Cell, }\item[{unsigned int}]{flags = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Auto\+Segment\+::can\+Dogleg()}. At kite level, this variant of the method is mainly targeted to global segment. For local segment it behave like \mbox{\hyperlink{classKite_1_1TrackElement_accb4c6a7ee2678a0cff4dbc4a7860fe1}{Track\+Element\+::can\+Dogleg(\+Interval)}}. For global segment, make the break in the requested G\+Cell {\ttfamily dogleg\+G\+Cell}. If it\textquotesingle{}s in the first or last G\+Cell and there is already a dogleg, allow to reuse it if {\ttfamily flags} contains \mbox{\hyperlink{namespaceKite_acca8fffa3182dea5f94208f454f14b47a766f453d6caa06490196a952762f0bb8}{Kite\+::\+Kt\+Allow\+Dogleg\+Reuse}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a4f040cf33009e4886d401115c3bea838}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_abb61228ad7b29c19c6428902d34126f7}\label{classKite_1_1TrackSegment_abb61228ad7b29c19c6428902d34126f7}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Max\+Under\+Density@{get\+Max\+Under\+Density}}
|
|
\index{get\+Max\+Under\+Density@{get\+Max\+Under\+Density}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Max\+Under\+Density()}{getMaxUnderDensity()}}
|
|
{\footnotesize\ttfamily float get\+Max\+Under\+Density (\begin{DoxyParamCaption}\item[{unsigned int}]{flags }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The maximum density of all the G\+Cells under this element.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_aa34ceb4288e76357b65725ca00e56df8}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_afdedcef127ad2a3677a5b48d7d3453f3}\label{classKite_1_1TrackSegment_afdedcef127ad2a3677a5b48d7d3453f3}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Id@{get\+Id}}
|
|
\index{get\+Id@{get\+Id}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Id()}{getId()}}
|
|
{\footnotesize\ttfamily unsigned long get\+Id (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
The {\ttfamily Id} of the supporting Auto\+Segment, if there is any. {\itshape Zero} otherwise.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_afdedcef127ad2a3677a5b48d7d3453f3}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::detach().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a0dd7cf705ace42c662c289955313b2e9}\label{classKite_1_1TrackSegment_a0dd7cf705ace42c662c289955313b2e9}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Direction@{get\+Direction}}
|
|
\index{get\+Direction@{get\+Direction}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Direction()}{getDirection()}}
|
|
{\footnotesize\ttfamily unsigned int get\+Direction (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
The direction of the supporting element (should match the preferred direction of the \mbox{\hyperlink{classKite_1_1Track}{Track}}).
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_ae35b78590ed6aa546b626ef95f28c533}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::get\+Source\+Dogleg(), and Track\+Segment\+::get\+Target\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a692492374623a5c6096b2c4a51190359}\label{classKite_1_1TrackSegment_a692492374623a5c6096b2c4a51190359}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Net@{get\+Net}}
|
|
\index{get\+Net@{get\+Net}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Net()}{getNet()}}
|
|
{\footnotesize\ttfamily \textbf{ Net} $\ast$ get\+Net (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The Net associated to the element (may be {\ttfamily N\+U\+LL}).
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_a2b383a5b6f5028911a35e446a682dabd}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::get\+Free\+Interval(), Track\+Segment\+::get\+Next(), and Track\+Segment\+::get\+Previous().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_ab045567c4f529dca7790d66c17c3084f}\label{classKite_1_1TrackSegment_ab045567c4f529dca7790d66c17c3084f}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Layer@{get\+Layer}}
|
|
\index{get\+Layer@{get\+Layer}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Layer()}{getLayer()}}
|
|
{\footnotesize\ttfamily const \textbf{ Layer} $\ast$ get\+Layer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The Layer of the element (should match the one of the \mbox{\hyperlink{classKite_1_1Track}{Track}}).
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_ad96c66549598873bf68c2e18ec7164c1}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_aa7552c20cc46abcac558627b2ca341f8}\label{classKite_1_1TrackSegment_aa7552c20cc46abcac558627b2ca341f8}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Freedom\+Degree@{get\+Freedom\+Degree}}
|
|
\index{get\+Freedom\+Degree@{get\+Freedom\+Degree}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Freedom\+Degree()}{getFreedomDegree()}}
|
|
{\footnotesize\ttfamily unsigned long get\+Freedom\+Degree (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The degree of freedom of the element. It is used as a priority value when sorting \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} (in \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}}).
|
|
|
|
{\bfseries Returns\+:} The degree of freedom of the element. It is used as a priority value when sorting \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} (in \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}}).
|
|
|
|
Currently, it is the {\itshape slack} of the \textbf{ Katabatic\+::\+Auto\+Segment}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_aa7552c20cc46abcac558627b2ca341f8}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_add78c6f914788c549f144998caacda84}\label{classKite_1_1TrackSegment_add78c6f914788c549f144998caacda84}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Dogleg\+Level@{get\+Dogleg\+Level}}
|
|
\index{get\+Dogleg\+Level@{get\+Dogleg\+Level}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Dogleg\+Level()}{getDoglegLevel()}}
|
|
{\footnotesize\ttfamily unsigned int get\+Dogleg\+Level (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The deepness of the dogleg.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_add78c6f914788c549f144998caacda84}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::can\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a010b7fc8801c5b88aefa4137cf85186d}\label{classKite_1_1TrackSegment_a010b7fc8801c5b88aefa4137cf85186d}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Next@{get\+Next}}
|
|
\index{get\+Next@{get\+Next}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Next()}{getNext()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Next (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The next \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}}, on the same track and of a {\itshape different} net. {\bfseries See also\+:}~ \mbox{\hyperlink{classKite_1_1Track_af3db59591bef3c690ace92c114a4e4aa}{Track\+::get\+Next()}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a010b7fc8801c5b88aefa4137cf85186d}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a55d6115d84c11ad147f4c38fe372ea24}\label{classKite_1_1TrackSegment_a55d6115d84c11ad147f4c38fe372ea24}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Previous@{get\+Previous}}
|
|
\index{get\+Previous@{get\+Previous}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Previous()}{getPrevious()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Previous (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The previous \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}}, on the same track and of a {\itshape different} net. {\bfseries See also\+:}~ \mbox{\hyperlink{classKite_1_1Track_a290fcfe6131730d216951a3b5207d777}{Track\+::get\+Previous()}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a55d6115d84c11ad147f4c38fe372ea24}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a95ec3b8e7e1ec87c20ee0b37bcc96df7}\label{classKite_1_1TrackSegment_a95ec3b8e7e1ec87c20ee0b37bcc96df7}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Parent@{get\+Parent}}
|
|
\index{get\+Parent@{get\+Parent}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Parent()}{getParent()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Parent (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} from which the dogleg has been created, if any.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a95ec3b8e7e1ec87c20ee0b37bcc96df7}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::get\+Data\+Negociate().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_ab5b5aaa5b318369feee6003dbad039c2}\label{classKite_1_1TrackSegment_ab5b5aaa5b318369feee6003dbad039c2}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Axis@{get\+Axis}}
|
|
\index{get\+Axis@{get\+Axis}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Axis()}{getAxis()}}
|
|
{\footnotesize\ttfamily \textbf{ Db\+U\+::\+Unit} get\+Axis (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The axis position of the element (must be the same as the \mbox{\hyperlink{classKite_1_1Track}{Track}}).
|
|
|
|
Implements \mbox{\hyperlink{classKite_1_1TrackElement_ac492fb5399691d81c31547db6b56fd03}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a034711e2d3617ea848ef9f5a18255e10}\label{classKite_1_1TrackSegment_a034711e2d3617ea848ef9f5a18255e10}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Free\+Interval@{get\+Free\+Interval}}
|
|
\index{get\+Free\+Interval@{get\+Free\+Interval}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Free\+Interval()}{getFreeInterval()}}
|
|
{\footnotesize\ttfamily \textbf{ Interval} get\+Free\+Interval (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The greatest free interval enclosing this element.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a034711e2d3617ea848ef9f5a18255e10}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a48f8b54f9489da3778d85c382a483f81}\label{classKite_1_1TrackSegment_a48f8b54f9489da3778d85c382a483f81}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Source\+Constraints@{get\+Source\+Constraints}}
|
|
\index{get\+Source\+Constraints@{get\+Source\+Constraints}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Source\+Constraints()}{getSourceConstraints()}}
|
|
{\footnotesize\ttfamily \textbf{ Interval} get\+Source\+Constraints (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::get\+Source\+Constraints()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a48f8b54f9489da3778d85c382a483f81}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a69af7d4287bc0e44c9ca2c8e6f692be9}\label{classKite_1_1TrackSegment_a69af7d4287bc0e44c9ca2c8e6f692be9}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Target\+Constraints@{get\+Target\+Constraints}}
|
|
\index{get\+Target\+Constraints@{get\+Target\+Constraints}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Target\+Constraints()}{getTargetConstraints()}}
|
|
{\footnotesize\ttfamily \textbf{ Interval} get\+Target\+Constraints (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Katabatic\+::\+Auto\+Segment\+::get\+Target\+Constraints()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a69af7d4287bc0e44c9ca2c8e6f692be9}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_acd0170a05128ec4af16ecd0060c3a3b5}\label{classKite_1_1TrackSegment_acd0170a05128ec4af16ecd0060c3a3b5}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Data\+Negociate@{get\+Data\+Negociate}}
|
|
\index{get\+Data\+Negociate@{get\+Data\+Negociate}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Data\+Negociate()}{getDataNegociate()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1DataNegociate}{Data\+Negociate}} $\ast$ get\+Data\+Negociate (\begin{DoxyParamCaption}\item[{unsigned int}]{flags = {\ttfamily \mbox{\hyperlink{namespaceKite_acca8fffa3182dea5f94208f454f14b47a68e917ff37d4b5cef906303181836404}{Kt\+Data\+Self}}} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The additional data-\/structure supplied by the routing algorithm.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_acd0170a05128ec4af16ecd0060c3a3b5}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::\+\_\+post\+Doglegs(), and Track\+Segment\+::swap\+Track().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_af2d46d64cbd02bdbba53d5483d95e26d}\label{classKite_1_1TrackSegment_af2d46d64cbd02bdbba53d5483d95e26d}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Canonical@{get\+Canonical}}
|
|
\index{get\+Canonical@{get\+Canonical}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Canonical()}{getCanonical()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Canonical (\begin{DoxyParamCaption}\item[{\textbf{ Interval} \&}]{i }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Inner working still unclear to myself.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_af2d46d64cbd02bdbba53d5483d95e26d}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_af45301f76558f613ccb605a8f851080e}\label{classKite_1_1TrackSegment_af45301f76558f613ccb605a8f851080e}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+G\+Cells@{get\+G\+Cells}}
|
|
\index{get\+G\+Cells@{get\+G\+Cells}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+G\+Cells()}{getGCells()}}
|
|
{\footnotesize\ttfamily size\+\_\+t get\+G\+Cells (\begin{DoxyParamCaption}\item[{Katabatic\+::\+G\+Cell\+Vector \&}]{gcells }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The table of \textbf{ Katabatic\+::\+G\+Cell} underneath the element whole span.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_af45301f76558f613ccb605a8f851080e}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::can\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a7e79fbfe77f173d46b1959c41087930a}\label{classKite_1_1TrackSegment_a7e79fbfe77f173d46b1959c41087930a}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Source\+Dogleg@{get\+Source\+Dogleg}}
|
|
\index{get\+Source\+Dogleg@{get\+Source\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Source\+Dogleg()}{getSourceDogleg()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Source\+Dogleg (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The source part of the segment from which the dogleg has been created.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a7e79fbfe77f173d46b1959c41087930a}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_aeb4e39bd925d093e6c45599433bb421c}\label{classKite_1_1TrackSegment_aeb4e39bd925d093e6c45599433bb421c}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Target\+Dogleg@{get\+Target\+Dogleg}}
|
|
\index{get\+Target\+Dogleg@{get\+Target\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Target\+Dogleg()}{getTargetDogleg()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ get\+Target\+Dogleg (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The target part of the segment from which the dogleg has been created.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_aeb4e39bd925d093e6c45599433bb421c}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_aa0ba92ebf19f596537dc051c090d5736}\label{classKite_1_1TrackSegment_aa0ba92ebf19f596537dc051c090d5736}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!get\+Perpandiculars@{get\+Perpandiculars}}
|
|
\index{get\+Perpandiculars@{get\+Perpandiculars}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{get\+Perpandiculars()}{getPerpandiculars()}}
|
|
{\footnotesize\ttfamily Track\+Elements get\+Perpandiculars (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries Returns\+:} The collection of all element perpandiculars to this one.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_aa0ba92ebf19f596537dc051c090d5736}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_abd3d8093f871d3d1a7f24b053648026c}\label{classKite_1_1TrackSegment_abd3d8093f871d3d1a7f24b053648026c}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!set\+Track@{set\+Track}}
|
|
\index{set\+Track@{set\+Track}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{set\+Track()}{setTrack()}}
|
|
{\footnotesize\ttfamily void set\+Track (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classKite_1_1Track}{Track}} $\ast$}]{track }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Insert the element into {\ttfamily track}, also used as an insertion marker.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_abd3d8093f871d3d1a7f24b053648026c}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::detach(), and Track\+Segment\+::swap\+Track().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_af5332d647c0482aa90ad7cc9b2a50f3a}\label{classKite_1_1TrackSegment_af5332d647c0482aa90ad7cc9b2a50f3a}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!update\+Freedom\+Degree@{update\+Freedom\+Degree}}
|
|
\index{update\+Freedom\+Degree@{update\+Freedom\+Degree}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{update\+Freedom\+Degree()}{updateFreedomDegree()}}
|
|
{\footnotesize\ttfamily void update\+Freedom\+Degree (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Update, from the element characteristics, it\textquotesingle{}s degree of freedom.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_af5332d647c0482aa90ad7cc9b2a50f3a}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a2b90319cb042b283aa5d1fdb1992f11f}\label{classKite_1_1TrackSegment_a2b90319cb042b283aa5d1fdb1992f11f}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!set\+Dogleg\+Level@{set\+Dogleg\+Level}}
|
|
\index{set\+Dogleg\+Level@{set\+Dogleg\+Level}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{set\+Dogleg\+Level()}{setDoglegLevel()}}
|
|
{\footnotesize\ttfamily void set\+Dogleg\+Level (\begin{DoxyParamCaption}\item[{unsigned int}]{level }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Sets the level of dogleg of the element.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a2b90319cb042b283aa5d1fdb1992f11f}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_acc245ce084989d1c34816d0e61b9d510}\label{classKite_1_1TrackSegment_acc245ce084989d1c34816d0e61b9d510}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!swap\+Track@{swap\+Track}}
|
|
\index{swap\+Track@{swap\+Track}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{swap\+Track()}{swapTrack()}}
|
|
{\footnotesize\ttfamily void swap\+Track (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Swap the tracks of {\ttfamily this} and {\ttfamily other}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_acc245ce084989d1c34816d0e61b9d510}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a0ffe603ec7d46f21f5e56ccbe84c03fb}\label{classKite_1_1TrackSegment_a0ffe603ec7d46f21f5e56ccbe84c03fb}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!reschedule@{reschedule}}
|
|
\index{reschedule@{reschedule}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{reschedule()}{reschedule()}}
|
|
{\footnotesize\ttfamily void reschedule (\begin{DoxyParamCaption}\item[{unsigned int}]{level }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
If the \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} has already an event scheduled, change the level of this event, otherwise create a new event.
|
|
|
|
{\bfseries See also\+:}~ Negotiate\+Window\+::reschedule\+Event().
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a0ffe603ec7d46f21f5e56ccbe84c03fb}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::\+\_\+post\+Doglegs().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_ac295bade8aee589f6718dfa79edc2a34}\label{classKite_1_1TrackSegment_ac295bade8aee589f6718dfa79edc2a34}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!detach@{detach}}
|
|
\index{detach@{detach}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{detach()}{detach()}}
|
|
{\footnotesize\ttfamily void detach (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Remove the link from the \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} to it\textquotesingle{}s owning \mbox{\hyperlink{classKite_1_1Track}{Track}}, marking it for removal. The removal from the \mbox{\hyperlink{classKite_1_1Track}{Track}}\textquotesingle{}s vector is managed by the \mbox{\hyperlink{classKite_1_1Track}{Track}} itself during the \mbox{\hyperlink{classKite_1_1Session}{Session}} revalidation stage.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_ac295bade8aee589f6718dfa79edc2a34}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a893f1101c650c08c98612515c2b1a89c}\label{classKite_1_1TrackSegment_a893f1101c650c08c98612515c2b1a89c}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!invalidate@{invalidate}}
|
|
\index{invalidate@{invalidate}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{invalidate()}{invalidate()}}
|
|
{\footnotesize\ttfamily void invalidate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Auto\+Segment\+::invalidate()}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a893f1101c650c08c98612515c2b1a89c}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::create(), and Track\+Segment\+::set\+Axis().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a5bd93abe1416952ace15a98dbeeed124}\label{classKite_1_1TrackSegment_a5bd93abe1416952ace15a98dbeeed124}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!revalidate@{revalidate}}
|
|
\index{revalidate@{revalidate}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{revalidate()}{revalidate()}}
|
|
{\footnotesize\ttfamily void revalidate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Actualize the \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} characteristics from the supporting elements (set of Auto\+Segment).
|
|
|
|
This method do not update the \mbox{\hyperlink{classKite_1_1DataNegociate}{Data\+Negociate}} or the \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}}. This is a lazy update delayed until the constructor of \mbox{\hyperlink{classKite_1_1SegmentFsm}{Segment\+Fsm}} is called. (see \mbox{\hyperlink{classKite_1_1TrackSegment_secTSLazyRevalidate}{Lazy Revalidate}}).
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a5bd93abe1416952ace15a98dbeeed124}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a262a915c38127d3722ec561b30d80f91}\label{classKite_1_1TrackSegment_a262a915c38127d3722ec561b30d80f91}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!set\+Axis@{set\+Axis}}
|
|
\index{set\+Axis@{set\+Axis}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{set\+Axis()}{setAxis()}}
|
|
{\footnotesize\ttfamily void set\+Axis (\begin{DoxyParamCaption}\item[{\textbf{ Db\+U\+::\+Unit}}]{, }\item[{unsigned int}]{flags }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Sets the axis of the \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a45e685b1e3ee630d24bf43746553af4c}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a7a9637875364e84e6862de0102341715}\label{classKite_1_1TrackSegment_a7a9637875364e84e6862de0102341715}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!make\+Dogleg@{make\+Dogleg}}
|
|
\index{make\+Dogleg@{make\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{make\+Dogleg()}{makeDogleg()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ make\+Dogleg (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Create a dogleg on the source end of the \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}}. Put the dogleg axis on the source {\bfseries To be further reviewed}.
|
|
|
|
{\bfseries See also\+:}~ \mbox{\hyperlink{classKite_1_1TrackSegment_secDogleg}{Dogleg management}}.
|
|
|
|
Post-\/processing done by \mbox{\hyperlink{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}{Track\+Segment\+::\+\_\+post\+Doglegs()}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a7a9637875364e84e6862de0102341715}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a524f1569b2f2c1a84df2fe47e84e28ed}\label{classKite_1_1TrackSegment_a524f1569b2f2c1a84df2fe47e84e28ed}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!make\+Dogleg@{make\+Dogleg}}
|
|
\index{make\+Dogleg@{make\+Dogleg}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{make\+Dogleg()}{makeDogleg()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$ make\+Dogleg (\begin{DoxyParamCaption}\item[{\textbf{ Interval}}]{interval, }\item[{unsigned int \&}]{flags }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
{\bfseries See also\+:}~ \textbf{ Auto\+Segment\+::make\+Dogleg()}, \mbox{\hyperlink{classKite_1_1TrackSegment_secDogleg}{Dogleg management}}, the return flags from this method are returned through the {\ttfamily flags} variable.
|
|
|
|
Post-\/processing done by \mbox{\hyperlink{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}{Track\+Segment\+::\+\_\+post\+Doglegs()}}.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_a524f1569b2f2c1a84df2fe47e84e28ed}{Track\+Element}}.
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}\label{classKite_1_1TrackSegment_a10a45c049d0bd7d01c7eff1c5441c7a2}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!\+\_\+post\+Doglegs@{\+\_\+post\+Doglegs}}
|
|
\index{\+\_\+post\+Doglegs@{\+\_\+post\+Doglegs}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{\+\_\+post\+Doglegs()}{\_postDoglegs()}}
|
|
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}} $\ast$ \+\_\+post\+Doglegs (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$\&}]{perpandicular, }\item[{\mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}} $\ast$\&}]{parallel }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Post-\/process to be called inside the various dogleg creation or slacken methods. Iterate through the newly created Auto\+Segments to create, for the {\itshape perpandicular} and the {\itshape new parallel} associateds Track\+Segments. Also sets the dogleg levels and flags of the newly created elements.
|
|
|
|
The session dogleg reset is called at the end of this method. The {\ttfamily perpandicular} and {\ttfamily parallel} references to pointers contains the newly created segments for the {\bfseries last} dogleg. If more than one was created, you cannot access them (the need has not arised yet).
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement}{Track\+Element}}.
|
|
|
|
|
|
|
|
Referenced by Track\+Segment\+::make\+Dogleg().
|
|
|
|
\mbox{\Hypertarget{classKite_1_1TrackSegment_ad79f4c6ea0fe1135b8264a29af085909}\label{classKite_1_1TrackSegment_ad79f4c6ea0fe1135b8264a29af085909}}
|
|
\index{Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}!\+\_\+check@{\+\_\+check}}
|
|
\index{\+\_\+check@{\+\_\+check}!Kite\+::\+Track\+Segment@{Kite\+::\+Track\+Segment}}
|
|
\paragraph{\texorpdfstring{\+\_\+check()}{\_check()}}
|
|
{\footnotesize\ttfamily bool \+\_\+check (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
|
|
|
|
Check the coherency of the element. For a \mbox{\hyperlink{classKite_1_1TrackSegment}{Track\+Segment}}\+:
|
|
\begin{DoxyItemize}
|
|
\item The supporting Auto\+Segment the canonical one of the set.
|
|
\item The cached {\ttfamily min} \& {\ttfamily max} values are identical to the computed ones.
|
|
\end{DoxyItemize}
|
|
|
|
{\bfseries Returns\+:} {\bfseries true} on success.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classKite_1_1TrackElement_ad79f4c6ea0fe1135b8264a29af085909}{Track\+Element}}.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
Track\+Segment.\+h\item
|
|
Track\+Segment.\+cpp\item
|
|
Track\+Segment.\+dox\end{DoxyCompactItemize}
|