\hypertarget{a01038}{\section{Open\+Volume\+Mesh\+:\+:Property\+Ptr$<$ Prop\+T, Handle\+T $>$ Class Template Reference}
\label{a01038}\index{Open\+Volume\+Mesh\+::\+Property\+Ptr$<$ Prop\+T, Handle\+T $>$@{Open\+Volume\+Mesh\+::\+Property\+Ptr$<$ Prop\+T, Handle\+T $>$}}
}


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

Inheritance diagram for Open\+Volume\+Mesh\+:\+:Property\+Ptr$<$ Prop\+T, Handle\+T $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=12.000000cm]{a01038}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01038_a5671985b4289a7fc3361c746d67ac4a4}{typedef Prop\+T\+::value\+\_\+type {\bfseries value\+\_\+type}}\label{a01038_a5671985b4289a7fc3361c746d67ac4a4}

\item 
\hypertarget{a01038_a486562efe97fb5edc579c10b9ee635e8}{typedef \\*
Prop\+T\+::vector\+\_\+type\+::const\+\_\+iterator {\bfseries const\+\_\+iterator}}\label{a01038_a486562efe97fb5edc579c10b9ee635e8}

\item 
\hypertarget{a01038_a87fa73153ca4619041ad4121a276a9a0}{typedef \\*
Prop\+T\+::vector\+\_\+type\+::iterator {\bfseries iterator}}\label{a01038_a87fa73153ca4619041ad4121a276a9a0}

\item 
\hypertarget{a01038_a16cb14daa542b5e1b02fdce52791b3b3}{typedef Prop\+T\+::reference {\bfseries reference}}\label{a01038_a16cb14daa542b5e1b02fdce52791b3b3}

\item 
\hypertarget{a01038_af99ad1265822a5c245b30599f330f456}{typedef Prop\+T\+::const\+\_\+reference {\bfseries const\+\_\+reference}}\label{a01038_af99ad1265822a5c245b30599f330f456}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01038_aa6b6de21690cfd4e72d1ee7c8905bafe}{\hyperlink{a01038_aa6b6de21690cfd4e72d1ee7c8905bafe}{Property\+Ptr} (Prop\+T $\ast$\+\_\+ptr, \hyperlink{a01116}{Resource\+Manager} \&\+\_\+res\+Man, Handle\+T \+\_\+handle)}\label{a01038_aa6b6de21690cfd4e72d1ee7c8905bafe}

\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
\hypertarget{a01038_a5c4d799a0b73bc2d4b4a763ac4464b5c}{virtual \hyperlink{a01038_a5c4d799a0b73bc2d4b4a763ac4464b5c}{$\sim$\+Property\+Ptr} ()}\label{a01038_a5c4d799a0b73bc2d4b4a763ac4464b5c}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\hypertarget{a01038_ab43ce6a63a05c2c32e9085adbc813a8d}{virtual const std\+::string \& {\bfseries name} () const }\label{a01038_ab43ce6a63a05c2c32e9085adbc813a8d}

\item 
\hypertarget{a01038_a85f57544c2b8f4f693699b516ba2d21e}{virtual void {\bfseries delete\+\_\+element} (size\+\_\+t \+\_\+idx)}\label{a01038_a85f57544c2b8f4f693699b516ba2d21e}

\item 
\hypertarget{a01038_ad71b8bcd0fd3b4633286cc2fa74fec01}{virtual void {\bfseries swap\+\_\+elements} (size\+\_\+t \+\_\+idx0, size\+\_\+t \+\_\+idx1)}\label{a01038_ad71b8bcd0fd3b4633286cc2fa74fec01}

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

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

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

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

\item 
\hypertarget{a01038_ac973ecefd6b31197a0c9946e0af53a02}{reference {\bfseries operator\mbox{[}$\,$\mbox{]}} (size\+\_\+t \+\_\+idx)}\label{a01038_ac973ecefd6b31197a0c9946e0af53a02}

\item 
\hypertarget{a01038_af43350709a09242c1d81a3ded2fa7dc5}{const\+\_\+reference {\bfseries operator\mbox{[}$\,$\mbox{]}} (size\+\_\+t \+\_\+idx) const }\label{a01038_af43350709a09242c1d81a3ded2fa7dc5}

\item 
\hypertarget{a01038_a42a4238dddd70c5ef4554aed254973e7}{reference {\bfseries operator\mbox{[}$\,$\mbox{]}} (const \hyperlink{a00932}{Open\+Volume\+Mesh\+Handle} \&\+\_\+h)}\label{a01038_a42a4238dddd70c5ef4554aed254973e7}

\item 
\hypertarget{a01038_aceed80b04340f15d6b8d3bb8457d4a52}{const\+\_\+reference {\bfseries operator\mbox{[}$\,$\mbox{]}} (const \hyperlink{a00932}{Open\+Volume\+Mesh\+Handle} \&\+\_\+h) const }\label{a01038_aceed80b04340f15d6b8d3bb8457d4a52}

\item 
\hypertarget{a01038_a21acbf971e200232cf5a39a95bb122de}{virtual \hyperlink{a00932}{Open\+Volume\+Mesh\+Handle} {\bfseries handle} () const }\label{a01038_a21acbf971e200232cf5a39a95bb122de}

\item 
\hypertarget{a01038_afe826be1bb868ed9425977dfc1d5066a}{virtual bool {\bfseries persistent} () const }\label{a01038_afe826be1bb868ed9425977dfc1d5066a}

\item 
\hypertarget{a01038_ae300ff710b84fa0df81d12bcd074e512}{virtual bool {\bfseries anonymous} () const }\label{a01038_ae300ff710b84fa0df81d12bcd074e512}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01038_a7d083156461eee1a0eb53d26fdec9a57}{virtual void {\bfseries delete\+\_\+multiple\+\_\+entries} (const std\+::vector$<$ bool $>$ \&\+\_\+tags)}\label{a01038_a7d083156461eee1a0eb53d26fdec9a57}

\item 
\hypertarget{a01038_aaa5989aeba87415839617686616e2267}{virtual void {\bfseries resize} (unsigned int \+\_\+size)}\label{a01038_aaa5989aeba87415839617686616e2267}

\item 
\hypertarget{a01038_a88652d1120da4e346e33935060b849bb}{virtual void {\bfseries set\+\_\+handle} (const \hyperlink{a00932}{Open\+Volume\+Mesh\+Handle} \&\+\_\+handle)}\label{a01038_a88652d1120da4e346e33935060b849bb}

\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01038_a54c1252abc87a78a301e6b6984470408}{class {\bfseries Resource\+Manager}}\label{a01038_a54c1252abc87a78a301e6b6984470408}

\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
\subsubsection*{template$<$class Prop\+T, class Handle\+T$>$class Open\+Volume\+Mesh\+::\+Property\+Ptr$<$ Prop\+T, Handle\+T $>$}

A smart-\/pointer-\/like class that counts the encapsulated object's references and automatically deletes the memory as soon as the object is not used anymore. 

Definition at line 65 of file Property\+Ptr.\+hh.



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