\hypertarget{class_ogre_1_1_linear_controller_function}{}\doxysection{Ogre\+::Linear\+Controller\+Function Class Reference}
\label{class_ogre_1_1_linear_controller_function}\index{Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}}


Predefined controller function based on linear function interpolation.  




{\ttfamily \#include $<$Ogre\+Predefined\+Controllers.\+h$>$}



Inheritance diagram for Ogre\+::Linear\+Controller\+Function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=245pt]{class_ogre_1_1_linear_controller_function__inherit__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_ogre_1_1_linear_controller_function_adbca11486df441a2c2d667db312f7565}{Linear\+Controller\+Function}} (const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&keys, const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&values, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} frequency=1, bool delta\+Input=true)
\item 
\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} \mbox{\hyperlink{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}{calculate}} (\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} source)
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{group___general_gafa8597a66f145eabb45e932f28fbb0b8}{Controller\+Function\+Real\+Ptr}} \mbox{\hyperlink{class_ogre_1_1_linear_controller_function_a31e3af56ae19d94ee1ba822b28f6362c}{create}} (const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&keys, const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&values, \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} frequency=1, bool delta\+Input=true)
\begin{DoxyCompactList}\small\item\em Constructor, requires keys and values of the function to interpolate. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Predefined controller function based on linear function interpolation. 

\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_linear_controller_function_adbca11486df441a2c2d667db312f7565}\label{class_ogre_1_1_linear_controller_function_adbca11486df441a2c2d667db312f7565}} 
\index{Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}!LinearControllerFunction@{LinearControllerFunction}}
\index{LinearControllerFunction@{LinearControllerFunction}!Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}}
\doxysubsubsection{\texorpdfstring{LinearControllerFunction()}{LinearControllerFunction()}}
{\footnotesize\ttfamily Ogre\+::\+Linear\+Controller\+Function\+::\+Linear\+Controller\+Function (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&}]{keys,  }\item[{const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&}]{values,  }\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{frequency = {\ttfamily 1},  }\item[{bool}]{delta\+Input = {\ttfamily true} }\end{DoxyParamCaption})}

\begin{DoxyRefDesc}{Deprecated}
\item[\mbox{\hyperlink{deprecated__deprecated000110}{Deprecated}}]use \mbox{\hyperlink{class_ogre_1_1_linear_controller_function_a31e3af56ae19d94ee1ba822b28f6362c}{create()}} \end{DoxyRefDesc}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_linear_controller_function_a31e3af56ae19d94ee1ba822b28f6362c}\label{class_ogre_1_1_linear_controller_function_a31e3af56ae19d94ee1ba822b28f6362c}} 
\index{Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}!create@{create}}
\index{create@{create}!Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}}
\doxysubsubsection{\texorpdfstring{create()}{create()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{group___general_gafa8597a66f145eabb45e932f28fbb0b8}{Controller\+Function\+Real\+Ptr}} Ogre\+::\+Linear\+Controller\+Function\+::create (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&}]{keys,  }\item[{const std\+::vector$<$ \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} $>$ \&}]{values,  }\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{frequency = {\ttfamily 1},  }\item[{bool}]{delta\+Input = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Constructor, requires keys and values of the function to interpolate. 


\begin{DoxyParams}{Parameters}
{\em keys} & the x-\/values of the function sampling points. Value range is \mbox{[}0,1\mbox{]}. Must include at least the keys 0 and 1. \\
\hline
\end{DoxyParams}
\begin{DoxyRemark}{Remarks}
for simplicity and compability with the predefined \mbox{\hyperlink{class_ogre_1_1_controller_value}{Controller\+Value}} classes the function range is limited to \mbox{[}0,1\mbox{]}. However you can use the frequency parameter to rescale the input key values. 
\end{DoxyRemark}

\begin{DoxyParams}{Parameters}
{\em values} & the function values f(x) of the function. order must match keys \\
\hline
\end{DoxyParams}
\begin{DoxyRemark}{Remarks}
there must be the same amount of keys and values 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}\label{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}} 
\index{Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}!calculate@{calculate}}
\index{calculate@{calculate}!Ogre::LinearControllerFunction@{Ogre::LinearControllerFunction}}
\doxysubsubsection{\texorpdfstring{calculate()}{calculate()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}} Ogre\+::\+Linear\+Controller\+Function\+::calculate (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}}]{source }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Implements \mbox{\hyperlink{class_ogre_1_1_controller_function_a0f77d037a78ce3b430c0a18fbe711df0}{Ogre\+::\+Controller\+Function$<$ Real $>$}}.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{_ogre_predefined_controllers_8h}{Ogre\+Predefined\+Controllers.\+h}}\end{DoxyCompactItemize}
