\hypertarget{a00324}{\section{Open\+Mesh\+:\+:Base\+Kernel Class Reference}
\label{a00324}\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
}


{\ttfamily \#include $<$libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+Mesh/\+Base\+Kernel.\+hh$>$}

Inheritance diagram for Open\+Mesh\+:\+:Base\+Kernel\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.736434cm]{a00324}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00324_a046855ec2dba0203fc0cb4616577ca0f}{typedef Property\+Container\+::iterator {\bfseries prop\+\_\+iterator}}\label{a00324_a046855ec2dba0203fc0cb4616577ca0f}

\item 
\hypertarget{a00324_ad7396c73982565505fd5aeb9ad0850c4}{typedef \\*
Property\+Container\+::const\+\_\+iterator {\bfseries const\+\_\+prop\+\_\+iterator}}\label{a00324_ad7396c73982565505fd5aeb9ad0850c4}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_ae9277cd8341a7025951c3edd4961afef}{copy\+\_\+property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, \hyperlink{a01426}{Vertex\+Handle} \+\_\+vh\+\_\+from, \hyperlink{a01426}{Vertex\+Handle} \+\_\+vh\+\_\+to)
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_afc29ef76edcd1f2bfe0cea4ad3e5f1cd}{copy\+\_\+property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh\+\_\+from, \hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh\+\_\+to)
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_a4b5fa77467c7d165a63445b899b44c63}{copy\+\_\+property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00520}{Edge\+Handle} \+\_\+eh\+\_\+from, \hyperlink{a00520}{Edge\+Handle} \+\_\+eh\+\_\+to)
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_af1f118544aefd742f86780d61394522b}{copy\+\_\+property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00554}{Face\+Handle} \+\_\+fh\+\_\+from, \hyperlink{a00554}{Face\+Handle} \+\_\+fh\+\_\+to)
\item 
void \hyperlink{a00324_ab1b8cb02dfc4544f2762de962a2ce7ad}{copy\+\_\+all\+\_\+properties} (\hyperlink{a01426}{Vertex\+Handle} \+\_\+vh\+\_\+from, \hyperlink{a01426}{Vertex\+Handle} \+\_\+vh\+\_\+to, bool \+\_\+copy\+Build\+In=false)
\item 
void \hyperlink{a00324_abc7d6ef07804e9fa51acd045f44404ef}{copy\+\_\+all\+\_\+properties} (\hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh\+\_\+from, \hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh\+\_\+to, bool \+\_\+copy\+Build\+In=false)
\item 
void \hyperlink{a00324_a677c217fd4439461dd3ecec6575040d3}{copy\+\_\+all\+\_\+properties} (\hyperlink{a00520}{Edge\+Handle} \+\_\+eh\+\_\+from, \hyperlink{a00520}{Edge\+Handle} \+\_\+eh\+\_\+to, bool \+\_\+copy\+Build\+In=false)
\item 
void \hyperlink{a00324_a82c6c4245ef28da6973ccde436121ef3}{copy\+\_\+all\+\_\+properties} (\hyperlink{a00554}{Face\+Handle} \+\_\+fh\+\_\+from, \hyperlink{a00554}{Face\+Handle} \+\_\+fh\+\_\+to, bool \+\_\+copy\+Build\+In=false)
\item 
\hypertarget{a00324_a8c00641de036db8df393d9b20b2c631a}{size\+\_\+t {\bfseries n\+\_\+vprops} (void) const }\label{a00324_a8c00641de036db8df393d9b20b2c631a}

\item 
\hypertarget{a00324_a274c51d4aa7e7178e3e23d49ee5dedf5}{size\+\_\+t {\bfseries n\+\_\+eprops} (void) const }\label{a00324_a274c51d4aa7e7178e3e23d49ee5dedf5}

\item 
\hypertarget{a00324_a5b7701398aaf265a4fc54e7059ac7cfb}{size\+\_\+t {\bfseries n\+\_\+hprops} (void) const }\label{a00324_a5b7701398aaf265a4fc54e7059ac7cfb}

\item 
\hypertarget{a00324_a01d638025178fa218460b9759a29ce17}{size\+\_\+t {\bfseries n\+\_\+fprops} (void) const }\label{a00324_a01d638025178fa218460b9759a29ce17}

\item 
\hypertarget{a00324_a43cc8ed0407a6fae5af2abcd34ac0ebb}{size\+\_\+t {\bfseries n\+\_\+mprops} (void) const }\label{a00324_a43cc8ed0407a6fae5af2abcd34ac0ebb}

\item 
\hypertarget{a00324_aa4c6b8d019d9fd607d4051ba60d2e404}{\hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+vprop} (const std\+::string \&\+\_\+name)}\label{a00324_aa4c6b8d019d9fd607d4051ba60d2e404}

\item 
\hypertarget{a00324_a3e0f8b2ca881470e5d0f14005b7f8319}{\hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+eprop} (const std\+::string \&\+\_\+name)}\label{a00324_a3e0f8b2ca881470e5d0f14005b7f8319}

\item 
\hypertarget{a00324_aeeee2e65b2e50ce76439a8bfd880b706}{\hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+hprop} (const std\+::string \&\+\_\+name)}\label{a00324_aeeee2e65b2e50ce76439a8bfd880b706}

\item 
\hypertarget{a00324_a4781550e55460ca3cc1e85a403b2b8b5}{\hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+fprop} (const std\+::string \&\+\_\+name)}\label{a00324_a4781550e55460ca3cc1e85a403b2b8b5}

\item 
\hypertarget{a00324_a88505be81e823407ef5274a0fcd2fb94}{\hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+mprop} (const std\+::string \&\+\_\+name)}\label{a00324_a88505be81e823407ef5274a0fcd2fb94}

\item 
\hypertarget{a00324_a4340e9ace55b713b55d7c940404459af}{const \hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+vprop} (const std\+::string \&\+\_\+name) const }\label{a00324_a4340e9ace55b713b55d7c940404459af}

\item 
\hypertarget{a00324_ae35a644def54786e4ea1a05da1b2266e}{const \hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+eprop} (const std\+::string \&\+\_\+name) const }\label{a00324_ae35a644def54786e4ea1a05da1b2266e}

\item 
\hypertarget{a00324_ad07744f64c4236f0a8d43593651a9b6a}{const \hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+hprop} (const std\+::string \&\+\_\+name) const }\label{a00324_ad07744f64c4236f0a8d43593651a9b6a}

\item 
\hypertarget{a00324_a16530f7947ed6ba8f5061037f11182b6}{const \hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+fprop} (const std\+::string \&\+\_\+name) const }\label{a00324_a16530f7947ed6ba8f5061037f11182b6}

\item 
\hypertarget{a00324_a06dba2ab0de940bb060b09a4680c880d}{const \hyperlink{a00332}{Base\+Property} $\ast$ {\bfseries \+\_\+get\+\_\+mprop} (const std\+::string \&\+\_\+name) const }\label{a00324_a06dba2ab0de940bb060b09a4680c880d}

\item 
\hypertarget{a00324_a10148f6731c1c98d4f873c1686878416}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+vprop} (size\+\_\+t \+\_\+idx)}\label{a00324_a10148f6731c1c98d4f873c1686878416}

\item 
\hypertarget{a00324_abe5c9d45e0948d6e0dad1f28cddc2f0e}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+eprop} (size\+\_\+t \+\_\+idx)}\label{a00324_abe5c9d45e0948d6e0dad1f28cddc2f0e}

