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"
92 friend class GlsLinearFloatControllerEditor;
99 DISTI_DEPRECATED(
"This identifier is forbidden by the C++ standard. Use BaseClass instead." )
106 GLSGEN_GlsLinearFloatController_EXPORT GlsLinearFloatController(
const GlsLinearFloatController& that,
const bool generateNames );
108 virtual GLSGEN_GlsLinearFloatController_EXPORT ~GlsLinearFloatController();
110 static GLSGEN_GlsLinearFloatController_EXPORT
DisplayObject* CreateInstance();
114 virtual GLSGEN_GlsLinearFloatController_EXPORT
void SetAvailableAttributes(
unsigned int value ) DISTI_METHOD_OVERRIDE;
116 virtual GLSGEN_GlsLinearFloatController_EXPORT
DisplayObject*
CloneObject(
bool generateNames =
false ) DISTI_METHOD_OVERRIDE;
125 virtual GLSGEN_GlsLinearFloatController_EXPORT
void PreDraw(
const OpenGLMatrices& parentMatrices,
Culler& culler ) DISTI_METHOD_OVERRIDE;
126 virtual GLSGEN_GlsLinearFloatController_EXPORT
void Draw(
void ) DISTI_METHOD_OVERRIDE;
130 virtual GLSGEN_GlsLinearFloatController_EXPORT
bool Hit(
float x,
float y,
float z,
float scale,
const Vector& directionVector,
Vector* collisionPoint ) DISTI_METHOD_OVERRIDE;
134 virtual GLSGEN_GlsLinearFloatController_EXPORT
float GetOutputForInput(
float input ) DISTI_METHOD_OVERRIDE;
136 virtual GLSGEN_GlsLinearFloatController_EXPORT
float GetFirstInputValue() DISTI_METHOD_OVERRIDE;
138 virtual GLSGEN_GlsLinearFloatController_EXPORT
float GetLastInputValue() DISTI_METHOD_OVERRIDE;
153 inline void SetInputValue(
float value ) { _input = value; }
154 inline float GetInputValue()
const {
return _input; }
156 inline void SetOutputValue(
float value ) { _output = value; }
157 inline float GetOutputValue()
const {
return _output; }
163 inline KeyArrayType& KeyArray() {
return _keyArray; }
173 GLSGEN_GlsLinearFloatController_EXPORT
void FindFirstPathSegmentContainingValue(
float value,
int* index1,
int* index2 );
179 GLSGEN_GlsLinearFloatController_EXPORT
void InitializeKeys(
unsigned int numKeys,
const float* keyPairArray );
185 virtual GLSGEN_GlsLinearFloatController_EXPORT
void SetFromGloData(
GlsGloFileAttribute& data ) DISTI_METHOD_OVERRIDE;
189 KeyArrayType _keyArray;
192 GLSGEN_GlsLinearFloatController_EXPORT std::ostream&
operator<<( std::ostream& outstr,
const GlsLinearFloatController::KeyData& key );
193 GLSGEN_GlsLinearFloatController_EXPORT std::istream& operator>>( std::istream& instr, GlsLinearFloatController::KeyData& key );
virtual float GetOutputForInput(float input) DISTI_METHOD_OVERRIDE
virtual ~IFloatController()
Definition: gls_linear_float_controller.h:72
virtual DisplayObject * handle(DisplayEvent *ev) DISTI_METHOD_OVERRIDE
virtual float GetFirstInputValue()=0
#define DISTI_DEPRECATED(msg)
Defines whether this compiler supports the C++14 deprecated attribute.
Definition: gls_cpp_lang_support.h:436
virtual void CopyProperties(DisplayObject *src) DISTI_METHOD_OVERRIDE
Definition: dynamic_array.h:66
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array) DISTI_METHOD_OVERRIDE
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:473
virtual DisplayObject * CloneObject(bool generateNames=false) DISTI_METHOD_OVERRIDE
Definition: gls_glo_file.h:988
virtual void Draw(void) DISTI_METHOD_OVERRIDE
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 void PreDraw(const OpenGLMatrices &parentMatrices, Culler &culler) DISTI_METHOD_OVERRIDE
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL) DISTI_METHOD_OVERRIDE
virtual float GetLastInputValue()=0
Definition: gls_linear_float_controller.h:68
virtual void SetAvailableAttributes(unsigned int value) DISTI_METHOD_OVERRIDE
virtual float GetFirstInputValue() DISTI_METHOD_OVERRIDE
virtual float GetLastInputValue() DISTI_METHOD_OVERRIDE
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) DISTI_METHOD_OVERRIDE
Macros and helper code to determine what subset of C++11/14/17 is available.
Definition: gls_linear_float_controller.h:142
Definition: gls_linear_float_controller.h:89
Definition: bmpimage.h:46