\hypertarget{a01029}{\section{A\+C\+G\+:\+:Scene\+Graph\+:\+:Open\+Mesh\+:\+:Property\+Container Class Reference}
\label{a01029}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}}
}


A a container for properties.  


\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_adb7fa82014a184fc83fab0faecfd3b01}{typedef std\+::vector\\*
$<$ \hyperlink{a00333}{Base\+Property} $\ast$ $>$ {\bfseries Properties}}\label{a01029_adb7fa82014a184fc83fab0faecfd3b01}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_a8ec21ccf893b195313035823d784d042}{const \hyperlink{a01027}{Properties} \& {\bfseries properties} () const }\label{a01029_a8ec21ccf893b195313035823d784d042}

\item 
\hypertarget{a01029_a3970c6d54baad7ed56a45da7ffe9cede}{size\+\_\+t {\bfseries size} () const }\label{a01029_a3970c6d54baad7ed56a45da7ffe9cede}

\item 
\hypertarget{a01029_a8f3d2437e7ae7f16ea25082ae412cf41}{{\bfseries Property\+Container} (const \hyperlink{a01029}{Property\+Container} \&\+\_\+rhs)}\label{a01029_a8f3d2437e7ae7f16ea25082ae412cf41}

\item 
\hypertarget{a01029_a94fe76bd7e8552396ef30bb5da92705f}{\hyperlink{a01029}{Property\+Container} \& {\bfseries operator=} (const \hyperlink{a01029}{Property\+Container} \&\+\_\+rhs)}\label{a01029_a94fe76bd7e8552396ef30bb5da92705f}

\item 
\hypertarget{a01029_a5d36d1d6ad2c460c736251adee9e9470}{{\footnotesize template$<$class T $>$ }\\\hyperlink{a00337}{Base\+Prop\+Handle\+T}$<$ T $>$ {\bfseries add} (const T \&, const std\+::string \&\+\_\+name=\char`\"{}$<$unknown$>$\char`\"{})}\label{a01029_a5d36d1d6ad2c460c736251adee9e9470}

\item 
\hypertarget{a01029_a5569a48e7a47a80c0b8343beb6461b77}{{\footnotesize template$<$class T $>$ }\\\hyperlink{a00337}{Base\+Prop\+Handle\+T}$<$ T $>$ {\bfseries handle} (const T \&, const std\+::string \&\+\_\+name) const }\label{a01029_a5569a48e7a47a80c0b8343beb6461b77}

\item 
\hypertarget{a01029_a778722e4adffeff1a002bb918ff30d9d}{\hyperlink{a00333}{Base\+Property} $\ast$ {\bfseries property} (const std\+::string \&\+\_\+name) const }\label{a01029_a778722e4adffeff1a002bb918ff30d9d}

\item 
\hypertarget{a01029_adce36a62d4c1df3eb77bb8c4ab3b5bbc}{{\footnotesize template$<$class T $>$ }\\\hyperlink{a01040}{Property\+T}$<$ T $>$ \& {\bfseries property} (\hyperlink{a00337}{Base\+Prop\+Handle\+T}$<$ T $>$ \+\_\+h)}\label{a01029_adce36a62d4c1df3eb77bb8c4ab3b5bbc}

\item 
\hypertarget{a01029_aa49f8d02440f52879e99869977c23f73}{{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01040}{Property\+T}$<$ T $>$ \& {\bfseries property} (\hyperlink{a00337}{Base\+Prop\+Handle\+T}$<$ T $>$ \+\_\+h) const }\label{a01029_aa49f8d02440f52879e99869977c23f73}

\item 
\hypertarget{a01029_ad93958319c3a9a96d447ae688ed48864}{{\footnotesize template$<$class T $>$ }\\void {\bfseries remove} (\hyperlink{a00337}{Base\+Prop\+Handle\+T}$<$ T $>$ \+\_\+h)}\label{a01029_ad93958319c3a9a96d447ae688ed48864}

\item 
\hypertarget{a01029_a0c2c857e310ba1c32d7094a4a200d0eb}{void {\bfseries clear} ()}\label{a01029_a0c2c857e310ba1c32d7094a4a200d0eb}

\item 
void \hyperlink{a01029_aa0b957637111a4ad5049769d0f05f1de}{reserve} (size\+\_\+t \+\_\+n) const 
\item 
void \hyperlink{a01029_ad6f16aa1809a21dc4e370aa12d936ad5}{resize} (size\+\_\+t \+\_\+n) const 
\item 
void \hyperlink{a01029_a9bc4b5afe79c335e82cf29bd88aa01d9}{resize\+\_\+if\+\_\+smaller} (size\+\_\+t \+\_\+n) const 
\item 
void \hyperlink{a01029_afc16de26103d66352bedecf32424099b}{swap} (size\+\_\+t \+\_\+i0, size\+\_\+t \+\_\+i1) const 
\end{DoxyCompactItemize}
\subsection*{Protected Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_aa91b56e09e9c8b07ae979e6150e57a4f}{typedef Properties\+::iterator {\bfseries iterator}}\label{a01029_aa91b56e09e9c8b07ae979e6150e57a4f}

\item 
\hypertarget{a01029_af02f49bb519c512ec8eefdb01a11d282}{typedef Properties\+::const\+\_\+iterator {\bfseries const\+\_\+iterator}}\label{a01029_af02f49bb519c512ec8eefdb01a11d282}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_a3664a2729419480ac61f168cf238df5a}{size\+\_\+t {\bfseries \+\_\+add} (\hyperlink{a00333}{Base\+Property} $\ast$\+\_\+bp)}\label{a01029_a3664a2729419480ac61f168cf238df5a}

\item 
\hypertarget{a01029_aa4de4b122015f424c0eed590f9e26a15}{\hyperlink{a00333}{Base\+Property} \& {\bfseries \+\_\+property} (size\+\_\+t \+\_\+idx)}\label{a01029_aa4de4b122015f424c0eed590f9e26a15}

\item 
\hypertarget{a01029_a808ec8045b9380c3fc8f44b662c0ad83}{const \hyperlink{a00333}{Base\+Property} \& {\bfseries \+\_\+property} (size\+\_\+t \+\_\+idx) const }\label{a01029_a808ec8045b9380c3fc8f44b662c0ad83}

\item 
\hypertarget{a01029_a7f7327f3f2e844f7cc62a7c23f2d4f63}{iterator {\bfseries begin} ()}\label{a01029_a7f7327f3f2e844f7cc62a7c23f2d4f63}

\item 
\hypertarget{a01029_a4e30d8db63df950893e44e9bd4ed4f19}{iterator {\bfseries end} ()}\label{a01029_a4e30d8db63df950893e44e9bd4ed4f19}

\item 
\hypertarget{a01029_a1bb9ba54ff2bcb591781ae5a445d3178}{const\+\_\+iterator {\bfseries begin} () const }\label{a01029_a1bb9ba54ff2bcb591781ae5a445d3178}

\item 
\hypertarget{a01029_a279a2ce647128b94806588375c7a1fb9}{const\+\_\+iterator {\bfseries end} () const }\label{a01029_a279a2ce647128b94806588375c7a1fb9}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_aead94132c7b78b84d1dee861268e41ef}{\hyperlink{a01027}{Properties} {\bfseries properties\+\_\+}}\label{a01029_aead94132c7b78b84d1dee861268e41ef}

