\hypertarget{classeo_op_sel_mason}{}\doxysection{eo\+Op\+Sel\+Mason$<$ eo\+Class $>$ Class Template Reference} \label{classeo_op_sel_mason}\index{eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}} {\ttfamily \#include $<$eo\+Op\+Sel\+Mason.\+h$>$} Inheritance diagram for eo\+Op\+Sel\+Mason$<$ eo\+Class $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=230pt]{classeo_op_sel_mason__inherit__graph} \end{center} \end{figure} Collaboration diagram for eo\+Op\+Sel\+Mason$<$ eo\+Class $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=230pt]{classeo_op_sel_mason__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_op_sel_mason_ad7357b9e826358d8dbb4db2ef91c6322}\label{classeo_op_sel_mason_ad7357b9e826358d8dbb4db2ef91c6322}} typedef std\+::vector$<$ \mbox{\hyperlink{classeo_op}{eo\+Op}}$<$ eo\+Class $>$ $\ast$ $>$ {\bfseries v\+OpP} \item \mbox{\Hypertarget{classeo_op_sel_mason_a59ba1f555c3c7abffaf6b8bbe3e585a7}\label{classeo_op_sel_mason_a59ba1f555c3c7abffaf6b8bbe3e585a7}} typedef map$<$ eo\+Op\+Selector$<$ eo\+Class $>$ $\ast$, v\+OpP $>$ {\bfseries M\+EV} \item \mbox{\Hypertarget{classeo_op_sel_mason_ad7357b9e826358d8dbb4db2ef91c6322}\label{classeo_op_sel_mason_ad7357b9e826358d8dbb4db2ef91c6322}} typedef std\+::vector$<$ \mbox{\hyperlink{classeo_op}{eo\+Op}}$<$ eo\+Class $>$ $\ast$ $>$ {\bfseries v\+OpP} \item \mbox{\Hypertarget{classeo_op_sel_mason_a59ba1f555c3c7abffaf6b8bbe3e585a7}\label{classeo_op_sel_mason_a59ba1f555c3c7abffaf6b8bbe3e585a7}} typedef map$<$ eo\+Op\+Selector$<$ eo\+Class $>$ $\ast$, v\+OpP $>$ {\bfseries M\+EV} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{Indent}\textbf{ ctors and dtors}\par \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}\label{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}} \mbox{\hyperlink{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}{eo\+Op\+Sel\+Mason}} (eo\+Op\+Factory$<$ eo\+Class $>$ \&\+\_\+op\+Fact) \begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item \mbox{\Hypertarget{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}\label{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}} virtual \mbox{\hyperlink{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}{$\sim$eo\+Op\+Sel\+Mason}} () \begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item virtual eo\+Op\+Selector$<$ eo\+Class $>$ $\ast$ \mbox{\hyperlink{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}{make}} (std\+::istream \&\+\_\+is) \item \mbox{\Hypertarget{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}\label{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}} \mbox{\hyperlink{classeo_op_sel_mason_a971d777fe05745383711a8a78372eea8}{eo\+Op\+Sel\+Mason}} (eo\+Op\+Factory$<$ eo\+Class $>$ \&\+\_\+op\+Fact) \begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item \mbox{\Hypertarget{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}\label{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}} virtual \mbox{\hyperlink{classeo_op_sel_mason_ae6eeea23c88347806e49ec56f00dbf58}{$\sim$eo\+Op\+Sel\+Mason}} () \begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item virtual eo\+Op\+Selector$<$ eo\+Class $>$ $\ast$ \mbox{\hyperlink{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}{make}} (std\+::istream \&\+\_\+is) \end{DoxyCompactItemize} \end{Indent} \doxysubsection*{eo\+Object methods} \begin{DoxyCompactItemize} \item virtual std\+::string \mbox{\hyperlink{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}{class\+Name}} () const \item virtual std\+::string \mbox{\hyperlink{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}{class\+Name}} () const \end{DoxyCompactItemize} \doxysubsection{Detailed Description} \subsubsection*{template$<$class eo\+Class$>$\newline class eo\+Op\+Sel\+Mason$<$ eo\+Class $>$} \mbox{\hyperlink{class_e_o}{EO}} Mason, or builder, for operator selectors. A builder must allocate memory to the objects it builds, and then deallocate it when it gets out of scope \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}\label{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}} \index{eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}!className@{className}} \index{className@{className}!eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}} \doxysubsubsection{\texorpdfstring{className()}{className()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class eo\+Class $>$ \\ virtual std\+::string \mbox{\hyperlink{classeo_op_sel_mason}{eo\+Op\+Sel\+Mason}}$<$ eo\+Class $>$\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Return the class id Implements \mbox{\hyperlink{classeo_object_a1c02745db786e7bb46dea93b560fe685}{eo\+Object}}. \mbox{\Hypertarget{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}\label{classeo_op_sel_mason_a2100127b9ef128ea03b8c3f0043689fe}} \index{eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}!className@{className}} \index{className@{className}!eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}} \doxysubsubsection{\texorpdfstring{className()}{className()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class eo\+Class $>$ \\ virtual std\+::string \mbox{\hyperlink{classeo_op_sel_mason}{eo\+Op\+Sel\+Mason}}$<$ eo\+Class $>$\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Return the class id Implements \mbox{\hyperlink{classeo_object_a1c02745db786e7bb46dea93b560fe685}{eo\+Object}}. \mbox{\Hypertarget{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}\label{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}} \index{eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}!make@{make}} \index{make@{make}!eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}} \doxysubsubsection{\texorpdfstring{make()}{make()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class eo\+Class $>$ \\ virtual eo\+Op\+Selector$<$eo\+Class$>$$\ast$ \mbox{\hyperlink{classeo_op_sel_mason}{eo\+Op\+Sel\+Mason}}$<$ eo\+Class $>$\+::make (\begin{DoxyParamCaption}\item[{std\+::istream \&}]{\+\_\+is }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Factory methods\+: creates an object from an std\+::istream, reading from it whatever is needed to create the object. The format is op\+Sel\+Class\+Name\textbackslash{} rate 1 operator1\textbackslash{} rate 2 operator2\textbackslash{} ...\textbackslash{} Stores all operators built in a database (\#alloc\+Map\#), so that somebody can destroy them later. The Mason is in charge or destroying the operators, since the built object can{\ucr}t do it itself. The objects built must be destroyed from outside, using the \char`\"{}destroy\char`\"{} method Implements \mbox{\hyperlink{classeo_factory_ad72a5ae6dad84da6150ec9cf46800fba}{eo\+Factory$<$ eo\+Op\+Selector$<$ eo\+Class $>$ $>$}}. \mbox{\Hypertarget{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}\label{classeo_op_sel_mason_a7f77ed5366f118e9478464e3fc403761}} \index{eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}!make@{make}} \index{make@{make}!eoOpSelMason$<$ eoClass $>$@{eoOpSelMason$<$ eoClass $>$}} \doxysubsubsection{\texorpdfstring{make()}{make()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class eo\+Class $>$ \\ virtual eo\+Op\+Selector$<$eo\+Class$>$$\ast$ \mbox{\hyperlink{classeo_op_sel_mason}{eo\+Op\+Sel\+Mason}}$<$ eo\+Class $>$\+::make (\begin{DoxyParamCaption}\item[{std\+::istream \&}]{\+\_\+is }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Factory methods\+: creates an object from an std\+::istream, reading from it whatever is needed to create the object. The format is op\+Sel\+Class\+Name\textbackslash{} rate 1 operator1\textbackslash{} rate 2 operator2\textbackslash{} ...\textbackslash{} Stores all operators built in a database (\#alloc\+Map\#), so that somebody can destroy them later. The Mason is in charge or destroying the operators, since the built object canīt do it itself. The objects built must be destroyed from outside, using the \char`\"{}destroy\char`\"{} method Implements \mbox{\hyperlink{classeo_factory_ad72a5ae6dad84da6150ec9cf46800fba}{eo\+Factory$<$ eo\+Op\+Selector$<$ eo\+Class $>$ $>$}}. The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item deprecated/eo/src/eo\+Op\+Sel\+Mason.\+h\end{DoxyCompactItemize}