\item 
\hypertarget{a00324_abe11bc2deb05aefaa240fbf3e01ae398}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+hprop} (size\+\_\+t \+\_\+idx)}\label{a00324_abe11bc2deb05aefaa240fbf3e01ae398}

\item 
\hypertarget{a00324_a97edcef5462701f5d4f0969933d26a47}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+fprop} (size\+\_\+t \+\_\+idx)}\label{a00324_a97edcef5462701f5d4f0969933d26a47}

\item 
\hypertarget{a00324_a65fe0c5411e37a170f42c3fc72aed5b7}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+mprop} (size\+\_\+t \+\_\+idx)}\label{a00324_a65fe0c5411e37a170f42c3fc72aed5b7}

\item 
\hypertarget{a00324_ae98ecfa5e4cf632aa77a77819af97897}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+vprop} (size\+\_\+t \+\_\+idx) const }\label{a00324_ae98ecfa5e4cf632aa77a77819af97897}

\item 
\hypertarget{a00324_a9032e27b08b457357e79b4753e0be80c}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+eprop} (size\+\_\+t \+\_\+idx) const }\label{a00324_a9032e27b08b457357e79b4753e0be80c}

\item 
\hypertarget{a00324_a6b31cde17c690fcbaa48e79617b3c345}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+hprop} (size\+\_\+t \+\_\+idx) const }\label{a00324_a6b31cde17c690fcbaa48e79617b3c345}

\item 
\hypertarget{a00324_a489207431d7856fe8bd2208d69694c83}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+fprop} (size\+\_\+t \+\_\+idx) const }\label{a00324_a489207431d7856fe8bd2208d69694c83}

\item 
\hypertarget{a00324_a91e42ec54a6d8012d72655abf16f9e09}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+mprop} (size\+\_\+t \+\_\+idx) const }\label{a00324_a91e42ec54a6d8012d72655abf16f9e09}

\item 
\hypertarget{a00324_a6da0e496d7fdf02d6ff422b23749387e}{size\+\_\+t {\bfseries \+\_\+add\+\_\+vprop} (\hyperlink{a00332}{Base\+Property} $\ast$\+\_\+bp)}\label{a00324_a6da0e496d7fdf02d6ff422b23749387e}

\item 
\hypertarget{a00324_a23a3d6eb92083c204bf019482c580965}{size\+\_\+t {\bfseries \+\_\+add\+\_\+eprop} (\hyperlink{a00332}{Base\+Property} $\ast$\+\_\+bp)}\label{a00324_a23a3d6eb92083c204bf019482c580965}

\item 
\hypertarget{a00324_a8da22d93a5c56826a8ab7892054a6cd2}{size\+\_\+t {\bfseries \+\_\+add\+\_\+hprop} (\hyperlink{a00332}{Base\+Property} $\ast$\+\_\+bp)}\label{a00324_a8da22d93a5c56826a8ab7892054a6cd2}

\item 
\hypertarget{a00324_ae3cd9b1cb1eb5d3765340b727d7ec233}{size\+\_\+t {\bfseries \+\_\+add\+\_\+fprop} (\hyperlink{a00332}{Base\+Property} $\ast$\+\_\+bp)}\label{a00324_ae3cd9b1cb1eb5d3765340b727d7ec233}

\item 
\hypertarget{a00324_ade78fbb39296eb156b34a2676f9a3e69}{size\+\_\+t {\bfseries \+\_\+add\+\_\+mprop} (\hyperlink{a00332}{Base\+Property} $\ast$\+\_\+bp)}\label{a00324_ade78fbb39296eb156b34a2676f9a3e69}

\item 
\hypertarget{a00324_a168b734e6e76dd16a7d6648d1fc003b3}{virtual size\+\_\+t {\bfseries n\+\_\+vertices} () const }\label{a00324_a168b734e6e76dd16a7d6648d1fc003b3}

\item 
\hypertarget{a00324_ad3fecdba25e10c9b48836b8e752d8b07}{virtual size\+\_\+t {\bfseries n\+\_\+halfedges} () const }\label{a00324_ad3fecdba25e10c9b48836b8e752d8b07}

\item 
\hypertarget{a00324_a3905b7b13000b9f6e8d6a7a7d46ee48e}{virtual size\+\_\+t {\bfseries n\+\_\+edges} () const }\label{a00324_a3905b7b13000b9f6e8d6a7a7d46ee48e}

\item 
\hypertarget{a00324_a222da8b224ae8271b1f284fb22bf6d47}{virtual size\+\_\+t {\bfseries n\+\_\+faces} () const }\label{a00324_a222da8b224ae8271b1f284fb22bf6d47}

\item 
\hypertarget{a00324_a9853fe5661fa3c82713b13b821e1b15e}{void {\bfseries property\+\_\+stats} () const }\label{a00324_a9853fe5661fa3c82713b13b821e1b15e}

