41 #ifndef GLS_LINEAR_FLOAT_CONTROLLER_H_INCLUDED
42 #define GLS_LINEAR_FLOAT_CONTROLLER_H_INCLUDED
48 #if( defined( GLSGEN_EXPORT_GLSADVANCEDMESH ) || defined( GLSGEN_IMPORT_GLSADVANCEDMESH ) || defined( GLS_EXPORT_GENERATED ) || defined( GLS_IMPORT_GENERATED ) ) \
49 && defined( _MSC_VER )
50 # if defined( GLSGEN_EXPORT_GLSADVANCEDMESH ) || defined( GLS_EXPORT_GENERATED )
51 # define GLSGEN_GlsLinearFloatController_EXPORT __declspec( dllexport )
53 # define GLSGEN_GlsLinearFloatController_EXPORT __declspec( dllimport )
56 # define GLSGEN_GlsLinearFloatController_EXPORT
60 #define LIB_BASE_NAME "gls_advanced_mesh"
89 friend class GlsLinearFloatControllerEditor;
101 GLSGEN_GlsLinearFloatController_EXPORT GlsLinearFloatController(
const GlsLinearFloatController& that,
const bool generateNames );
103 virtual GLSGEN_GlsLinearFloatController_EXPORT ~GlsLinearFloatController();
105 static GLSGEN_GlsLinearFloatController_EXPORT
DisplayObject* CreateInstance();
121 virtual GLSGEN_GlsLinearFloatController_EXPORT
void Draw(
void );
125 virtual GLSGEN_GlsLinearFloatController_EXPORT
bool Hit(
float x,
float y,
float z,
float scale,
const Vector& directionVector,
Vector* collisionPoint );
129 virtual GLSGEN_GlsLinearFloatController_EXPORT
float GetOutputForInput(
float input );
148 inline void SetInputValue(
float value ) { _input = value; }
149 inline float GetInputValue()
const {
return _input; }
151 inline void SetOutputValue(
float value ) { _output = value; }
152 inline float GetOutputValue()
const {
return _output; }
158 inline KeyArrayType& KeyArray() {
return _keyArray; }
168 GLSGEN_GlsLinearFloatController_EXPORT
void FindFirstPathSegmentContainingValue(
float value,
int* index1,
int* index2 );
174 GLSGEN_GlsLinearFloatController_EXPORT
void InitializeKeys(
unsigned int numKeys,
const float* keyPairArray );
180 virtual GLSGEN_GlsLinearFloatController_EXPORT
void SetFromGloData(
GlsGloFileAttribute& data );
184 KeyArrayType _keyArray;
187 GLSGEN_GlsLinearFloatController_EXPORT std::ostream&
operator<<( std::ostream& outstr,
const GlsLinearFloatController::KeyData& key );
188 GLSGEN_GlsLinearFloatController_EXPORT std::istream& operator>>( std::istream& instr, GlsLinearFloatController::KeyData& key );
virtual void PreDraw(const OpenGLMatrices &parentMatrices, Culler &culler)
virtual DisplayObject * CloneObject(bool generateNames=false)
virtual float GetFirstInputValue()=0
virtual void CopyProperties(DisplayObject *src)
Definition: dynamic_array.h:62
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:301
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
virtual DisplayObject * handle(DisplayEvent *ev)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
Definition: gls_glo_file.h:982
std::ostream & operator<<(std::ostream &outstr, const AttributeName &name)
Defines the stream out operator.
virtual float GetOutputForInput(float input)=0
The disti::DisplayObject class and global enumerations.
virtual float GetOutputForInput(float input)
virtual void SetAvailableAttributes(unsigned int value)
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
virtual float GetLastInputValue()=0
virtual float GetLastInputValue()
Definition: gls_linear_float_controller.h:68
virtual float GetFirstInputValue()
Macros and helper code to determine what subset of C++11/14/17 is available.
Definition: gls_linear_float_controller.h:137
Definition: gls_linear_float_controller.h:86
Definition: bmpimage.h:46