Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Ogre::WaveformControllerFunction Class Reference

Predefined controller function based on a waveform. More...

#include <OgrePredefinedControllers.h>

Inheritance diagram for Ogre::WaveformControllerFunction:

Ogre::ControllerFunction< Real > List of all members.

Public Member Functions

 WaveformControllerFunction (WaveformType wType, Real base=0, Real frequency=1, Real phase=0, Real amplitude=1, bool deltaInput=true, Real dutyCycle=0.5)
 Default contructor, requires at least a wave type, other parameters can be defaulted unless required.

Real calculate (Real source)
 Overriden function.


Protected Member Functions

Real getAdjustedInput (Real input)
 Overridden from ControllerFunction.


Protected Attributes

WaveformType mWaveType
Real mBase
Real mFrequency
Real mPhase
Real mAmplitude
Real mDutyCycle
bool mDeltaInput
 If true, function will add imput values together and wrap at 1.0 before evaluating.

Real mDeltaCount

Detailed Description

Predefined controller function based on a waveform.

Remarks:
A waveform function translates parametric intput to parametric output based on a wave. The factors affecting the function are:
Note that for simplicity of integration with the rest of the controller insfrastructure, the output of the wave is parametric i.e. 0..1, rather than the typical wave output of [-1,1]. To compensate for this, the traditional output of the wave is scaled by the following function before output:
output = (waveoutput + 1) * 0.5
Hence a wave output of -1 becomes 0, a wave ouput of 1 becomes 1, and a wave output of 0 becomes 0.5.

Definition at line 244 of file OgrePredefinedControllers.h.


Constructor & Destructor Documentation

Ogre::WaveformControllerFunction::WaveformControllerFunction WaveformType  wType,
Real  base = 0,
Real  frequency = 1,
Real  phase = 0,
Real  amplitude = 1,
bool  deltaInput = true,
Real  dutyCycle = 0.5
 

Default contructor, requires at least a wave type, other parameters can be defaulted unless required.

Parameters:
deltaInput If true, signifies that the input will be a delta value such that the function should add it to an internal counter before calculating the output.
dutyCycle Used in PWM mode to specify the pulse width.


Member Function Documentation

Real Ogre::WaveformControllerFunction::calculate Real  source  )  [virtual]
 

Overriden function.

Implements Ogre::ControllerFunction< Real >.

Real Ogre::WaveformControllerFunction::getAdjustedInput Real  input  )  [protected]
 

Overridden from ControllerFunction.

Reimplemented from Ogre::ControllerFunction< Real >.


Member Data Documentation

Real Ogre::WaveformControllerFunction::mAmplitude [protected]
 

Definition at line 251 of file OgrePredefinedControllers.h.

Real Ogre::WaveformControllerFunction::mBase [protected]
 

Definition at line 248 of file OgrePredefinedControllers.h.

Real Ogre::ControllerFunction< Real >::mDeltaCount [protected, inherited]
 

Definition at line 52 of file OgreController.h.

bool Ogre::ControllerFunction< Real >::mDeltaInput [protected, inherited]
 

If true, function will add imput values together and wrap at 1.0 before evaluating.

Definition at line 51 of file OgreController.h.

Real Ogre::WaveformControllerFunction::mDutyCycle [protected]
 

Definition at line 252 of file OgrePredefinedControllers.h.

Real Ogre::WaveformControllerFunction::mFrequency [protected]
 

Definition at line 249 of file OgrePredefinedControllers.h.

Real Ogre::WaveformControllerFunction::mPhase [protected]
 

Definition at line 250 of file OgrePredefinedControllers.h.

WaveformType Ogre::WaveformControllerFunction::mWaveType [protected]
 

Definition at line 247 of file OgrePredefinedControllers.h.


The documentation for this class was generated from the following file:

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:41:45 2006