\item 
\hypertarget{a00324_a2bbb216aa9c07349920b52e6e6ea29c7}{void {\bfseries property\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_a2bbb216aa9c07349920b52e6e6ea29c7}

\item 
\hypertarget{a00324_a2ec79b23fcb4db16d0785879218f1519}{void {\bfseries vprop\+\_\+stats} (std\+::string \&\+\_\+string) const }\label{a00324_a2ec79b23fcb4db16d0785879218f1519}

\item 
\hypertarget{a00324_ac2e70caac67b5f206298d2c10212c167}{void {\bfseries hprop\+\_\+stats} (std\+::string \&\+\_\+string) const }\label{a00324_ac2e70caac67b5f206298d2c10212c167}

\item 
\hypertarget{a00324_a236e4f972465c96a26d45a5f5d783194}{void {\bfseries eprop\+\_\+stats} (std\+::string \&\+\_\+string) const }\label{a00324_a236e4f972465c96a26d45a5f5d783194}

\item 
\hypertarget{a00324_a04eca0e600523dadffae25efbfada114}{void {\bfseries fprop\+\_\+stats} (std\+::string \&\+\_\+string) const }\label{a00324_a04eca0e600523dadffae25efbfada114}

\item 
\hypertarget{a00324_a2290712ed311226d88b5716d49b77f60}{void {\bfseries mprop\+\_\+stats} (std\+::string \&\+\_\+string) const }\label{a00324_a2290712ed311226d88b5716d49b77f60}

\item 
\hypertarget{a00324_a252b435037c43660c37f9c72d3de16f2}{void {\bfseries vprop\+\_\+stats} () const }\label{a00324_a252b435037c43660c37f9c72d3de16f2}

\item 
\hypertarget{a00324_a0ecb24c8d7ad5cdc7b008affd57416bd}{void {\bfseries hprop\+\_\+stats} () const }\label{a00324_a0ecb24c8d7ad5cdc7b008affd57416bd}

\item 
\hypertarget{a00324_a5969fdf103d79f126dbcafd4305a7131}{void {\bfseries eprop\+\_\+stats} () const }\label{a00324_a5969fdf103d79f126dbcafd4305a7131}

\item 
\hypertarget{a00324_ad8194476707064d31e4825d7075bfc08}{void {\bfseries fprop\+\_\+stats} () const }\label{a00324_ad8194476707064d31e4825d7075bfc08}

\item 
\hypertarget{a00324_a0ff6cf05894e26a509ad3f681a9eab32}{void {\bfseries mprop\+\_\+stats} () const }\label{a00324_a0ff6cf05894e26a509ad3f681a9eab32}

\item 
\hypertarget{a00324_a20904c4c0b6993b639c99357a311a7d0}{void {\bfseries vprop\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_a20904c4c0b6993b639c99357a311a7d0}

\item 
\hypertarget{a00324_aa2b7025717d7d966cd652f5ef230dbb5}{void {\bfseries hprop\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_aa2b7025717d7d966cd652f5ef230dbb5}

\item 
\hypertarget{a00324_af553a19c41a2ee028307e40a13b50604}{void {\bfseries eprop\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_af553a19c41a2ee028307e40a13b50604}

\item 
\hypertarget{a00324_a6fb986a799a9f63f00b220da0dc5b2b2}{void {\bfseries fprop\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_a6fb986a799a9f63f00b220da0dc5b2b2}

\item 
\hypertarget{a00324_a48cebd39c06dc307cf9fe192da063d58}{void {\bfseries mprop\+\_\+stats} (std\+::ostream \&\+\_\+ostr) const }\label{a00324_a48cebd39c06dc307cf9fe192da063d58}

\item 
\hypertarget{a00324_a250a0db26ad3b6c77c5d942225fdfd04}{prop\+\_\+iterator {\bfseries vprops\+\_\+begin} ()}\label{a00324_a250a0db26ad3b6c77c5d942225fdfd04}

\item 
\hypertarget{a00324_a143161c7df019f5b457e2ed3bc4d7a2f}{prop\+\_\+iterator {\bfseries vprops\+\_\+end} ()}\label{a00324_a143161c7df019f5b457e2ed3bc4d7a2f}

\item 
\hypertarget{a00324_a29e10cc34289cb431f55aa1dfc4764bf}{const\+\_\+prop\+\_\+iterator {\bfseries vprops\+\_\+begin} () const }\label{a00324_a29e10cc34289cb431f55aa1dfc4764bf}

\item 
\hypertarget{a00324_a83f025980d9ac1d3ee1f28cc7e25f715}{const\+\_\+prop\+\_\+iterator {\bfseries vprops\+\_\+end} () const }\label{a00324_a83f025980d9ac1d3ee1f28cc7e25f715}

\item 
\hypertarget{a00324_aa6801ed83552fe7f258ff4d76c11190b}{prop\+\_\+iterator {\bfseries eprops\+\_\+begin} ()}\label{a00324_aa6801ed83552fe7f258ff4d76c11190b}

\item 
\hypertarget{a00324_ac4b7694e0c3ef7fe7aa4804901dcb1c7}{prop\+\_\+iterator {\bfseries eprops\+\_\+end} ()}\label{a00324_ac4b7694e0c3ef7fe7aa4804901dcb1c7}

\item 
\hypertarget{a00324_ad3ce7258c66ed3ceef001faaa2a3ae4c}{const\+\_\+prop\+\_\+iterator {\bfseries eprops\+\_\+begin} () const }\label{a00324_ad3ce7258c66ed3ceef001faaa2a3ae4c}

\item 
\hypertarget{a00324_a0cce38f83c8461fe3acf263bc24bf4bb}{const\+\_\+prop\+\_\+iterator {\bfseries eprops\+\_\+end} () const }\label{a00324_a0cce38f83c8461fe3acf263bc24bf4bb}

\item 
\hypertarget{a00324_a3ca80eedfe84dd3b75a0307a97ab3483}{prop\+\_\+iterator {\bfseries hprops\+\_\+begin} ()}\label{a00324_a3ca80eedfe84dd3b75a0307a97ab3483}

\item 
\hypertarget{a00324_a2d60dfbd90250c379084e58675e3b1aa}{prop\+\_\+iterator {\bfseries hprops\+\_\+end} ()}\label{a00324_a2d60dfbd90250c379084e58675e3b1aa}

\item 
\hypertarget{a00324_ad2a2c30adbc6b46c445bc95071efb1c8}{const\+\_\+prop\+\_\+iterator {\bfseries hprops\+\_\+begin} () const }\label{a00324_ad2a2c30adbc6b46c445bc95071efb1c8}

\item 
\hypertarget{a00324_ac905efeb87719ff77e79f99c9b0e34b3}{const\+\_\+prop\+\_\+iterator {\bfseries hprops\+\_\+end} () const }\label{a00324_ac905efeb87719ff77e79f99c9b0e34b3}

\item 
\hypertarget{a00324_a810348c30d7d88a6d13396239a66770c}{prop\+\_\+iterator {\bfseries fprops\+\_\+begin} ()}\label{a00324_a810348c30d7d88a6d13396239a66770c}

\item 
\hypertarget{a00324_afbed4b5b662e6d592317afae73ae549e}{prop\+\_\+iterator {\bfseries fprops\+\_\+end} ()}\label{a00324_afbed4b5b662e6d592317afae73ae549e}

\item 
\hypertarget{a00324_acfbcb814590aa9ab1537adf32268f727}{const\+\_\+prop\+\_\+iterator {\bfseries fprops\+\_\+begin} () const }\label{a00324_acfbcb814590aa9ab1537adf32268f727}

\item 
\hypertarget{a00324_acb36f6ec1d0ff19ef08b84170caa3e33}{const\+\_\+prop\+\_\+iterator {\bfseries fprops\+\_\+end} () const }\label{a00324_acb36f6ec1d0ff19ef08b84170caa3e33}

\item 
\hypertarget{a00324_a04b9396b09fa0c951a25c992c68467f3}{prop\+\_\+iterator {\bfseries mprops\+\_\+begin} ()}\label{a00324_a04b9396b09fa0c951a25c992c68467f3}

\item 
\hypertarget{a00324_a952cc5558e0257bfad8324018f12a7c1}{prop\+\_\+iterator {\bfseries mprops\+\_\+end} ()}\label{a00324_a952cc5558e0257bfad8324018f12a7c1}

\item 
\hypertarget{a00324_a95e4c6f76a55d8589598c9733843783b}{const\+\_\+prop\+\_\+iterator {\bfseries mprops\+\_\+begin} () const }\label{a00324_a95e4c6f76a55d8589598c9733843783b}

\item 
\hypertarget{a00324_af3f43af3d522689a8d38d56687d85e40}{const\+\_\+prop\+\_\+iterator {\bfseries mprops\+\_\+end} () const }\label{a00324_af3f43af3d522689a8d38d56687d85e40}

\end{DoxyCompactItemize}
\begin{Indent}{\bf Add a property to a mesh item}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_a9930247356671a0ce4ceaef29b3c1a23}{add\+\_\+property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name=\char`\"{}$<$vprop$>$\char`\"{})
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_ae5f70a08d5f10b464847ce2b60074f98}{add\+\_\+property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name=\char`\"{}$<$hprop$>$\char`\"{})
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_af45115b38d63fa76a8224bbab11106f8}{add\+\_\+property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name=\char`\"{}$<$eprop$>$\char`\"{})
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_ae4198ef048f05f50604492532d40c608}{add\+\_\+property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name=\char`\"{}$<$fprop$>$\char`\"{})
\item 
{\footnotesize template$<$class T $>$ }\\void \hyperlink{a00324_a20fb6fd47031cf5cc337fadc9cf163a6}{add\+\_\+property} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name=\char`\"{}$<$mprop$>$\char`\"{})
\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Removing a property from a mesh tiem}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename T $>$ }\\void \hyperlink{a00324_a1e6ab3a90a233ced3fef7a1575766c17}{remove\+\_\+property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph)
\item 
{\footnotesize template$<$typename T $>$ }\\void \hyperlink{a00324_a4dc56cf217a1a58782a5c65d8d590710}{remove\+\_\+property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph)
\item 
{\footnotesize template$<$typename T $>$ }\\void \hyperlink{a00324_a0d525d1badf6c1dd6765630f1966b303}{remove\+\_\+property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph)
\item 
{\footnotesize template$<$typename T $>$ }\\void \hyperlink{a00324_a6454b0639cd0d6768392237359f25829}{remove\+\_\+property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph)
\item 
{\footnotesize template$<$typename T $>$ }\\void \hyperlink{a00324_aceeae93f3f0a51cd2323148fcbe7eed0}{remove\+\_\+property} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph)
\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Get property handle by name}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class T $>$ }\\bool \hyperlink{a00324_a0b39577842612a2f7f7ba570a23755d5}{get\+\_\+property\+\_\+handle} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name) const 
\item 
{\footnotesize template$<$class T $>$ }\\bool \hyperlink{a00324_a4072206d125d790dd3869f92ee240ba5}{get\+\_\+property\+\_\+handle} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name) const 
\item 
{\footnotesize template$<$class T $>$ }\\bool \hyperlink{a00324_a7386ce995a30d2f3fe49564759b97c63}{get\+\_\+property\+\_\+handle} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name) const 
\item 
{\footnotesize template$<$class T $>$ }\\bool \hyperlink{a00324_a4cec66d54bda2e92d34ed8097ce8267e}{get\+\_\+property\+\_\+handle} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name) const 
\item 
{\footnotesize template$<$class T $>$ }\\bool \hyperlink{a00324_a29e27f8ef9878079d0ee585822903f90}{get\+\_\+property\+\_\+handle} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \&\+\_\+ph, const std\+::string \&\+\_\+name) const 
\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Access a property}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a9c9dba28456c018fc967aa3deac2acca}{property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_ac01aad67d28b841a377f06308511f17f}{property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a980d00c1963b890321bb1a99d55c0275}{property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_aa8e3d10bd972dfb048b65ff361895eb9}{property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a44f14d20052503b4b49c2830ed308b39}{property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a17aa4c33b2aa3ab9c522134b5451e986}{property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_afb72501d3452b74df3971b59d182824c}{property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_a8256c16bf247547ae480344cd1c2ec2b}{mproperty} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\const \hyperlink{a01039}{Property\+T}$<$ T $>$ \& \hyperlink{a00324_abd85c41f01c4c1b997ce24c4232b3cf7}{mproperty} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}{\bf Access a property element using a handle to a mesh item}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$\+::reference \hyperlink{a00324_a788712239e2f3e298be65a61939e6db7}{property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a01426}{Vertex\+Handle} \+\_\+vh)
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$\+::const\+\_\+reference \hyperlink{a00324_a3931fbb29dd8db21354a58422dfe64c6}{property} (\hyperlink{a01470}{V\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a01426}{Vertex\+Handle} \+\_\+vh) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$\+::reference \hyperlink{a00324_aa308e3bd23356b6f90f3ea387a92e722}{property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh)
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$\+::const\+\_\+reference \hyperlink{a00324_a223eb3ae960398a76202126ada606d79}{property} (\hyperlink{a00710}{H\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00667}{Halfedge\+Handle} \+\_\+hh) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$\+::reference \hyperlink{a00324_a5d18c51ef506fb387a4cc8b4109b63f4}{property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00520}{Edge\+Handle} \+\_\+eh)
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$\+::const\+\_\+reference \hyperlink{a00324_ada80121525867ef7c45d4d3699f8e6b7}{property} (\hyperlink{a00543}{E\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00520}{Edge\+Handle} \+\_\+eh) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$\+::reference \hyperlink{a00324_a0a8c6cd2231f181de1d8a899f0018669}{property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00554}{Face\+Handle} \+\_\+fh)
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$\+::const\+\_\+reference \hyperlink{a00324_ac2d0b91f3d6cd33bffd40fdb396201e9}{property} (\hyperlink{a00598}{F\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph, \hyperlink{a00554}{Face\+Handle} \+\_\+fh) const 
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$\+::reference \hyperlink{a00324_a6212f4adf43f5d0db4cfeba208aa3936}{property} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph)
\item 
{\footnotesize template$<$class T $>$ }\\\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$\+::const\+\_\+reference \hyperlink{a00324_a8bba056168db15d9bd09a61017f53e7c}{property} (\hyperlink{a00865}{M\+Prop\+Handle\+T}$<$ T $>$ \+\_\+ph) const 
\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00324_aaefc620a9935d5043366ab8eddbabbbb}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+vprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h)}\label{a00324_aaefc620a9935d5043366ab8eddbabbbb}

