2018-10-18 11:10:01 -05:00
\hypertarget { classKite_ 1_ 1DataNegociate} { } \subsection { Data\+ Negociate Class Reference}
\label { classKite_ 1_ 1DataNegociate} \index { Data\+ Negociate@{ Data\+ Negociate} }
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Algorimthmic datas associated the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } .
2018-06-06 11:42:26 -05:00
\subsubsection * { Public Types}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
enum \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} { Slack\+ State} } \{ \newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a19d8d157762b2b73c5274e4865523d29} { Ripup\+ Perpandiculars} } = 1,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a548e204a4e2ffae50774910737f11380} { Minimize} } = 2,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a361bca46d5e7bdf02f50f7ecaa6018a9} { Dogleg} } = 3,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a0d4bff02b3163821c0e5f7ad9dd55f36} { Slacken} } = 4,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ae08187cba35efd6229ab8acfd003a600} { Conflict\+ Solve\+ By\+ History} } = 5,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7afce071be0ba39626ed1c865789da598b} { Conflict\+ Solve\+ By\+ Placeds} } = 6,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7aa54078da5ffb3463f7d6f291b0b0725e} { Local\+ Vs\+ Global} } = 7,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7adfd76a7d65b56ed7ecc0eedf921d6f82} { Move\+ Up} } = 8,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a9fc7197613f3435d906edf69a73acf38} { Maximum\+ Slack} } = 9,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ac64569bb9cffe0532bc43b52d7b6c383} { Unimplemented} } =10,
\newline
\mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a27b403019a93f9f127cf64a0688a8288} { Repair} } =11
2018-06-06 11:42:26 -05:00
\}
\end { DoxyCompactItemize}
\subsubsection * { Public Member Functions}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
bool \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ abeeeb06293c85a902f2b56d1b13d260d} { has\+ Routing\+ Event} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } $ \ast $ \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a831dab8eb708da17b4f1e1a8c057f283} { get\+ Routing\+ Event} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKite_ 1_ 1TrackElement} { Track\+ Element} } $ \ast $ \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ abc97e384245eab238831f9461968025b} { get\+ Track\+ Segment} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKite_ 1_ 1Track} { Track} } $ \ast $ \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a3f34f9139b8491a0adb531ac3a904171} { get\+ Track} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\textbf { Db\+ U\+ ::\+ Unit} \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a56149c72d0bfe5e33795782b646061b1} { get\+ Left\+ Min\+ Extend} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\textbf { Db\+ U\+ ::\+ Unit} \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ abf06c826acae81494b01b904d3277cc1} { get\+ Right\+ Min\+ Extend} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a4f6fbcee2499d33394ab54f856c500c0} { get\+ Terminals} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\textbf { Net} $ \ast $ \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a692492374623a5c6096b2c4a51190359} { get\+ Net} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a40ec2b23684a0e6e6d7ac9783a269037} { get\+ State} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a6ad2b700f668f8e2e5cd4fbc717d8765} { get\+ State\+ Count} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a9832198737bd835fab730ff2b95bbfa0} { get\+ Ripup\+ Count} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ acdd169f3bd670279f0a891caa809f99a} { get\+ State\+ And\+ Ripup\+ Count} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\textbf { Db\+ U\+ ::\+ Unit} \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ af920f8ca7404239772e56d00f779cac6} { get\+ Wiring\+ Delta} } (\textbf { Db\+ U\+ ::\+ Unit} axis) const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
const \textbf { Interval} \& \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a60d12d642a8d232241a2b07febeb980b} { get\+ Perpandicular\+ Free} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ aafc8cd0dcd351625a12904bed7d5a7d1} { set\+ State} } (unsigned int, unsigned int flags=0)
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a044867f105053d6231ab13fee23ec7b0} { set\+ Routing\+ Event} } (\mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } $ \ast $ )
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a45492835bdca93f4e656dcd7ed027825} { set\+ Ripup\+ Count} } (unsigned int)
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ae50c33d207171246319e11e0671bc706} { inc\+ Ripup\+ Count} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a4f94572b3541ea2d150c75bedc8364ed} { dec\+ Ripup\+ Count} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ a00a11ad9089d2df7b290615921e0c96a} { reset\+ Ripup\+ Count} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ af1e8d229bb1dfcff3151d44d42a8549b} { reset\+ State\+ Count} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} { update} } ()
2018-06-06 11:42:26 -05:00
\end { DoxyCompactItemize}
\subsubsection { Detailed Description}
2018-10-18 11:10:01 -05:00
Algorimthmic datas associated the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } .
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
The \mbox { \hyperlink { classKite_ 1_ 1DataNegociate} { Data\+ Negociate} } object contains all the informations the negociation algorithm needs to know about a \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } . Those informations mostly describe the slackening and ripup state of that segment.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
{ \bfseries State related datas\+ :}
2018-06-06 11:42:26 -05:00
\begin { DoxyItemize}
\item The ripup count in the current state. The count is reset to zero at each state transition.
2018-10-18 11:10:01 -05:00
\item The slackening state (see \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} { Data\+ Negociate\+ ::\+ Slack\+ State} } ). The state indicate the { \bfseries next} topological modification to be applied on the segment should the ripup count reach it\textquotesingle { } s maximal value.
\item The associated \mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } . If no \mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } is present, it means the segment has been either successufully placed or the algorithm has given up trying to. If present, it is a { \itshape pending} request for placement.
2018-06-06 11:42:26 -05:00
\end { DoxyItemize}
2018-10-18 11:10:01 -05:00
{ \bfseries Topological related datas\+ :}
2018-06-06 11:42:26 -05:00
\begin { DoxyItemize}
2018-10-18 11:10:01 -05:00
\item { \ttfamily left\+ Min\+ Extend} , the potential minimal position of the segment left extension. May not be reachable due to other topological constraints.
\item { \ttfamily right\+ Min\+ Extend} , the potential minimal position of the segment right extension.
2018-06-06 11:42:26 -05:00
\item { \ttfamily terminals} , the number of terminals attached to this segment.
\item { \ttfamily attractors} , a table of coordinates of the end points of the perpandiculars to this segment. Used to compute the wiring delta if we move the axis of the segment.
2018-10-18 11:10:01 -05:00
\item { \ttfamily perpandiculars} , a { \ttfamily vector} of the perpandicular \mbox { \hyperlink { classKite_ 1_ 1TrackElement} { Track\+ Element} } . This is a fast-\/ access cache. It must be updated each time the topology of the net is modificated.
\item { \ttfamily perpandicular\+ Free} , the free interval defined by the perpandiculars, that is for the sgement axis.
2018-06-06 11:42:26 -05:00
\end { DoxyItemize} \hypertarget { classKite_ 1_ 1DataNegociate_ secAttractorsComputation} { } \subsubsection { Perpandiculars, Free, Attractors \& Wiring Delta} \label { classKite_ 1_ 1DataNegociate_ secAttractorsComputation}
2018-10-18 11:10:01 -05:00
All those informations are computed and updated by the \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} { Data\+ Negociate\+ ::update()} } method, which relies on\+ :
2018-06-06 11:42:26 -05:00
\begin { DoxyItemize}
2018-10-18 11:10:01 -05:00
\item Auto\+ Segment\+ ::get\+ Topological\+ Infos()
\item Auto\+ Segment\+ ::get\+ Terminal\+ Count()
2018-06-06 11:42:26 -05:00
\end { DoxyItemize}
2018-10-18 11:10:01 -05:00
They must be reviewed as they do not take advantage of the new Auto\+ Segment structuration.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
For every perpandicular set of Auto\+ Segment to the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } we want to place, get the coordinates of the extremity not connected to the segment and put that coordinate into a table associated with it\textquotesingle { } s { \itshape spin} . The { \itshape spin} tells if the extremity is attracting the segment { \itshape up} or { \itshape down} (for an horizontal segment). The { \itshape spin} is incremented for up and decremented for down. After all the extremities have been processeds, we took into account only the coordinates with a non-\/ zero spin, which means they truly attract the segment (whatever the direction).
2018-06-06 11:42:26 -05:00
The { \itshape wiring delta} is the total wire length needed to connect from the attractors to the segment, should it be placed on { \ttfamily axis} .
\hypertarget { classKite_ 1_ 1DataNegociate_ secDataNegociateModifications} { } \subsubsection { Modifications History} \label { classKite_ 1_ 1DataNegociate_ secDataNegociateModifications}
2018-10-18 11:10:01 -05:00
Main changes in \mbox { \hyperlink { classKite_ 1_ 1DataNegociate} { Data\+ Negociate} } class design\+ :
2018-06-06 11:42:26 -05:00
\begin { DoxyItemize}
\item Merge in the separate class { \ttfamily Cost} .
2018-10-18 11:10:01 -05:00
\item Suppress the { \ttfamily Slack\+ State\+ ::\+ Desalignate} , due to the simplificated structure of the Auto\+ Segment/\+ Auto\+ Contacts (no more collapseds, or forced alignements).
2018-06-06 11:42:26 -05:00
\end { DoxyItemize}
\subsubsection { Member Enumeration Documentation}
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Slack\+ State@{ Slack\+ State} }
\index { Slack\+ State@{ Slack\+ State} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { Slack\+ State} { SlackState} }
{ \footnotesize \ttfamily enum \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} { Slack\+ State} } }
Describe the various stages of a \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } slackening. The numerical values are choosen so we can increment them as a counter. \begin { DoxyEnumFields} { Enumerator}
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Ripup\+ Perpandiculars@{ Ripup\+ Perpandiculars} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Ripup\+ Perpandiculars@{ Ripup\+ Perpandiculars} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a19d8d157762b2b73c5274e4865523d29} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a19d8d157762b2b73c5274e4865523d29} }
Ripup\+ Perpandiculars& Force perpandiculars to be riped up as well as the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } , then schedule the placement of the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } { \itshape before} it\textquotesingle { } s perpandiculars. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Minimize@{ Minimize} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Minimize@{ Minimize} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a548e204a4e2ffae50774910737f11380} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a548e204a4e2ffae50774910737f11380} }
Minimize& If the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } is made of multiple Track\+ Segments with a forced alignement, suppress the alignement constraint.
This should be deprecated now. Try to displace the perpandiculars so the \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } is reduced to it\textquotesingle { } s minimal length. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Dogleg@{ Dogleg} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Dogleg@{ Dogleg} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a361bca46d5e7bdf02f50f7ecaa6018a9} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a361bca46d5e7bdf02f50f7ecaa6018a9} }
Dogleg& Break the segment into two smaller ones. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Slacken@{ Slacken} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Slacken@{ Slacken} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a0d4bff02b3163821c0e5f7ad9dd55f36} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a0d4bff02b3163821c0e5f7ad9dd55f36} }
Slacken& Create additional wiring so threre is no more contraints transmitted by the perpandiculars or the terminal contacts. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Conflict\+ Solve\+ By\+ History@{ Conflict\+ Solve\+ By\+ History} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Conflict\+ Solve\+ By\+ History@{ Conflict\+ Solve\+ By\+ History} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ae08187cba35efd6229ab8acfd003a600} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ae08187cba35efd6229ab8acfd003a600} }
Conflict\+ Solve\+ By\+ History& Try to solve a conflict between a set of global segments by analysing the event/ripup history. See \mbox { \hyperlink { classKite_ 1_ 1SegmentFsm_ a0d9a9926ae67cc7998799347f135e28a} { Segment\+ Fsm\+ ::conflict\+ Solve\+ By\+ History()} } . \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Conflict\+ Solve\+ By\+ Placeds@{ Conflict\+ Solve\+ By\+ Placeds} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Conflict\+ Solve\+ By\+ Placeds@{ Conflict\+ Solve\+ By\+ Placeds} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7afce071be0ba39626ed1c865789da598b} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7afce071be0ba39626ed1c865789da598b} }
Conflict\+ Solve\+ By\+ Placeds& Try to solve a conflict between a set of global segments by analysing the current track context. See \mbox { \hyperlink { classKite_ 1_ 1SegmentFsm_ a9c0fa6a9067b6e027e24f38330f627dc} { Segment\+ Fsm\+ ::conflict\+ Solve\+ By\+ Placeds()} } . \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Local\+ Vs\+ Global@{ Local\+ Vs\+ Global} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Local\+ Vs\+ Global@{ Local\+ Vs\+ Global} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7aa54078da5ffb3463f7d6f291b0b0725e} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7aa54078da5ffb3463f7d6f291b0b0725e} }
Local\+ Vs\+ Global& To be reviewed. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Move\+ Up@{ Move\+ Up} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Move\+ Up@{ Move\+ Up} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7adfd76a7d65b56ed7ecc0eedf921d6f82} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7adfd76a7d65b56ed7ecc0eedf921d6f82} }
Move\+ Up& The segment is to be moved up (if possible). \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Maximum\+ Slack@{ Maximum\+ Slack} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Maximum\+ Slack@{ Maximum\+ Slack} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a9fc7197613f3435d906edf69a73acf38} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a9fc7197613f3435d906edf69a73acf38} }
Maximum\+ Slack& The final state, topological modifications are exhausteds, if it cannot place at this point, it never will. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Unimplemented@{ Unimplemented} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Unimplemented@{ Unimplemented} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ac64569bb9cffe0532bc43b52d7b6c383} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7ac64569bb9cffe0532bc43b52d7b6c383} }
Unimplemented& Used only during the development stage, telling that the state is not available yet. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Repair@{ Repair} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} } \index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !Repair@{ Repair} } } \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a27b403019a93f9f127cf64a0688a8288} \label { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7a27b403019a93f9f127cf64a0688a8288} }
Repair& The router is in repair mode. \\
\hline
\end { DoxyEnumFields}
2018-06-06 11:42:26 -05:00
\subsubsection { Member Function Documentation}
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ abeeeb06293c85a902f2b56d1b13d260d} \label { classKite_ 1_ 1DataNegociate_ abeeeb06293c85a902f2b56d1b13d260d} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !has\+ Routing\+ Event@{ has\+ Routing\+ Event} }
\index { has\+ Routing\+ Event@{ has\+ Routing\+ Event} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { has\+ Routing\+ Event()} { hasRoutingEvent()} }
{ \footnotesize \ttfamily bool has\+ Routing\+ Event (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} { \bfseries true} if there is a pending \mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } for this \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } .
Referenced by Negociate\+ Window\+ ::add\+ Routing\+ Event(), and Track\+ Segment\+ ::reschedule().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a831dab8eb708da17b4f1e1a8c057f283} \label { classKite_ 1_ 1DataNegociate_ a831dab8eb708da17b4f1e1a8c057f283} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Routing\+ Event@{ get\+ Routing\+ Event} }
\index { get\+ Routing\+ Event@{ get\+ Routing\+ Event} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Routing\+ Event()} { getRoutingEvent()} }
{ \footnotesize \ttfamily \mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } $ \ast $ get\+ Routing\+ Event (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The pending \mbox { \hyperlink { classKite_ 1_ 1RoutingEvent} { Routing\+ Event} } . { \ttfamily N\+ U\+ LL} will be returned if there is no pending event, meaning that the segment has been placed.
Referenced by Segment\+ Action\+ ::do\+ Action(), Manipulator\+ ::make\+ Dogleg(), Manipulator\+ ::relax(), Track\+ Segment\+ ::reschedule(), Routing\+ Event\+ ::reschedule(), and Track\+ Segment\+ ::swap\+ Track().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ abc97e384245eab238831f9461968025b} \label { classKite_ 1_ 1DataNegociate_ abc97e384245eab238831f9461968025b} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Track\+ Segment@{ get\+ Track\+ Segment} }
\index { get\+ Track\+ Segment@{ get\+ Track\+ Segment} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Track\+ Segment()} { getTrackSegment()} }
{ \footnotesize \ttfamily \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } $ \ast $ get\+ Track\+ Segment (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The associated \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } . \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a3f34f9139b8491a0adb531ac3a904171} \label { classKite_ 1_ 1DataNegociate_ a3f34f9139b8491a0adb531ac3a904171} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Track@{ get\+ Track} }
\index { get\+ Track@{ get\+ Track} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Track()} { getTrack()} }
{ \footnotesize \ttfamily \mbox { \hyperlink { classKite_ 1_ 1Track} { Track} } $ \ast $ get\+ Track (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} A proxy accessor for the segment\textquotesingle { } s track. \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a56149c72d0bfe5e33795782b646061b1} \label { classKite_ 1_ 1DataNegociate_ a56149c72d0bfe5e33795782b646061b1} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Left\+ Min\+ Extend@{ get\+ Left\+ Min\+ Extend} }
\index { get\+ Left\+ Min\+ Extend@{ get\+ Left\+ Min\+ Extend} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Left\+ Min\+ Extend()} { getLeftMinExtend()} }
{ \footnotesize \ttfamily \textbf { Db\+ U\+ ::\+ Unit} get\+ Left\+ Min\+ Extend (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The minimum extend possible of the segment\textquotesingle { } s source (left) ending. Computed by \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} { Data\+ Negociate\+ ::update()} } .
Referenced by Manipulator\+ ::insert\+ In\+ Track().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ abf06c826acae81494b01b904d3277cc1} \label { classKite_ 1_ 1DataNegociate_ abf06c826acae81494b01b904d3277cc1} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Right\+ Min\+ Extend@{ get\+ Right\+ Min\+ Extend} }
\index { get\+ Right\+ Min\+ Extend@{ get\+ Right\+ Min\+ Extend} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Right\+ Min\+ Extend()} { getRightMinExtend()} }
{ \footnotesize \ttfamily \textbf { Db\+ U\+ ::\+ Unit} get\+ Right\+ Min\+ Extend (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The minimum extend possible of the segment\textquotesingle { } s target (right) ending. Computed by \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} { Data\+ Negociate\+ ::update()} } .
Referenced by Manipulator\+ ::insert\+ In\+ Track().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a4f6fbcee2499d33394ab54f856c500c0} \label { classKite_ 1_ 1DataNegociate_ a4f6fbcee2499d33394ab54f856c500c0} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Terminals@{ get\+ Terminals} }
\index { get\+ Terminals@{ get\+ Terminals} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Terminals()} { getTerminals()} }
{ \footnotesize \ttfamily unsigned int get\+ Terminals (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The number of terminal to which this segment is connected Computed by \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} { Data\+ Negociate\+ ::update()} } .
Must be refined\+ : direct or indirect?. \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a692492374623a5c6096b2c4a51190359} \label { classKite_ 1_ 1DataNegociate_ a692492374623a5c6096b2c4a51190359} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Net@{ get\+ Net} }
\index { get\+ Net@{ get\+ Net} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Net()} { getNet()} }
{ \footnotesize \ttfamily \textbf { Net} $ \ast $ get\+ Net (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} A cached accessor to the segment\textquotesingle { } s net (for faster access). \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a40ec2b23684a0e6e6d7ac9783a269037} \label { classKite_ 1_ 1DataNegociate_ a40ec2b23684a0e6e6d7ac9783a269037} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ State@{ get\+ State} }
\index { get\+ State@{ get\+ State} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ State()} { getState()} }
{ \footnotesize \ttfamily unsigned int get\+ State (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The current state (see \mbox { \hyperlink { classKite_ 1_ 1DataNegociate_ ab7ccb6fc1f298728995250a3bbcf18c7} { Data\+ Negociate\+ ::\+ Slack\+ State} } ).
Referenced by Routing\+ Event\+ ::get\+ State(), Manipulator\+ ::insert\+ In\+ Track(), and Manipulator\+ ::ripup\+ Perpandiculars().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a6ad2b700f668f8e2e5cd4fbc717d8765} \label { classKite_ 1_ 1DataNegociate_ a6ad2b700f668f8e2e5cd4fbc717d8765} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ State\+ Count@{ get\+ State\+ Count} }
\index { get\+ State\+ Count@{ get\+ State\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ State\+ Count()} { getStateCount()} }
{ \footnotesize \ttfamily unsigned int get\+ State\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The number of times we have reached the ripup limit while in this stage.
Referenced by Segment\+ Fsm\+ ::conflict\+ Solve\+ By\+ Placeds().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a9832198737bd835fab730ff2b95bbfa0} \label { classKite_ 1_ 1DataNegociate_ a9832198737bd835fab730ff2b95bbfa0} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Ripup\+ Count@{ get\+ Ripup\+ Count} }
\index { get\+ Ripup\+ Count@{ get\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Ripup\+ Count()} { getRipupCount()} }
{ \footnotesize \ttfamily unsigned int get\+ Ripup\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The number of times the segment has been riped up in this stage.
Referenced by Manipulator\+ ::can\+ Ripup(), Segment\+ Action\+ ::do\+ Action(), and Routing\+ Event\+ ::process().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ acdd169f3bd670279f0a891caa809f99a} \label { classKite_ 1_ 1DataNegociate_ acdd169f3bd670279f0a891caa809f99a} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ State\+ And\+ Ripup\+ Count@{ get\+ State\+ And\+ Ripup\+ Count} }
\index { get\+ State\+ And\+ Ripup\+ Count@{ get\+ State\+ And\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ State\+ And\+ Ripup\+ Count()} { getStateAndRipupCount()} }
{ \footnotesize \ttfamily unsigned int get\+ State\+ And\+ Ripup\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
2018-06-06 11:42:26 -05:00
\begin { DoxyReturn} { Returns}
2018-10-18 11:10:01 -05:00
A composite number combining the state and the ripup count\+ : { \ttfamily (state$ < $ $ < $ 4)+ripup} .
2018-06-06 11:42:26 -05:00
\end { DoxyReturn}
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ af920f8ca7404239772e56d00f779cac6} \label { classKite_ 1_ 1DataNegociate_ af920f8ca7404239772e56d00f779cac6} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Wiring\+ Delta@{ get\+ Wiring\+ Delta} }
\index { get\+ Wiring\+ Delta@{ get\+ Wiring\+ Delta} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Wiring\+ Delta()} { getWiringDelta()} }
{ \footnotesize \ttfamily \textbf { Db\+ U\+ ::\+ Unit} get\+ Wiring\+ Delta (\begin { DoxyParamCaption} \item [{\textbf{ Db\+U\+::\+Unit}}] { axis } \end { DoxyParamCaption} ) const}
{ \bfseries Returns\+ :} The wiring length needed to connect to the attractors if the segment is put on { \ttfamily axis} . The lower, the better... \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a60d12d642a8d232241a2b07febeb980b} \label { classKite_ 1_ 1DataNegociate_ a60d12d642a8d232241a2b07febeb980b} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !get\+ Perpandicular\+ Free@{ get\+ Perpandicular\+ Free} }
\index { get\+ Perpandicular\+ Free@{ get\+ Perpandicular\+ Free} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { get\+ Perpandicular\+ Free()} { getPerpandicularFree()} }
{ \footnotesize \ttfamily const \textbf { Interval} \& get\+ Perpandicular\+ Free (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The range of legal positions generated only by the perpandiculars. \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ aafc8cd0dcd351625a12904bed7d5a7d1} \label { classKite_ 1_ 1DataNegociate_ aafc8cd0dcd351625a12904bed7d5a7d1} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !set\+ State@{ set\+ State} }
\index { set\+ State@{ set\+ State} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { set\+ State()} { setState()} }
{ \footnotesize \ttfamily void set\+ State (\begin { DoxyParamCaption} \item [{unsigned int}] { state, } \item [{unsigned int}] { flags = { \ttfamily 0} } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Set or reset the slacking state (see Slack\+ State). If the { \ttfamily state} is the same as the current one, the state count is incremented. If the new state changes or { \ttfamily flags} contain Kt\+ Reset, the state count is reset to one.
Referenced by Segment\+ Action\+ ::do\+ Action(), Manipulator\+ ::relax(), Manipulator\+ ::repack\+ Perpandiculars(), Routing\+ Event\+ ::reschedule(), Manipulator\+ ::ripup\+ Perpandiculars(), and Routing\+ Event\+ ::set\+ State().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a044867f105053d6231ab13fee23ec7b0} \label { classKite_ 1_ 1DataNegociate_ a044867f105053d6231ab13fee23ec7b0} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !set\+ Routing\+ Event@{ set\+ Routing\+ Event} }
\index { set\+ Routing\+ Event@{ set\+ Routing\+ Event} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { set\+ Routing\+ Event()} { setRoutingEvent()} }
{ \footnotesize \ttfamily void set\+ Routing\+ Event (\begin { DoxyParamCaption} \item [{\mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$}] { event } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Associate { \ttfamily event} to this \mbox { \hyperlink { classKite_ 1_ 1TrackSegment} { Track\+ Segment} } .
Referenced by Routing\+ Event\+ ::reschedule(), and Routing\+ Event\+ ::set\+ Segment().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a45492835bdca93f4e656dcd7ed027825} \label { classKite_ 1_ 1DataNegociate_ a45492835bdca93f4e656dcd7ed027825} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !set\+ Ripup\+ Count@{ set\+ Ripup\+ Count} }
\index { set\+ Ripup\+ Count@{ set\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { set\+ Ripup\+ Count()} { setRipupCount()} }
{ \footnotesize \ttfamily void set\+ Ripup\+ Count (\begin { DoxyParamCaption} \item [{unsigned int}] { count } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
2018-06-06 11:42:26 -05:00
Directly sets the ripup count to { \ttfamily count} .
2018-10-18 11:10:01 -05:00
Referenced by Segment\+ Action\+ ::do\+ Action().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ae50c33d207171246319e11e0671bc706} \label { classKite_ 1_ 1DataNegociate_ ae50c33d207171246319e11e0671bc706} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !inc\+ Ripup\+ Count@{ inc\+ Ripup\+ Count} }
\index { inc\+ Ripup\+ Count@{ inc\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { inc\+ Ripup\+ Count()} { incRipupCount()} }
{ \footnotesize \ttfamily void inc\+ Ripup\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Increment the ripup count. No check is performed for bound limit. \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a4f94572b3541ea2d150c75bedc8364ed} \label { classKite_ 1_ 1DataNegociate_ a4f94572b3541ea2d150c75bedc8364ed} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !dec\+ Ripup\+ Count@{ dec\+ Ripup\+ Count} }
\index { dec\+ Ripup\+ Count@{ dec\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { dec\+ Ripup\+ Count()} { decRipupCount()} }
{ \footnotesize \ttfamily void dec\+ Ripup\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Decrement the ripup count (will never go below zero). \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ a00a11ad9089d2df7b290615921e0c96a} \label { classKite_ 1_ 1DataNegociate_ a00a11ad9089d2df7b290615921e0c96a} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !reset\+ Ripup\+ Count@{ reset\+ Ripup\+ Count} }
\index { reset\+ Ripup\+ Count@{ reset\+ Ripup\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { reset\+ Ripup\+ Count()} { resetRipupCount()} }
{ \footnotesize \ttfamily void reset\+ Ripup\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
2018-06-06 11:42:26 -05:00
Reset the ripup count to zero.
2018-10-18 11:10:01 -05:00
Referenced by Segment\+ Action\+ ::do\+ Action().
\mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ af1e8d229bb1dfcff3151d44d42a8549b} \label { classKite_ 1_ 1DataNegociate_ af1e8d229bb1dfcff3151d44d42a8549b} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !reset\+ State\+ Count@{ reset\+ State\+ Count} }
\index { reset\+ State\+ Count@{ reset\+ State\+ Count} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { reset\+ State\+ Count()} { resetStateCount()} }
{ \footnotesize \ttfamily void reset\+ State\+ Count (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Reset the state count to zero. \mbox { \Hypertarget { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} \label { classKite_ 1_ 1DataNegociate_ ac5c54df7ed3b930268c8d7752c101725} }
\index { Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} !update@{ update} }
\index { update@{ update} !Kite\+ ::\+ Data\+ Negociate@{ Kite\+ ::\+ Data\+ Negociate} }
\paragraph { \texorpdfstring { update()} { update()} }
{ \footnotesize \ttfamily void update (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )}
Recompute { \ttfamily left\+ Min\+ Extend} , { \ttfamily righ\+ Min\+ Extend} , number of terminals and attractors positions.
\begin { DoxyParagraph} { Remark\+ : The constructor do not calls it. It is to the algorithm responsability}
to call it before using the computed datas.
2018-06-06 11:42:26 -05:00
\end { DoxyParagraph}
2018-10-18 11:10:01 -05:00
Referenced by Negociate\+ Window\+ ::set\+ G\+ Cells().
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
The documentation for this class was generated from the following files\+ :\begin { DoxyCompactItemize}
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
Data\+ Negociate.\+ h\item
Data\+ Negociate.\+ cpp\item
Data\+ Negociate.\+ dox\end { DoxyCompactItemize}