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


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=244pt]{class_ogre_1_1_linear_controller_function__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_ogre_1_1_linear_controller_function_adbca11486df441a2c2d667db312f7565}{Linear\+Controller\+Function} (const std\+::vector$<$ \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} $>$ \&keys, const std\+::vector$<$ \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} $>$ \&values, \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}\item 
\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} \hyperlink{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}{calculate} (\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} source)
\begin{DoxyCompactList}\small\item\em Overridden function. \end{DoxyCompactList}\end{DoxyCompactItemize}


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

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



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 \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}


\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}\label{class_ogre_1_1_linear_controller_function_a1769b1d5229c04ba7049002d5a4c9b5f}} 
\index{Ogre\+::\+Linear\+Controller\+Function@{Ogre\+::\+Linear\+Controller\+Function}!calculate@{calculate}}
\index{calculate@{calculate}!Ogre\+::\+Linear\+Controller\+Function@{Ogre\+::\+Linear\+Controller\+Function}}
\subsubsection{\texorpdfstring{calculate()}{calculate()}}
{\footnotesize\ttfamily \hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real} Ogre\+::\+Linear\+Controller\+Function\+::calculate (\begin{DoxyParamCaption}\item[{\hyperlink{namespace_ogre_aa3a7b6dfb905e6572d62f0dfa3d4274d}{Real}}]{source }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Overridden function. 



Implements \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 
\hyperlink{_ogre_predefined_controllers_8h}{Ogre\+Predefined\+Controllers.\+h}\end{DoxyCompactItemize}
