2018-10-18 11:10:01 -05:00
\hypertarget { classKatabatic_ 1_ 1GCellGrid} { } \section { G\+ Cell\+ Grid Class Reference}
\label { classKatabatic_ 1_ 1GCellGrid} \index { G\+ Cell\+ Grid@{ G\+ Cell\+ Grid} }
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } \mbox { \hyperlink { classKatabatic_ 1_ 1Grid} { Grid} } .
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Inheritance diagram for G\+ Cell\+ Grid\+ :\nopagebreak
2018-06-06 11:42:26 -05:00
\begin { figure} [H]
\begin { center}
\leavevmode
2020-04-27 07:14:03 -05:00
\includegraphics [width=166pt] { classKatabatic_ 1_ 1GCellGrid_ _ inherit_ _ graph}
2018-06-06 11:42:26 -05:00
\end { center}
\end { figure}
\subsection * { Public Types}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
enum \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fe} { Density\+ Mode} } \{ \newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead15bf3e5b63f398d76d717a088acd310} { Average\+ H\+ V\+ Density} } =1,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40feaec0ad06385eae8d1e2dee4f3c9f9f4ed} { Average\+ H\+ Density} } =2,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead1a1d89017d10aeb63d1c05b6fb650dd} { Average\+ V\+ Density} } =3,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea8265e053af0708a508ecbce86d1a8165} { Max\+ H\+ V\+ Density} } =4,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea5f0a89ca367ef98550eaa86c1e32c873} { Max\+ V\+ Density} } =5,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea2a6d29b012cc89026c3c0061f87a4f03} { Max\+ H\+ Density} } =6,
\newline
\mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea90a2f4a4ee8558de9f99458ddeab852c} { Max\+ Density} } =7
2018-06-06 11:42:26 -05:00
\}
\end { DoxyCompactItemize}
\subsection * { Public Member Functions}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
\textbf { Cell} $ \ast $ \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a55a3a88610ef1af9931e634f77f2403b} { get\+ Cell} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKatabatic_ 1_ 1KatabaticEngine} { Katabatic\+ Engine} } $ \ast $ \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a0234fdabe7682546f1201bccd0b5cacf} { get\+ Katabatic} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
unsigned int \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ af1171855a3e928cace78d1534a8d0629} { get\+ Density\+ Mode} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
size\+ \_ \+ t \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a041680c5d171d4c7cb0edba96f0c390f} { get\+ H\+ Edge\+ Capacity} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
size\+ \_ \+ t \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ ae8e2cf3685ccb0621f4f85c7999834e8} { get\+ V\+ Edge\+ Capacity} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
\textbf { Interval} \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a8272dad8f7d916333f934f3cbde981bb} { get\+ U\+ Side} } (unsigned int) const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
size\+ \_ \+ t \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a88208864ba2268689946a8cb7a86fcb2} { check\+ Density} } () const
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
size\+ \_ \+ t \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a9b3455dce10eb98d0496175dd586528c} { update\+ Density} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a032d6eb23f92e3a41a020d18c6bbc02d} { update\+ Contacts} } (unsigned int flags=\mbox { \hyperlink { namespaceKatabatic_ a2af2ad6b6441614038caf59d04b3b217af314588109fcc5f5ee1c42e5fd4d0ed5} { Kb\+ Open\+ Session} } )
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a86899930041463cf80b713c3ca5b4834} { set\+ Density\+ Mode} } (unsigned int)
2018-06-06 11:42:26 -05:00
\end { DoxyCompactItemize}
\subsection * { Protected Member Functions}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a3715b38135ca24745f610bebd3407c10} { \+ \_ \+ post\+ Create} } ()
2018-06-06 11:42:26 -05:00
\item
2018-10-18 11:10:01 -05:00
void \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a7c13d9795eafd477994961f8a0d962d0} { \+ \_ \+ pre\+ Destroy} } ()
2018-06-06 11:42:26 -05:00
\end { DoxyCompactItemize}
\subsection * { Static Protected Member Functions}
\begin { DoxyCompactItemize}
\item
2018-10-18 11:10:01 -05:00
static \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid} { G\+ Cell\+ Grid} } $ \ast $ \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a19a45b2e6c6b9ca8898b2fde035d1827} { create} } (\mbox { \hyperlink { classKatabatic_ 1_ 1KatabaticEngine} { Katabatic\+ Engine} } $ \ast $ )
2018-06-06 11:42:26 -05:00
\end { DoxyCompactItemize}
\subsection { Detailed Description}
2018-10-18 11:10:01 -05:00
\mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } \mbox { \hyperlink { classKatabatic_ 1_ 1Grid} { Grid} } .
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
The \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } \mbox { \hyperlink { classKatabatic_ 1_ 1Grid} { Grid} } of \mbox { \hyperlink { namespaceKatabatic} { Katabatic} } . Although the base template class \mbox { \hyperlink { classKatabatic_ 1_ 1Grid} { Grid} } support irregular grid, the \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid} { G\+ Cell\+ Grid} } is regular, following the Knik global router G\+ Cells. Only the topmost row and leftmost column may have different height or width to cope with the design real size.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Due to the regular nature of the grid, the horizontal \& vertical edges capacities are all identical, and initialized from the \mbox { \hyperlink { namespaceKatabatic} { Katabatic} } Configuration.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
The grid is build from the Knik global routing, so obviously a Knik\+ Engine must be attached to the Cell when building the \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid} { G\+ Cell\+ Grid} } . An error is thrown otherwise.
2018-06-06 11:42:26 -05:00
\subsection { Member Enumeration Documentation}
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fe} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fe} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Density\+ Mode@{ Density\+ Mode} }
\index { Density\+ Mode@{ Density\+ Mode} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { Density\+ Mode} { DensityMode} }
{ \footnotesize \ttfamily enum \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fe} { Density\+ Mode} } }
Various ways of computing the overall density of a \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } . \begin { DoxyEnumFields} { Enumerator}
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Average\+ H\+ V\+ Density@{ Average\+ H\+ V\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Average\+ H\+ V\+ Density@{ Average\+ H\+ V\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead15bf3e5b63f398d76d717a088acd310} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead15bf3e5b63f398d76d717a088acd310} }
Average\+ H\+ V\+ Density& The average density all depths accounted. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Average\+ H\+ Density@{ Average\+ H\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Average\+ H\+ Density@{ Average\+ H\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40feaec0ad06385eae8d1e2dee4f3c9f9f4ed} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40feaec0ad06385eae8d1e2dee4f3c9f9f4ed} }
Average\+ H\+ Density& The average density of horizontal layers. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Average\+ V\+ Density@{ Average\+ V\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Average\+ V\+ Density@{ Average\+ V\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead1a1d89017d10aeb63d1c05b6fb650dd} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fead1a1d89017d10aeb63d1c05b6fb650dd} }
Average\+ V\+ Density& The average density of horizontal layers. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Max\+ H\+ V\+ Density@{ Max\+ H\+ V\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Max\+ H\+ V\+ Density@{ Max\+ H\+ V\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea8265e053af0708a508ecbce86d1a8165} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea8265e053af0708a508ecbce86d1a8165} }
Max\+ H\+ V\+ Density& The maximum of the average horizontal \& vertical densities taken as a whole. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Max\+ V\+ Density@{ Max\+ V\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Max\+ V\+ Density@{ Max\+ V\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea5f0a89ca367ef98550eaa86c1e32c873} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea5f0a89ca367ef98550eaa86c1e32c873} }
Max\+ V\+ Density& The maximum of the average vertical densities taken depth by depth. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Max\+ H\+ Density@{ Max\+ H\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Max\+ H\+ Density@{ Max\+ H\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea2a6d29b012cc89026c3c0061f87a4f03} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea2a6d29b012cc89026c3c0061f87a4f03} }
Max\+ H\+ Density& The maximum of the average horizontal densities taken depth by depth. \\
\hline
\raisebox { \heightof { T} } [0pt][0pt]{ \index { Max\+ Density@{ Max\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} } \index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !Max\+ Density@{ Max\+ Density} } } \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea90a2f4a4ee8558de9f99458ddeab852c} \label { classKatabatic_ 1_ 1GCellGrid_ a07884f5e1af410e98208fed76a2b40fea90a2f4a4ee8558de9f99458ddeab852c} }
Max\+ Density& The maximum of the average horizontal \& vertical densities taken depth by depth. \\
\hline
\end { DoxyEnumFields}
2018-06-06 11:42:26 -05:00
\subsection { Member Function Documentation}
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a55a3a88610ef1af9931e634f77f2403b} \label { classKatabatic_ 1_ 1GCellGrid_ a55a3a88610ef1af9931e634f77f2403b} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ Cell@{ get\+ Cell} }
\index { get\+ Cell@{ get\+ Cell} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ Cell()} { getCell()} }
{ \footnotesize \ttfamily \textbf { Cell} $ \ast $ get\+ Cell (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const}
{ \bfseries Returns\+ :} The associated Cell.
Referenced by G\+ Cell\+ Grid\+ ::\+ \_ \+ post\+ Create().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a0234fdabe7682546f1201bccd0b5cacf} \label { classKatabatic_ 1_ 1GCellGrid_ a0234fdabe7682546f1201bccd0b5cacf} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ Katabatic@{ get\+ Katabatic} }
\index { get\+ Katabatic@{ get\+ Katabatic} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ Katabatic()} { getKatabatic()} }
{ \footnotesize \ttfamily \mbox { \hyperlink { classKatabatic_ 1_ 1KatabaticEngine} { Katabatic\+ Engine} } $ \ast $ get\+ Katabatic (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The associated \mbox { \hyperlink { classKatabatic_ 1_ 1KatabaticEngine} { Katabatic\+ Engine} } . \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ af1171855a3e928cace78d1534a8d0629} \label { classKatabatic_ 1_ 1GCellGrid_ af1171855a3e928cace78d1534a8d0629} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ Density\+ Mode@{ get\+ Density\+ Mode} }
\index { get\+ Density\+ Mode@{ get\+ Density\+ Mode} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ Density\+ Mode()} { getDensityMode()} }
{ \footnotesize \ttfamily unsigned int get\+ Density\+ Mode (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The computation mode of the \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } densities.
Referenced by G\+ Cell\+ ::get\+ Density().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a041680c5d171d4c7cb0edba96f0c390f} \label { classKatabatic_ 1_ 1GCellGrid_ a041680c5d171d4c7cb0edba96f0c390f} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ H\+ Edge\+ Capacity@{ get\+ H\+ Edge\+ Capacity} }
\index { get\+ H\+ Edge\+ Capacity@{ get\+ H\+ Edge\+ Capacity} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ H\+ Edge\+ Capacity()} { getHEdgeCapacity()} }
{ \footnotesize \ttfamily size\+ \_ \+ t get\+ H\+ Edge\+ Capacity (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The horizontal edge capacity. As the matrix is regular it is identical for all horizontal edges.
Referenced by G\+ Cell\+ ::check\+ Edge\+ Saturation().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ ae8e2cf3685ccb0621f4f85c7999834e8} \label { classKatabatic_ 1_ 1GCellGrid_ ae8e2cf3685ccb0621f4f85c7999834e8} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ V\+ Edge\+ Capacity@{ get\+ V\+ Edge\+ Capacity} }
\index { get\+ V\+ Edge\+ Capacity@{ get\+ V\+ Edge\+ Capacity} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ V\+ Edge\+ Capacity()} { getVEdgeCapacity()} }
{ \footnotesize \ttfamily size\+ \_ \+ t get\+ V\+ Edge\+ Capacity (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const\hspace { 0.3cm} { \ttfamily [inline]} }
{ \bfseries Returns\+ :} The vertical edge capacity. As the matrix is regular it is identical for all vertical edges.
Referenced by G\+ Cell\+ ::check\+ Edge\+ Saturation().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a8272dad8f7d916333f934f3cbde981bb} \label { classKatabatic_ 1_ 1GCellGrid_ a8272dad8f7d916333f934f3cbde981bb} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !get\+ U\+ Side@{ get\+ U\+ Side} }
\index { get\+ U\+ Side@{ get\+ U\+ Side} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { get\+ U\+ Side()} { getUSide()} }
{ \footnotesize \ttfamily \textbf { Interval} get\+ U\+ Side (\begin { DoxyParamCaption} \item [{unsigned int}] { direction } \end { DoxyParamCaption} ) const}
{ \bfseries Returns\+ :} The side of the whole grid in { \ttfamily direction} .
References Box\+ ::get\+ X\+ Max(), Box\+ ::get\+ X\+ Min(), Box\+ ::get\+ Y\+ Max(), Box\+ ::get\+ Y\+ Min(), Katabatic\+ ::\+ Kb\+ Horizontal, and Katabatic\+ ::\+ Kb\+ Vertical.
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a88208864ba2268689946a8cb7a86fcb2} \label { classKatabatic_ 1_ 1GCellGrid_ a88208864ba2268689946a8cb7a86fcb2} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !check\+ Density@{ check\+ Density} }
\index { check\+ Density@{ check\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { check\+ Density()} { checkDensity()} }
{ \footnotesize \ttfamily size\+ \_ \+ t check\+ Density (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} ) const}
{ \bfseries Returns\+ :} The number of \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } saturateds.
Check all G\+ Cells for saturations.
References Grid$ < $ G\+ Cell $ > $ \+ ::get\+ G\+ Cells().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a9b3455dce10eb98d0496175dd586528c} \label { classKatabatic_ 1_ 1GCellGrid_ a9b3455dce10eb98d0496175dd586528c} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !update\+ Density@{ update\+ Density} }
\index { update\+ Density@{ update\+ Density} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { update\+ Density()} { updateDensity()} }
{ \footnotesize \ttfamily size\+ \_ \+ t update\+ Density (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )}
{ \bfseries Returns\+ :} The number of \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } saturateds.
Force a density update on all the G\+ Cells.
References Grid$ < $ G\+ Cell $ > $ \+ ::get\+ G\+ Cells().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a032d6eb23f92e3a41a020d18c6bbc02d} \label { classKatabatic_ 1_ 1GCellGrid_ a032d6eb23f92e3a41a020d18c6bbc02d} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !update\+ Contacts@{ update\+ Contacts} }
\index { update\+ Contacts@{ update\+ Contacts} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { update\+ Contacts()} { updateContacts()} }
{ \footnotesize \ttfamily void update\+ Contacts (\begin { DoxyParamCaption} \item [{unsigned int}] { flags = { \ttfamily \mbox { \hyperlink { namespaceKatabatic_ a2af2ad6b6441614038caf59d04b3b217af314588109fcc5f5ee1c42e5fd4d0ed5} { Kb\+ Open\+ Session} } } } \end { DoxyParamCaption} )}
Force an update on all \mbox { \hyperlink { classKatabatic_ 1_ 1AutoContact} { Auto\+ Contact} } on all the G\+ Cells. if { \ttfamily open\+ Session} is { \bfseries true} , enclose the update in a \mbox { \hyperlink { classKatabatic_ 1_ 1Session} { Session} } .
References Session\+ ::close(), Grid$ < $ G\+ Cell $ > $ \+ ::get\+ G\+ Cells(), Katabatic\+ ::\+ Kb\+ Open\+ Session, and Session\+ ::open().
Referenced by Katabatic\+ Engine\+ ::refresh().
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a86899930041463cf80b713c3ca5b4834} \label { classKatabatic_ 1_ 1GCellGrid_ a86899930041463cf80b713c3ca5b4834} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !set\+ Density\+ Mode@{ set\+ Density\+ Mode} }
\index { set\+ Density\+ Mode@{ set\+ Density\+ Mode} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { set\+ Density\+ Mode()} { setDensityMode()} }
{ \footnotesize \ttfamily void set\+ Density\+ Mode (\begin { DoxyParamCaption} \item [{unsigned int}] { mode } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [inline]} }
Sets the density computation mode. \mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a3715b38135ca24745f610bebd3407c10} \label { classKatabatic_ 1_ 1GCellGrid_ a3715b38135ca24745f610bebd3407c10} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !\+ \_ \+ post\+ Create@{ \+ \_ \+ post\+ Create} }
\index { \+ \_ \+ post\+ Create@{ \+ \_ \+ post\+ Create} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { \+ \_ \+ post\+ Create()} { \_ postCreate()} }
{ \footnotesize \ttfamily void \+ \_ \+ post\+ Create (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [protected]} , { \ttfamily [virtual]} }
Perform the \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } \& \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } vector allocation.
2018-08-19 06:27:09 -05:00
\begin { DoxyItemize}
2018-10-18 11:10:01 -05:00
\item Read the horizontal and vertical cut lines from Knik and translate them into \mbox { \hyperlink { classKatabatic_ 1_ 1BaseGrid_ 1_ 1Axis} { Base\+ Grid\+ ::\+ Axis} } .
\item From the \mbox { \hyperlink { classKatabatic_ 1_ 1BaseGrid_ 1_ 1Axis} { Base\+ Grid\+ ::\+ Axis} } , deduces the exact positions of the G\+ Cells and allocate them.
\item The \mbox { \hyperlink { classKatabatic_ 1_ 1GCell} { G\+ Cell} } allocation is done in a \char `\" { } row by row\char `\" { } fashion consistent with \mbox { \hyperlink { classKatabatic_ 1_ 1BaseGrid} { Base\+ Grid} } implicit assumptions.
2018-08-19 06:27:09 -05:00
\end { DoxyItemize}
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Reimplemented from \mbox { \hyperlink { classKatabatic_ 1_ 1BaseGrid} { Base\+ Grid} } .
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
References Base\+ Grid\+ ::\+ Axis\+ ::add\+ Graduation(), G\+ Cell\+ Grid\+ ::get\+ Cell(), Base\+ Grid\+ ::get\+ Columns(), Base\+ Grid\+ ::get\+ Rows(), Base\+ Grid\+ ::\+ Axis\+ ::get\+ Size(), and Base\+ Grid\+ ::\+ Axis\+ ::sort().
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a7c13d9795eafd477994961f8a0d962d0} \label { classKatabatic_ 1_ 1GCellGrid_ a7c13d9795eafd477994961f8a0d962d0} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !\+ \_ \+ pre\+ Destroy@{ \+ \_ \+ pre\+ Destroy} }
\index { \+ \_ \+ pre\+ Destroy@{ \+ \_ \+ pre\+ Destroy} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { \+ \_ \+ pre\+ Destroy()} { \_ preDestroy()} }
{ \footnotesize \ttfamily void \+ \_ \+ pre\+ Destroy (\begin { DoxyParamCaption} { } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [protected]} , { \ttfamily [virtual]} }
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
The G\+ Cells are deleted at this point.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Reimplemented from \mbox { \hyperlink { classKatabatic_ 1_ 1BaseGrid} { Base\+ Grid} } .
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
\mbox { \Hypertarget { classKatabatic_ 1_ 1GCellGrid_ a19a45b2e6c6b9ca8898b2fde035d1827} \label { classKatabatic_ 1_ 1GCellGrid_ a19a45b2e6c6b9ca8898b2fde035d1827} }
\index { Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} !create@{ create} }
\index { create@{ create} !Katabatic\+ ::\+ G\+ Cell\+ Grid@{ Katabatic\+ ::\+ G\+ Cell\+ Grid} }
\subsubsection { \texorpdfstring { create()} { create()} }
{ \footnotesize \ttfamily \mbox { \hyperlink { classKatabatic_ 1_ 1GCellGrid} { G\+ Cell\+ Grid} } $ \ast $ create (\begin { DoxyParamCaption} \item [{\mbox{\hyperlink{classKatabatic_1_1KatabaticEngine}{Katabatic\+Engine}} $\ast$}] { ktbt } \end { DoxyParamCaption} )\hspace { 0.3cm} { \ttfamily [static]} , { \ttfamily [protected]} }
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
A\+ P\+ I-\/ space contructor.
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
References grid().
2018-06-06 11:42:26 -05:00
2018-10-18 11:10:01 -05:00
Referenced by Katabatic\+ Engine\+ ::create\+ Detailed\+ Grid().
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
G\+ Cell\+ Grid.\+ h\item
G\+ Cell\+ Grid.\+ cpp\item
G\+ Cell\+ Grid.\+ dox\end { DoxyCompactItemize}