\item 
\hypertarget{a00324_a77287e81a4ea3023e99c873ed1da2328}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+eprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h)}\label{a00324_a77287e81a4ea3023e99c873ed1da2328}

\item 
\hypertarget{a00324_a34070eba18aa15de41ab962e9f5c02d0}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+hprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h)}\label{a00324_a34070eba18aa15de41ab962e9f5c02d0}

\item 
\hypertarget{a00324_a2318a162448fc1eb741a34911e65234a}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+fprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h)}\label{a00324_a2318a162448fc1eb741a34911e65234a}

\item 
\hypertarget{a00324_a785279cdd11415d5eb0618d815fa777e}{\hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+mprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h)}\label{a00324_a785279cdd11415d5eb0618d815fa777e}

\item 
\hypertarget{a00324_ab553e098f5408791fc78b87840a02a96}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+vprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h) const }\label{a00324_ab553e098f5408791fc78b87840a02a96}

\item 
\hypertarget{a00324_ae1c520be335894403f874ab96d9c5cd9}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+eprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h) const }\label{a00324_ae1c520be335894403f874ab96d9c5cd9}

\item 
\hypertarget{a00324_a68361ebcaf8743b759656baca6fb86a8}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+hprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h) const }\label{a00324_a68361ebcaf8743b759656baca6fb86a8}

\item 
\hypertarget{a00324_a99b3ffec7cb243a0db3fa7607a74b97e}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+fprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h) const }\label{a00324_a99b3ffec7cb243a0db3fa7607a74b97e}

\item 
\hypertarget{a00324_a66ea22c73eb1210a585199f06a8785b9}{const \hyperlink{a00332}{Base\+Property} \& {\bfseries \+\_\+mprop} (\hyperlink{a00317}{Base\+Handle} \+\_\+h) const }\label{a00324_a66ea22c73eb1210a585199f06a8785b9}

\item 
\hypertarget{a00324_ae2f651eca3c349658f55fafea8ff314b}{void \hyperlink{a00324_ae2f651eca3c349658f55fafea8ff314b}{vprops\+\_\+reserve} (size\+\_\+t \+\_\+n) const }\label{a00324_ae2f651eca3c349658f55fafea8ff314b}

\begin{DoxyCompactList}\small\item\em Reserves space for {\ttfamily \+\_\+n} elements in all vertex property vectors. \end{DoxyCompactList}\item 
\hypertarget{a00324_a275545ba650483b38a07f0127fac1f04}{void \hyperlink{a00324_a275545ba650483b38a07f0127fac1f04}{vprops\+\_\+resize} (size\+\_\+t \+\_\+n) const }\label{a00324_a275545ba650483b38a07f0127fac1f04}

\begin{DoxyCompactList}\small\item\em Resizes all vertex property vectors to the specified size. \end{DoxyCompactList}\item 
void \hyperlink{a00324_af6d9e8b13d4dc50ea3ffe88ae0ab425d}{vprops\+\_\+resize\+\_\+if\+\_\+smaller} (size\+\_\+t \+\_\+n) const 
\item 
\hypertarget{a00324_a021928ea6c770f28ba684003fd9eaf89}{void {\bfseries vprops\+\_\+clear} ()}\label{a00324_a021928ea6c770f28ba684003fd9eaf89}

