139 lines
12 KiB
TeX
139 lines
12 KiB
TeX
\hypertarget{classeo_perf2_worth_cached}{}\doxysection{eo\+Perf2\+Worth\+Cached$<$ E\+OT, WorthT $>$ Class Template Reference}
|
|
\label{classeo_perf2_worth_cached}\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$eo\+Perf2\+Worth.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for eo\+Perf2\+Worth\+Cached$<$ E\+OT, WorthT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classeo_perf2_worth_cached__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for eo\+Perf2\+Worth\+Cached$<$ E\+OT, WorthT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classeo_perf2_worth_cached__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Classes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
class \mbox{\hyperlink{classeo_perf2_worth_cached_1_1compare__worth}{compare\+\_\+worth}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a125a913ad2eaa585d5d093adaaf0848c}\label{classeo_perf2_worth_cached_a125a913ad2eaa585d5d093adaaf0848c}}
|
|
{\bfseries eo\+Perf2\+Worth\+Cached} (std\+::string \+\_\+description=\char`\"{}Worths\char`\"{})
|
|
\item
|
|
void \mbox{\hyperlink{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}{operator()}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}{calculate\+\_\+worths}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)=0
|
|
\item
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}{sort\+\_\+pop}} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)
|
|
\item
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a0f898a180fc8ef3a2875b97c6c5e294d}\label{classeo_perf2_worth_cached_a0f898a180fc8ef3a2875b97c6c5e294d}}
|
|
virtual void {\bfseries resize} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop, unsigned sz)
|
|
\item
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a125a913ad2eaa585d5d093adaaf0848c}\label{classeo_perf2_worth_cached_a125a913ad2eaa585d5d093adaaf0848c}}
|
|
{\bfseries eo\+Perf2\+Worth\+Cached} (std\+::string \+\_\+description=\char`\"{}Worths\char`\"{})
|
|
\item
|
|
void \mbox{\hyperlink{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}{operator()}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}{calculate\+\_\+worths}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)=0
|
|
\item
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}{sort\+\_\+pop}} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop)
|
|
\item
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a0f898a180fc8ef3a2875b97c6c5e294d}\label{classeo_perf2_worth_cached_a0f898a180fc8ef3a2875b97c6c5e294d}}
|
|
virtual void {\bfseries resize} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+pop, unsigned sz)
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Additional Inherited Members}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$class E\+OT, class WorthT = typename E\+O\+T\+::\+Fitness$>$\newline
|
|
class eo\+Perf2\+Worth\+Cached$<$ E\+O\+T, Worth\+T $>$}
|
|
|
|
Perf2\+Worth with fitness cache
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}\label{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!calculate\_worths@{calculate\_worths}}
|
|
\index{calculate\_worths@{calculate\_worths}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{calculate\_worths()}{calculate\_worths()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::calculate\+\_\+worths (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
|
|
|
|
The actual virtual function the derived classes should implement
|
|
|
|
Implemented in \mbox{\hyperlink{struct_cached_perf2_worth_wrapper_a2767e21cb2991c17037a0c963506dd99}{Cached\+Perf2\+Worth\+Wrapper}}, \mbox{\hyperlink{struct_cached_perf2_worth_wrapper_a2767e21cb2991c17037a0c963506dd99}{Cached\+Perf2\+Worth\+Wrapper}}, \mbox{\hyperlink{classeo_n_d_sorting_a13922491ae784f95d810a7467d3a347d}{eo\+N\+D\+Sorting$<$ E\+O\+T $>$}}, and \mbox{\hyperlink{classeo_n_d_sorting_a13922491ae784f95d810a7467d3a347d}{eo\+N\+D\+Sorting$<$ E\+O\+T $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}\label{classeo_perf2_worth_cached_a59e76220acec2cd4ddd2860c4b48d3f8}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!calculate\_worths@{calculate\_worths}}
|
|
\index{calculate\_worths@{calculate\_worths}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{calculate\_worths()}{calculate\_worths()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::calculate\+\_\+worths (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
|
|
|
|
The actual virtual function the derived classes should implement
|
|
|
|
Implemented in \mbox{\hyperlink{struct_cached_perf2_worth_wrapper_a2767e21cb2991c17037a0c963506dd99}{Cached\+Perf2\+Worth\+Wrapper}}, \mbox{\hyperlink{struct_cached_perf2_worth_wrapper_a2767e21cb2991c17037a0c963506dd99}{Cached\+Perf2\+Worth\+Wrapper}}, \mbox{\hyperlink{classeo_n_d_sorting_a13922491ae784f95d810a7467d3a347d}{eo\+N\+D\+Sorting$<$ E\+O\+T $>$}}, and \mbox{\hyperlink{classeo_n_d_sorting_a13922491ae784f95d810a7467d3a347d}{eo\+N\+D\+Sorting$<$ E\+O\+T $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}\label{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::operator() (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Implementation of the operator(), updating a cache of fitnesses. Calls the virtual function calculate\+\_\+worths when one of the fitnesses has changed. It is not virtual, but derived classes can remove the fitness caching trough the third template element
|
|
|
|
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ const eo\+Pop$<$ E\+O\+T $>$ \&, void $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}\label{classeo_perf2_worth_cached_a20cce0d59283c68b5b27fe9b6d3038b9}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::operator() (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Implementation of the operator(), updating a cache of fitnesses. Calls the virtual function calculate\+\_\+worths when one of the fitnesses has changed. It is not virtual, but derived classes can remove the fitness caching trough the third template element
|
|
|
|
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ const eo\+Pop$<$ E\+O\+T $>$ \&, void $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}\label{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!sort\_pop@{sort\_pop}}
|
|
\index{sort\_pop@{sort\_pop}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{sort\_pop()}{sort\_pop()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::sort\+\_\+pop (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Sort population according to worth, will keep the worths and fitness\+\_\+cache in sync with the population.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classeo_perf2_worth_af5131552bee000db94d29c08ac4e1af4}{eo\+Perf2\+Worth$<$ E\+O\+T, typename E\+O\+T\+::\+Fitness $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}\label{classeo_perf2_worth_cached_a0a9a0a0f34ac8a399a842773f5a395dd}}
|
|
\index{eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}!sort\_pop@{sort\_pop}}
|
|
\index{sort\_pop@{sort\_pop}!eoPerf2WorthCached$<$ EOT, WorthT $>$@{eoPerf2WorthCached$<$ EOT, WorthT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{sort\_pop()}{sort\_pop()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT , class WorthT = typename E\+O\+T\+::\+Fitness$>$ \\
|
|
virtual void \mbox{\hyperlink{classeo_perf2_worth_cached}{eo\+Perf2\+Worth\+Cached}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}}, WorthT $>$\+::sort\+\_\+pop (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Sort population according to worth, will keep the worths and fitness\+\_\+cache in sync with the population.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classeo_perf2_worth_af5131552bee000db94d29c08ac4e1af4}{eo\+Perf2\+Worth$<$ E\+O\+T, typename E\+O\+T\+::\+Fitness $>$}}.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
deprecated/eo/src/eo\+Perf2\+Worth.\+h\end{DoxyCompactItemize}
|