\hypertarget{classeo_invalidate_quad_op}{}\doxysection{eo\+Invalidate\+Quad\+Op$<$ E\+OT $>$ Class Template Reference} \label{classeo_invalidate_quad_op}\index{eoInvalidateQuadOp$<$ EOT $>$@{eoInvalidateQuadOp$<$ EOT $>$}} {\ttfamily \#include $<$eo\+Invalidate\+Ops.\+h$>$} Inheritance diagram for eo\+Invalidate\+Quad\+Op$<$ E\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classeo_invalidate_quad_op__inherit__graph} \end{center} \end{figure} Collaboration diagram for eo\+Invalidate\+Quad\+Op$<$ E\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classeo_invalidate_quad_op__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_invalidate_quad_op_a7546286f0386e3443277cd9537c4d848}\label{classeo_invalidate_quad_op_a7546286f0386e3443277cd9537c4d848}} {\bfseries eo\+Invalidate\+Quad\+Op} (\mbox{\hyperlink{classeo_quad_op}{eo\+Quad\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+op) \item \mbox{\Hypertarget{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}\label{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}} bool \mbox{\hyperlink{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}{operator()}} (\mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo1, \mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo2) \begin{DoxyCompactList}\small\item\em The pure virtual function that needs to be implemented by the subclass. \end{DoxyCompactList}\item \mbox{\Hypertarget{classeo_invalidate_quad_op_a7546286f0386e3443277cd9537c4d848}\label{classeo_invalidate_quad_op_a7546286f0386e3443277cd9537c4d848}} {\bfseries eo\+Invalidate\+Quad\+Op} (\mbox{\hyperlink{classeo_quad_op}{eo\+Quad\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+op) \item \mbox{\Hypertarget{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}\label{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}} bool \mbox{\hyperlink{classeo_invalidate_quad_op_a7907819a9b73cc1b0a655a6481f2d85b}{operator()}} (\mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo1, \mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo2) \begin{DoxyCompactList}\small\item\em The pure virtual function that needs to be implemented by the subclass. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class E\+OT$>$\newline class eo\+Invalidate\+Quad\+Op$<$ E\+O\+T $>$} One of the invalidator operators. Use this one as a \textquotesingle{}hat\textquotesingle{} on an operator that is defined to work on a generic datatype. This functor will then check the return type of the operator and invalidate the fitness of the individual. This functor is used in algorithms that work with straight \mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}, \mbox{\hyperlink{classeo_bin_op}{eo\+Bin\+Op}} or \mbox{\hyperlink{classeo_quad_op}{eo\+Quad\+Op}} operators, for instance \mbox{\hyperlink{classeo_s_g_a}{eo\+S\+GA}}. Note that \mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}} derived operators generally do invalidate the fitness of the objects they have changed. Return value means \char`\"{}\+Has\+\_\+\+Changed\char`\"{} and not \char`\"{}\+Needs\+\_\+\+To\+\_\+\+Be\+\_\+\+Invalidated\char`\"{} as successive invalidation are not really a problem The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item deprecated/eo/src/eo\+Invalidate\+Ops.\+h\end{DoxyCompactItemize}