\item 
\hypertarget{a00324_a62dc7708aa50510bcf114f439f2f7335}{void {\bfseries vprops\+\_\+swap} (unsigned int \+\_\+i0, unsigned int \+\_\+i1) const }\label{a00324_a62dc7708aa50510bcf114f439f2f7335}

\item 
\hypertarget{a00324_a90d03b1beaceecccfbec166256675224}{void {\bfseries hprops\+\_\+reserve} (size\+\_\+t \+\_\+n) const }\label{a00324_a90d03b1beaceecccfbec166256675224}

\item 
\hypertarget{a00324_a11aef6688264d172d4f25ddad5b7ef5d}{void {\bfseries hprops\+\_\+resize} (size\+\_\+t \+\_\+n) const }\label{a00324_a11aef6688264d172d4f25ddad5b7ef5d}

\item 
\hypertarget{a00324_a052a0b3932376df7f470197c17db45a5}{void {\bfseries hprops\+\_\+clear} ()}\label{a00324_a052a0b3932376df7f470197c17db45a5}

\item 
\hypertarget{a00324_a5f3a0fe48050f6392d49390efe22e110}{void {\bfseries hprops\+\_\+swap} (unsigned int \+\_\+i0, unsigned int \+\_\+i1) const }\label{a00324_a5f3a0fe48050f6392d49390efe22e110}

\item 
\hypertarget{a00324_a3c96b9b518bc57c7f577f0aa96d316cb}{void {\bfseries eprops\+\_\+reserve} (size\+\_\+t \+\_\+n) const }\label{a00324_a3c96b9b518bc57c7f577f0aa96d316cb}

\item 
\hypertarget{a00324_ac281fa1d57dce7c04df903c1af3d5880}{void {\bfseries eprops\+\_\+resize} (size\+\_\+t \+\_\+n) const }\label{a00324_ac281fa1d57dce7c04df903c1af3d5880}

\item 
\hypertarget{a00324_ad0c5cbbca8314f6aab11494a2ed250fe}{void {\bfseries eprops\+\_\+clear} ()}\label{a00324_ad0c5cbbca8314f6aab11494a2ed250fe}

\item 
\hypertarget{a00324_a39265cc6d9483fb9d5940bd12601b20f}{void {\bfseries eprops\+\_\+swap} (unsigned int \+\_\+i0, unsigned int \+\_\+i1) const }\label{a00324_a39265cc6d9483fb9d5940bd12601b20f}

\item 
\hypertarget{a00324_ac580813004151ae3dcb8a746d191f4d3}{void {\bfseries fprops\+\_\+reserve} (size\+\_\+t \+\_\+n) const }\label{a00324_ac580813004151ae3dcb8a746d191f4d3}

\item 
\hypertarget{a00324_a4bf662b639694a26f3cc835561c3bd90}{void {\bfseries fprops\+\_\+resize} (size\+\_\+t \+\_\+n) const }\label{a00324_a4bf662b639694a26f3cc835561c3bd90}

\item 
\hypertarget{a00324_a68a6a66bde10be861d5178086ae32794}{void {\bfseries fprops\+\_\+clear} ()}\label{a00324_a68a6a66bde10be861d5178086ae32794}

\item 
\hypertarget{a00324_a8e831b998b816f5e0320922ccb57c1c9}{void {\bfseries fprops\+\_\+swap} (unsigned int \+\_\+i0, unsigned int \+\_\+i1) const }\label{a00324_a8e831b998b816f5e0320922ccb57c1c9}

\item 
\hypertarget{a00324_a9d80c62f2b47ed91a7f7142ad6e12e49}{void {\bfseries mprops\+\_\+resize} (size\+\_\+t \+\_\+n) const }\label{a00324_a9d80c62f2b47ed91a7f7142ad6e12e49}

\item 
\hypertarget{a00324_aa9c6aae4ea0c7f69460cda72e5071d8e}{void {\bfseries mprops\+\_\+clear} ()}\label{a00324_aa9c6aae4ea0c7f69460cda72e5071d8e}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00324_af385802f33a73380fb72fd5ad4d30fc2}{\hyperlink{a01028}{Property\+Container} {\bfseries vprops\+\_\+}}\label{a00324_af385802f33a73380fb72fd5ad4d30fc2}

\item 
\hypertarget{a00324_ae21dff031556ec6444d7f179e9ccec40}{\hyperlink{a01028}{Property\+Container} {\bfseries hprops\+\_\+}}\label{a00324_ae21dff031556ec6444d7f179e9ccec40}

\item 
\hypertarget{a00324_a7467b3e188cd12bb22756139958166ed}{\hyperlink{a01028}{Property\+Container} {\bfseries eprops\+\_\+}}\label{a00324_a7467b3e188cd12bb22756139958166ed}

\item 
\hypertarget{a00324_a1003262537f4b0b69c9a5d3afa87f46e}{\hyperlink{a01028}{Property\+Container} {\bfseries fprops\+\_\+}}\label{a00324_a1003262537f4b0b69c9a5d3afa87f46e}

\item 
\hypertarget{a00324_aa87e622b84f968751cbec9df8d623bd3}{\hyperlink{a01028}{Property\+Container} {\bfseries mprops\+\_\+}}\label{a00324_aa87e622b84f968751cbec9df8d623bd3}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
This class provides the basic property management like adding/removing properties and access to properties. All operations provided by Base\+Kernel need at least a property handle (\hyperlink{a01470}{V\+Prop\+Handle\+T}, \hyperlink{a00543}{E\+Prop\+Handle\+T}, \hyperlink{a00710}{H\+Prop\+Handle\+T}, \hyperlink{a00598}{F\+Prop\+Handle\+T}, \hyperlink{a00865}{M\+Prop\+Handle\+T}). which keeps the data type of the property, too.

There are two types of properties\+:
\begin{DoxyEnumerate}
\item Standard properties -\/ mesh data (e.\+g. vertex normal or face color)
\item Custom properties -\/ user defined data
\end{DoxyEnumerate}

The differentiation is only semantically, technically both are equally handled. Therefore the methods provided by the Base\+Kernel are applicable to both property types.

\begin{DoxyAttention}{Attention}
Since the class \hyperlink{a00994}{Poly\+Mesh\+T} derives from a kernel, hence all public elements of Base\+Kernel are usable. 
\end{DoxyAttention}


