\section{Basic\-Class\-Registry$<$ T $>$ Class Template Reference}
\label{class_basic_class_registry}\index{BasicClassRegistry@{BasicClassRegistry}}
{\tt \#include $<$Basic\-Class\-Registry.h$>$}

\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
{\bf Basic\-Class\-Registry} ()
\item 
{\bf $\sim$Basic\-Class\-Registry} ()
\item 
{\bf Basic\-Class\-Factory\-Base}$<$ T $>$ $\ast$ {\bf unregister\-Factory} (const std::string id)
\item 
void {\bf register\-Factory} ({\bf Basic\-Class\-Factory\-Base}$<$ T $>$ $\ast$factory, const std::string id)
\item 
Basic\-Smart\-Pointer$<$ T $>$ {\bf create} (const std::string id)
\end{CompactItemize}
\subsection*{Private Types}
\begin{CompactItemize}
\item 
typedef std::map$<$ std::string, {\bf Basic\-Class\-Factory\-Base}$<$ T $>$ $\ast$ $>$ {\bf factory\-Map\_\-t}
\end{CompactItemize}
\subsection*{Private Attributes}
\begin{CompactItemize}
\item 
{\bf factory\-Map\_\-t} {\bf factory\-Map}
\end{CompactItemize}
\subsubsection*{template$<$class T$>$ class Basic\-Class\-Registry$<$ T $>$}



\subsection{Member Typedef Documentation}
\index{BasicClassRegistry@{Basic\-Class\-Registry}!factoryMap_t@{factoryMap\_\-t}}
\index{factoryMap_t@{factoryMap\_\-t}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ typedef std::map$<$std::string, {\bf Basic\-Class\-Factory\-Base}$<$T$>$ $\ast$$>$ {\bf Basic\-Class\-Registry}$<$ T $>$::{\bf factory\-Map\_\-t}\hspace{0.3cm}{\tt  [private]}}\label{class_basic_class_registry_y0}




\subsection{Constructor \& Destructor Documentation}
\index{BasicClassRegistry@{Basic\-Class\-Registry}!BasicClassRegistry@{BasicClassRegistry}}
\index{BasicClassRegistry@{BasicClassRegistry}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ {\bf Basic\-Class\-Registry}$<$ T $>$::{\bf Basic\-Class\-Registry} ()\hspace{0.3cm}{\tt  [inline]}}\label{class_basic_class_registry_a0}


\index{BasicClassRegistry@{Basic\-Class\-Registry}!~BasicClassRegistry@{$\sim$BasicClassRegistry}}
\index{~BasicClassRegistry@{$\sim$BasicClassRegistry}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ {\bf Basic\-Class\-Registry}$<$ T $>$::$\sim${\bf Basic\-Class\-Registry} ()\hspace{0.3cm}{\tt  [inline]}}\label{class_basic_class_registry_a1}




\subsection{Member Function Documentation}
\index{BasicClassRegistry@{Basic\-Class\-Registry}!create@{create}}
\index{create@{create}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ Basic\-Smart\-Pointer$<$T$>$ {\bf Basic\-Class\-Registry}$<$ T $>$::create (const std::string {\em id})\hspace{0.3cm}{\tt  [inline]}}\label{class_basic_class_registry_a4}


\index{BasicClassRegistry@{Basic\-Class\-Registry}!registerFactory@{registerFactory}}
\index{registerFactory@{registerFactory}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ void {\bf Basic\-Class\-Registry}$<$ T $>$::register\-Factory ({\bf Basic\-Class\-Factory\-Base}$<$ T $>$ $\ast$ {\em factory}, const std::string {\em id})\hspace{0.3cm}{\tt  [inline]}}\label{class_basic_class_registry_a3}


\index{BasicClassRegistry@{Basic\-Class\-Registry}!unregisterFactory@{unregisterFactory}}
\index{unregisterFactory@{unregisterFactory}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ {\bf Basic\-Class\-Factory\-Base}$<$T$>$$\ast$ {\bf Basic\-Class\-Registry}$<$ T $>$::unregister\-Factory (const std::string {\em id})\hspace{0.3cm}{\tt  [inline]}}\label{class_basic_class_registry_a2}




\subsection{Member Data Documentation}
\index{BasicClassRegistry@{Basic\-Class\-Registry}!factoryMap@{factoryMap}}
\index{factoryMap@{factoryMap}!BasicClassRegistry@{Basic\-Class\-Registry}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ {\bf factory\-Map\_\-t} {\bf Basic\-Class\-Registry}$<$ T $>$::{\bf factory\-Map}\hspace{0.3cm}{\tt  [private]}}\label{class_basic_class_registry_r0}




The documentation for this class was generated from the following file:\begin{CompactItemize}
\item 
{\bf Basic\-Class\-Registry.h}\end{CompactItemize}