\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01029_a9b82005bcafe1e17389583740fba8c9b}{class {\bfseries Base\+Kernel}}\label{a01029_a9b82005bcafe1e17389583740fba8c9b}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
A a container for properties. 

Definition at line 67 of file Mesh\+Node2\+T.\+cc.



\subsection{Member Function Documentation}
\hypertarget{a01029_aa0b957637111a4ad5049769d0f05f1de}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}!reserve@{reserve}}
\index{reserve@{reserve}!A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}}
\subsubsection[{reserve}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container\+::reserve (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{\+\_\+n}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01029_aa0b957637111a4ad5049769d0f05f1de}
Reserves space for {\ttfamily \+\_\+n} elements in all property vectors. 

Definition at line 249 of file Mesh\+Node2\+T.\+cc.

\hypertarget{a01029_ad6f16aa1809a21dc4e370aa12d936ad5}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}!resize@{resize}}
\index{resize@{resize}!A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}}
\subsubsection[{resize}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container\+::resize (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{\+\_\+n}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01029_ad6f16aa1809a21dc4e370aa12d936ad5}
Resizes all property vectors to the specified size. 

Definition at line 256 of file Mesh\+Node2\+T.\+cc.

\hypertarget{a01029_a9bc4b5afe79c335e82cf29bd88aa01d9}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}!resize\+\_\+if\+\_\+smaller@{resize\+\_\+if\+\_\+smaller}}
\index{resize\+\_\+if\+\_\+smaller@{resize\+\_\+if\+\_\+smaller}!A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}}
\subsubsection[{resize\+\_\+if\+\_\+smaller}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container\+::resize\+\_\+if\+\_\+smaller (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{\+\_\+n}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01029_a9bc4b5afe79c335e82cf29bd88aa01d9}
Same as \begin{DoxySeeAlso}{See also}
\hyperlink{a01029_ad6f16aa1809a21dc4e370aa12d936ad5}{resize()} but ignores property vectors that have a size larger than {\ttfamily \+\_\+n}.
\end{DoxySeeAlso}
Use this method instead of \begin{DoxySeeAlso}{See also}
\hyperlink{a01029_ad6f16aa1809a21dc4e370aa12d936ad5}{resize()} if you plan to frequently reduce and enlarge the property container and you don't want to waste time reallocating the property vectors every time. 
\end{DoxySeeAlso}


Definition at line 268 of file Mesh\+Node2\+T.\+cc.

\hypertarget{a01029_afc16de26103d66352bedecf32424099b}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}!swap@{swap}}
\index{swap@{swap}!A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container@{A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container}}
\subsubsection[{swap}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Scene\+Graph\+::\+Open\+Mesh\+::\+Property\+Container\+::swap (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{\+\_\+i0, }
\item[{size\+\_\+t}]{\+\_\+i1}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a01029_afc16de26103d66352bedecf32424099b}
Swaps the items with index {\ttfamily \+\_\+i0} and index {\ttfamily \+\_\+i1} in all property vectors. 

Definition at line 276 of file Mesh\+Node2\+T.\+cc.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+Scenegraph/Mesh\+Node2\+T.\+cc\end{DoxyCompactItemize}