Definition at line 99 of file Base\+Kernel.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00324_a9930247356671a0ce4ceaef29b3c1a23}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!add\+\_\+property@{add\+\_\+property}}
\index{add\+\_\+property@{add\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{add\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::add\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name = {\ttfamily \char`\"{}$<$vprop$>$\char`\"{}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a9930247356671a0ce4ceaef29b3c1a23}
Adds a property

Depending on the property handle type a vertex, (half-\/)edge, face or mesh property is added to the mesh. If the action fails the handle is invalid. On success the handle must be used to access the property data with \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property()}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle defining the data type to bind to mesh. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Optional name of property. Following restrictions apply to the name\+:
\begin{DoxyEnumerate}
\item Maximum length of name is 256 characters
\item The prefixes matching \char`\"{}$^\wedge$\mbox{[}vhefm\mbox{]}\+:\char`\"{} are reserved for internal usage.
\item The expression \char`\"{}$^\wedge$$<$.$\ast$$>$\$\char`\"{} is reserved for internal usage. 
\end{DoxyEnumerate}\\
\hline
\end{DoxyParams}


Definition at line 138 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ae5f70a08d5f10b464847ce2b60074f98}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!add\+\_\+property@{add\+\_\+property}}
\index{add\+\_\+property@{add\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{add\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::add\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name = {\ttfamily \char`\"{}$<$hprop$>$\char`\"{}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ae5f70a08d5f10b464847ce2b60074f98}
Adds a property

Depending on the property handle type a vertex, (half-\/)edge, face or mesh property is added to the mesh. If the action fails the handle is invalid. On success the handle must be used to access the property data with \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property()}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle defining the data type to bind to mesh. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Optional name of property. Following restrictions apply to the name\+:
\begin{DoxyEnumerate}
\item Maximum length of name is 256 characters
\item The prefixes matching \char`\"{}$^\wedge$\mbox{[}vhefm\mbox{]}\+:\char`\"{} are reserved for internal usage.
\item The expression \char`\"{}$^\wedge$$<$.$\ast$$>$\$\char`\"{} is reserved for internal usage. 
\end{DoxyEnumerate}\\
\hline
\end{DoxyParams}


Definition at line 145 of file Base\+Kernel.\+hh.

\hypertarget{a00324_af45115b38d63fa76a8224bbab11106f8}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!add\+\_\+property@{add\+\_\+property}}
\index{add\+\_\+property@{add\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{add\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::add\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name = {\ttfamily \char`\"{}$<$eprop$>$\char`\"{}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_af45115b38d63fa76a8224bbab11106f8}
Adds a property

Depending on the property handle type a vertex, (half-\/)edge, face or mesh property is added to the mesh. If the action fails the handle is invalid. On success the handle must be used to access the property data with \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property()}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle defining the data type to bind to mesh. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Optional name of property. Following restrictions apply to the name\+:
\begin{DoxyEnumerate}
\item Maximum length of name is 256 characters
\item The prefixes matching \char`\"{}$^\wedge$\mbox{[}vhefm\mbox{]}\+:\char`\"{} are reserved for internal usage.
\item The expression \char`\"{}$^\wedge$$<$.$\ast$$>$\$\char`\"{} is reserved for internal usage. 
\end{DoxyEnumerate}\\
\hline
\end{DoxyParams}


Definition at line 152 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ae4198ef048f05f50604492532d40c608}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!add\+\_\+property@{add\+\_\+property}}
\index{add\+\_\+property@{add\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{add\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::add\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name = {\ttfamily \char`\"{}$<$fprop$>$\char`\"{}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ae4198ef048f05f50604492532d40c608}
Adds a property

Depending on the property handle type a vertex, (half-\/)edge, face or mesh property is added to the mesh. If the action fails the handle is invalid. On success the handle must be used to access the property data with \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property()}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle defining the data type to bind to mesh. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Optional name of property. Following restrictions apply to the name\+:
\begin{DoxyEnumerate}
\item Maximum length of name is 256 characters
\item The prefixes matching \char`\"{}$^\wedge$\mbox{[}vhefm\mbox{]}\+:\char`\"{} are reserved for internal usage.
\item The expression \char`\"{}$^\wedge$$<$.$\ast$$>$\$\char`\"{} is reserved for internal usage. 
\end{DoxyEnumerate}\\
\hline
\end{DoxyParams}


Definition at line 159 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a20fb6fd47031cf5cc337fadc9cf163a6}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!add\+\_\+property@{add\+\_\+property}}
\index{add\+\_\+property@{add\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{add\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::add\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name = {\ttfamily \char`\"{}$<$mprop$>$\char`\"{}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a20fb6fd47031cf5cc337fadc9cf163a6}
Adds a property

Depending on the property handle type a vertex, (half-\/)edge, face or mesh property is added to the mesh. If the action fails the handle is invalid. On success the handle must be used to access the property data with \hyperlink{a00324_a2e2f14b6f08ae63173594555e0c94d57}{property()}.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle defining the data type to bind to mesh. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Optional name of property. Following restrictions apply to the name\+:
\begin{DoxyEnumerate}
\item Maximum length of name is 256 characters
\item The prefixes matching \char`\"{}$^\wedge$\mbox{[}vhefm\mbox{]}\+:\char`\"{} are reserved for internal usage.
\item The expression \char`\"{}$^\wedge$$<$.$\ast$$>$\$\char`\"{} is reserved for internal usage. 
\end{DoxyEnumerate}\\
\hline
\end{DoxyParams}


Definition at line 166 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ab1b8cb02dfc4544f2762de962a2ce7ad}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}}
\index{copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+all\+\_\+properties}]{\setlength{\rightskip}{0pt plus 5cm}void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+all\+\_\+properties (
\begin{DoxyParamCaption}
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh\+\_\+from, }
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh\+\_\+to, }
\item[{bool}]{\+\_\+copy\+Build\+In = {\ttfamily false}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ab1b8cb02dfc4544f2762de962a2ce7ad}
Copies all properties from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+vh\+\_\+from} & A vertex handle -\/ source \\
\hline
{\em \+\_\+vh\+\_\+to} & A vertex handle -\/ target \\
\hline
{\em \+\_\+copy\+Build\+In} & Should the internal properties (position, normal, texture coordinate,..) be copied? \\
\hline
\end{DoxyParams}


Definition at line 476 of file Base\+Kernel.\+hh.

\hypertarget{a00324_abc7d6ef07804e9fa51acd045f44404ef}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}}
\index{copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+all\+\_\+properties}]{\setlength{\rightskip}{0pt plus 5cm}void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+all\+\_\+properties (
\begin{DoxyParamCaption}
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh\+\_\+from, }
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh\+\_\+to, }
\item[{bool}]{\+\_\+copy\+Build\+In = {\ttfamily false}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_abc7d6ef07804e9fa51acd045f44404ef}
Copies all properties from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+hh\+\_\+from} & A halfedge handle -\/ source \\
\hline
{\em \+\_\+hh\+\_\+to} & A halfedge handle -\/ target \\
\hline
{\em \+\_\+copy\+Build\+In} & Should the internal properties (position, normal, texture coordinate,..) be copied? \\
\hline
\end{DoxyParams}


Definition at line 495 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a677c217fd4439461dd3ecec6575040d3}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}}
\index{copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+all\+\_\+properties}]{\setlength{\rightskip}{0pt plus 5cm}void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+all\+\_\+properties (
\begin{DoxyParamCaption}
\item[{{\bf Edge\+Handle}}]{\+\_\+eh\+\_\+from, }
\item[{{\bf Edge\+Handle}}]{\+\_\+eh\+\_\+to, }
\item[{bool}]{\+\_\+copy\+Build\+In = {\ttfamily false}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a677c217fd4439461dd3ecec6575040d3}
Copies all properties from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+eh\+\_\+from} & An edge handle -\/ source \\
\hline
{\em \+\_\+eh\+\_\+to} & An edge handle -\/ target \\
\hline
{\em \+\_\+copy\+Build\+In} & Should the internal properties (position, normal, texture coordinate,..) be copied? \\
\hline
\end{DoxyParams}


Definition at line 514 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a82c6c4245ef28da6973ccde436121ef3}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}}
\index{copy\+\_\+all\+\_\+properties@{copy\+\_\+all\+\_\+properties}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+all\+\_\+properties}]{\setlength{\rightskip}{0pt plus 5cm}void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+all\+\_\+properties (
\begin{DoxyParamCaption}
\item[{{\bf Face\+Handle}}]{\+\_\+fh\+\_\+from, }
\item[{{\bf Face\+Handle}}]{\+\_\+fh\+\_\+to, }
\item[{bool}]{\+\_\+copy\+Build\+In = {\ttfamily false}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a82c6c4245ef28da6973ccde436121ef3}
Copies all properties from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+fh\+\_\+from} & A face handle -\/ source \\
\hline
{\em \+\_\+fh\+\_\+to} & A face handle -\/ target \\
\hline
{\em \+\_\+copy\+Build\+In} & Should the internal properties (position, normal, texture coordinate,..) be copied? \\
\hline
\end{DoxyParams}


Definition at line 533 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ae9277cd8341a7025951c3edd4961afef}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+property@{copy\+\_\+property}}
\index{copy\+\_\+property@{copy\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh\+\_\+from, }
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh\+\_\+to}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ae9277cd8341a7025951c3edd4961afef}
Copies a single property from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A vertex property handle \\
\hline
{\em \+\_\+vh\+\_\+from} & From vertex handle \\
\hline
{\em \+\_\+vh\+\_\+to} & To vertex handle \\
\hline
\end{DoxyParams}


Definition at line 424 of file Base\+Kernel.\+hh.

\hypertarget{a00324_afc29ef76edcd1f2bfe0cea4ad3e5f1cd}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+property@{copy\+\_\+property}}
\index{copy\+\_\+property@{copy\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh\+\_\+from, }
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh\+\_\+to}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_afc29ef76edcd1f2bfe0cea4ad3e5f1cd}
Copies a single property from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A halfedge property handle \\
\hline
{\em \+\_\+hh\+\_\+from} & From halfedge handle \\
\hline
{\em \+\_\+hh\+\_\+to} & To halfedge handle \\
\hline
\end{DoxyParams}


Definition at line 436 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a4b5fa77467c7d165a63445b899b44c63}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+property@{copy\+\_\+property}}
\index{copy\+\_\+property@{copy\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Edge\+Handle}}]{\+\_\+eh\+\_\+from, }
\item[{{\bf Edge\+Handle}}]{\+\_\+eh\+\_\+to}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a4b5fa77467c7d165a63445b899b44c63}
Copies a single property from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & An edge property handle \\
\hline
{\em \+\_\+eh\+\_\+from} & From edge handle \\
\hline
{\em \+\_\+eh\+\_\+to} & To edge handle \\
\hline
\end{DoxyParams}


Definition at line 448 of file Base\+Kernel.\+hh.

\hypertarget{a00324_af1f118544aefd742f86780d61394522b}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!copy\+\_\+property@{copy\+\_\+property}}
\index{copy\+\_\+property@{copy\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{copy\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::copy\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Face\+Handle}}]{\+\_\+fh\+\_\+from, }
\item[{{\bf Face\+Handle}}]{\+\_\+fh\+\_\+to}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_af1f118544aefd742f86780d61394522b}
Copies a single property from one mesh element to another (of the same type)


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A face property handle \\
\hline
{\em \+\_\+fh\+\_\+from} & From face handle \\
\hline
{\em \+\_\+fh\+\_\+to} & To face handle \\
\hline
\end{DoxyParams}


Definition at line 460 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a0b39577842612a2f7f7ba570a23755d5}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}}
\index{get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{get\+\_\+property\+\_\+handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ bool Open\+Mesh\+::\+Base\+Kernel\+::get\+\_\+property\+\_\+handle (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a0b39577842612a2f7f7ba570a23755d5}
Retrieves the handle to a named property by it's name.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Name of wanted property. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if such a named property is available, else {\ttfamily false}. 
\end{DoxyReturn}


Definition at line 243 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a4072206d125d790dd3869f92ee240ba5}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}}
\index{get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{get\+\_\+property\+\_\+handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ bool Open\+Mesh\+::\+Base\+Kernel\+::get\+\_\+property\+\_\+handle (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a4072206d125d790dd3869f92ee240ba5}
Retrieves the handle to a named property by it's name.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Name of wanted property. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if such a named property is available, else {\ttfamily false}. 
\end{DoxyReturn}


Definition at line 250 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a7386ce995a30d2f3fe49564759b97c63}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}}
\index{get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{get\+\_\+property\+\_\+handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ bool Open\+Mesh\+::\+Base\+Kernel\+::get\+\_\+property\+\_\+handle (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a7386ce995a30d2f3fe49564759b97c63}
Retrieves the handle to a named property by it's name.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Name of wanted property. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if such a named property is available, else {\ttfamily false}. 
\end{DoxyReturn}


Definition at line 257 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a4cec66d54bda2e92d34ed8097ce8267e}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}}
\index{get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{get\+\_\+property\+\_\+handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ bool Open\+Mesh\+::\+Base\+Kernel\+::get\+\_\+property\+\_\+handle (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a4cec66d54bda2e92d34ed8097ce8267e}
Retrieves the handle to a named property by it's name.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Name of wanted property. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if such a named property is available, else {\ttfamily false}. 
\end{DoxyReturn}


Definition at line 264 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a29e27f8ef9878079d0ee585822903f90}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}}
\index{get\+\_\+property\+\_\+handle@{get\+\_\+property\+\_\+handle}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{get\+\_\+property\+\_\+handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ bool Open\+Mesh\+::\+Base\+Kernel\+::get\+\_\+property\+\_\+handle (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph, }
\item[{const std\+::string \&}]{\+\_\+name}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a29e27f8ef9878079d0ee585822903f90}
Retrieves the handle to a named property by it's name.


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A property handle. On success the handle is valid else invalid. \\
\hline
{\em \+\_\+name} & Name of wanted property. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if such a named property is available, else {\ttfamily false}. 
\end{DoxyReturn}


Definition at line 271 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a8256c16bf247547ae480344cd1c2ec2b}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!mproperty@{mproperty}}
\index{mproperty@{mproperty}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{mproperty}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::mproperty (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a8256c16bf247547ae480344cd1c2ec2b}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 330 of file Base\+Kernel.\+hh.

\hypertarget{a00324_abd85c41f01c4c1b997ce24c4232b3cf7}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!mproperty@{mproperty}}
\index{mproperty@{mproperty}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{mproperty}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ const {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::mproperty (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_abd85c41f01c4c1b997ce24c4232b3cf7}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 334 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a2e2f14b6f08ae63173594555e0c94d57}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a2e2f14b6f08ae63173594555e0c94d57}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 294 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a9c9dba28456c018fc967aa3deac2acca}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ const {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a9c9dba28456c018fc967aa3deac2acca}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 298 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ac01aad67d28b841a377f06308511f17f}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ac01aad67d28b841a377f06308511f17f}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 303 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a980d00c1963b890321bb1a99d55c0275}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ const {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a980d00c1963b890321bb1a99d55c0275}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 307 of file Base\+Kernel.\+hh.

\hypertarget{a00324_aa8e3d10bd972dfb048b65ff361895eb9}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_aa8e3d10bd972dfb048b65ff361895eb9}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 312 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a44f14d20052503b4b49c2830ed308b39}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ const {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a44f14d20052503b4b49c2830ed308b39}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 316 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a17aa4c33b2aa3ab9c522134b5451e986}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a17aa4c33b2aa3ab9c522134b5451e986}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 321 of file Base\+Kernel.\+hh.

\hypertarget{a00324_afb72501d3452b74df3971b59d182824c}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ const {\bf Property\+T}$<$T$>$\& Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_afb72501d3452b74df3971b59d182824c}
Access a property

This method returns a reference to property. The property handle must be valid! The result is unpredictable if the handle is invalid!


\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & A {\itshape valid} (!) property handle. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The wanted property if the handle is valid. 
\end{DoxyReturn}


Definition at line 325 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a788712239e2f3e298be65a61939e6db7}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf V\+Prop\+Handle\+T}$<$T$>$\+::reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a788712239e2f3e298be65a61939e6db7}
Return value of property for an item 

Definition at line 350 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a3931fbb29dd8db21354a58422dfe64c6}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf V\+Prop\+Handle\+T}$<$T$>$\+::const\+\_\+reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Vertex\+Handle}}]{\+\_\+vh}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a3931fbb29dd8db21354a58422dfe64c6}
Return value of property for an item 

Definition at line 356 of file Base\+Kernel.\+hh.

\hypertarget{a00324_aa308e3bd23356b6f90f3ea387a92e722}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf H\+Prop\+Handle\+T}$<$T$>$\+::reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_aa308e3bd23356b6f90f3ea387a92e722}
Return value of property for an item 

Definition at line 363 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a223eb3ae960398a76202126ada606d79}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf H\+Prop\+Handle\+T}$<$T$>$\+::const\+\_\+reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Halfedge\+Handle}}]{\+\_\+hh}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a223eb3ae960398a76202126ada606d79}
Return value of property for an item 

Definition at line 369 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a5d18c51ef506fb387a4cc8b4109b63f4}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf E\+Prop\+Handle\+T}$<$T$>$\+::reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Edge\+Handle}}]{\+\_\+eh}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a5d18c51ef506fb387a4cc8b4109b63f4}
Return value of property for an item 

Definition at line 376 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ada80121525867ef7c45d4d3699f8e6b7}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf E\+Prop\+Handle\+T}$<$T$>$\+::const\+\_\+reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Edge\+Handle}}]{\+\_\+eh}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ada80121525867ef7c45d4d3699f8e6b7}
Return value of property for an item 

Definition at line 382 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a0a8c6cd2231f181de1d8a899f0018669}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf F\+Prop\+Handle\+T}$<$T$>$\+::reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Face\+Handle}}]{\+\_\+fh}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a0a8c6cd2231f181de1d8a899f0018669}
Return value of property for an item 

Definition at line 389 of file Base\+Kernel.\+hh.

\hypertarget{a00324_ac2d0b91f3d6cd33bffd40fdb396201e9}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf F\+Prop\+Handle\+T}$<$T$>$\+::const\+\_\+reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph, }
\item[{{\bf Face\+Handle}}]{\+\_\+fh}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_ac2d0b91f3d6cd33bffd40fdb396201e9}
Return value of property for an item 

Definition at line 395 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a6212f4adf43f5d0db4cfeba208aa3936}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf M\+Prop\+Handle\+T}$<$T$>$\+::reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a6212f4adf43f5d0db4cfeba208aa3936}
Return value of property for an item 

Definition at line 402 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a8bba056168db15d9bd09a61017f53e7c}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!property@{property}}
\index{property@{property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T $>$ {\bf M\+Prop\+Handle\+T}$<$T$>$\+::const\+\_\+reference Open\+Mesh\+::\+Base\+Kernel\+::property (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$}]{\+\_\+ph}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a8bba056168db15d9bd09a61017f53e7c}
Return value of property for an item 

Definition at line 408 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a1e6ab3a90a233ced3fef7a1575766c17}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!remove\+\_\+property@{remove\+\_\+property}}
\index{remove\+\_\+property@{remove\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{remove\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::remove\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf V\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a1e6ab3a90a233ced3fef7a1575766c17}
Remove a property.

Removes the property represented by the handle from the apropriate mesh item. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & Property to be removed. The handle is invalid afterwords. \\
\hline
\end{DoxyParams}


Definition at line 188 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a4dc56cf217a1a58782a5c65d8d590710}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!remove\+\_\+property@{remove\+\_\+property}}
\index{remove\+\_\+property@{remove\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{remove\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::remove\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf H\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a4dc56cf217a1a58782a5c65d8d590710}
Remove a property.

Removes the property represented by the handle from the apropriate mesh item. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & Property to be removed. The handle is invalid afterwords. \\
\hline
\end{DoxyParams}


Definition at line 196 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a0d525d1badf6c1dd6765630f1966b303}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!remove\+\_\+property@{remove\+\_\+property}}
\index{remove\+\_\+property@{remove\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{remove\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::remove\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf E\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a0d525d1badf6c1dd6765630f1966b303}
Remove a property.

Removes the property represented by the handle from the apropriate mesh item. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & Property to be removed. The handle is invalid afterwords. \\
\hline
\end{DoxyParams}


Definition at line 204 of file Base\+Kernel.\+hh.

\hypertarget{a00324_a6454b0639cd0d6768392237359f25829}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!remove\+\_\+property@{remove\+\_\+property}}
\index{remove\+\_\+property@{remove\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{remove\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::remove\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf F\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_a6454b0639cd0d6768392237359f25829}
Remove a property.

Removes the property represented by the handle from the apropriate mesh item. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & Property to be removed. The handle is invalid afterwords. \\
\hline
\end{DoxyParams}


Definition at line 212 of file Base\+Kernel.\+hh.

\hypertarget{a00324_aceeae93f3f0a51cd2323148fcbe7eed0}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!remove\+\_\+property@{remove\+\_\+property}}
\index{remove\+\_\+property@{remove\+\_\+property}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{remove\+\_\+property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void Open\+Mesh\+::\+Base\+Kernel\+::remove\+\_\+property (
\begin{DoxyParamCaption}
\item[{{\bf M\+Prop\+Handle\+T}$<$ T $>$ \&}]{\+\_\+ph}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{a00324_aceeae93f3f0a51cd2323148fcbe7eed0}
Remove a property.

Removes the property represented by the handle from the apropriate mesh item. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+ph} & Property to be removed. The handle is invalid afterwords. \\
\hline
\end{DoxyParams}


Definition at line 220 of file Base\+Kernel.\+hh.

\hypertarget{a00324_af6d9e8b13d4dc50ea3ffe88ae0ab425d}{\index{Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}!vprops\+\_\+resize\+\_\+if\+\_\+smaller@{vprops\+\_\+resize\+\_\+if\+\_\+smaller}}
\index{vprops\+\_\+resize\+\_\+if\+\_\+smaller@{vprops\+\_\+resize\+\_\+if\+\_\+smaller}!Open\+Mesh\+::\+Base\+Kernel@{Open\+Mesh\+::\+Base\+Kernel}}
\subsubsection[{vprops\+\_\+resize\+\_\+if\+\_\+smaller}]{\setlength{\rightskip}{0pt plus 5cm}void Open\+Mesh\+::\+Base\+Kernel\+::vprops\+\_\+resize\+\_\+if\+\_\+smaller (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{\+\_\+n}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{a00324_af6d9e8b13d4dc50ea3ffe88ae0ab425d}
Same as \hyperlink{a00324_a275545ba650483b38a07f0127fac1f04}{vprops\+\_\+resize()} but ignores vertex property vectors that have a size larger than {\ttfamily \+\_\+n}.

Use this method instead of \hyperlink{a00324_a275545ba650483b38a07f0127fac1f04}{vprops\+\_\+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. 

Definition at line 663 of file Base\+Kernel.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+Mesh/Base\+Kernel.\+hh\item 
libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+Mesh/Base\+Kernel.\+cc\end{DoxyCompactItemize}
