GL Studio C++ Runtime API
GlsOdometer Class Reference

#include <gls_odometer.h>

Inheritance diagram for GlsOdometer:
Group DisplayObject AttributeChangedNotifier WeakReferenceableMixin WeakReferenceable

Classes

class  TexturePoints
 

Public Member Functions

 GlsOdometer (bool generateInstance=false)
 
virtual ~GlsOdometer ()
 
virtual void SetAvailableAttributes (unsigned int value) DISTI_METHOD_OVERRIDE
 
virtual void CopyProperties (DisplayObject *src) DISTI_METHOD_OVERRIDE
 
virtual DisplayObjectCloneObject (bool generateNames=false) DISTI_METHOD_OVERRIDE
 
virtual InterfaceListTypeGetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) DISTI_METHOD_OVERRIDE
 
virtual void GetCppInterfaceDescriptionFree (InterfaceListType *array) DISTI_METHOD_OVERRIDE
 
virtual DisplayObjecthandle (DisplayEvent *ev) DISTI_METHOD_OVERRIDE
 
virtual void PreDraw (const OpenGLMatrices &parentMatrices, Culler &culler) DISTI_METHOD_OVERRIDE
 
virtual void Draw (void) DISTI_METHOD_OVERRIDE
 
virtual void SetValue (int spec, va_list &args) DISTI_METHOD_OVERRIDE
 
void MaxValue (const float &value)
 
virtual float MaxValue ()
 
void MinValue (const float &value)
 
virtual float MinValue ()
 
void Value (const float &value)
 
virtual float Value ()
 
virtual void BaseSystem (const int &value)
 
virtual int BaseSystem ()
 
void BehaviorType (const GlsOdometerBehaviorType value)
 
virtual GlsOdometerBehaviorType BehaviorType ()
 
void GeometryType (const GlsOdometerGeometryType value)
 
virtual GlsOdometerGeometryType GeometryType ()
 
void TextureScale (const float &value)
 
virtual float TextureScale ()
 
void DegreesPerDigit (const float &value)
 
virtual float DegreesPerDigit ()
 
- Public Member Functions inherited from Group
DisplayObjectFindByName (const char *name)
 
virtual DisplayObjectFindByNameSameFrame (const char *name)
 
DisplayObjectFindByName (DisplayObject *obj)
 
DisplayObjectFindByQualifiedName (const char *name)
 
DisplayObjectFindNonRecursive (DisplayObject *obj)
 
DisplayObjectArrayObjects ()
 
const DisplayObjectArrayObjects () const
 
DisplayObjectItem (unsigned int index)
 
bool PerformGroupCullCheck (void) const
 
void PerformGroupCullCheck (bool mode)
 
bool CullTestChildren (void) const
 
void CullTestChildren (bool mode)
 
unsigned int Count (void) const
 
DisplayObjectPtr operator[] (unsigned int index)
 
const DisplayObjectoperator[] (unsigned int index) const
 
DisplayObjectFirstObject ()
 
DisplayObjectLastObject (void)
 
bool IsEmpty () const
 
int Position (const DisplayObject *obj) const
 
 Group (int generateInstance=0)
 
 Group (const Group &group, bool generateNames)
 
void InitialGroupCount (unsigned int cnt)
 
virtual ~Group ()
 
virtual void DeleteAllChildren ()
 
virtual void CopyGeometry (DisplayObject *src) override
 
virtual bool Hit (float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint) override
 
virtual DisplayObjectPick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) override
 
virtual void Parent (DisplayFrame *par) override
 
void SetPainter (GlsPainter *painter) override
 
virtual void Location (const Vertex &v) override
 
virtual void Location (float x, float y, float z) override
 
virtual void Translate (float x, float y, float z) override
 
virtual void Translate (float transAmount[]) override
 
virtual void TranslateVertices (float x, float y, float z) override
 
virtual void GetExtents (float &x, float &y, float &z, float &x1, float &y1, float &z1) override
 
virtual void GetTransformedExtents (Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true) override
 
virtual void Rotate (const Vector &orig, float angle, const Vector &axis) override
 
void Scale (float scale_x, float scale_y, float scale_z, Vertex *anchor=NULL, int handle=0) override
 
virtual void InsertObject (DisplayObject *obj, bool reparent=true, bool recalculateBoundingbox=true, int loc=-1)
 
virtual bool DeleteObject (DisplayObject *obj, bool recalculateBoundingbox=true)
 
virtual void ReorderObject (unsigned int oldIndex, unsigned int newIndex)
 
virtual void PushObject (DisplayObject *obj)
 
void DeleteVertexAt (unsigned) override
 
void InsertVertexAt (unsigned) override
 
virtual void SetGroupLocation (const Vertex &v)
 
virtual void GetResources (std::ostream &outstr, GlsResourceFilter *filter=NULL) override
 
virtual void CalculateTextureCoordinates (void) override
 
virtual void LineWidth (float width) override
 
virtual float LineWidth (void) override
 
virtual void LineStipplePattern (int pattern) override
 
virtual int LineStipplePattern (void) override
 
virtual void LineStippleMultiplier (int mult) override
 
virtual int LineStippleMultiplier (void) override
 
virtual int PolygonMode (void) override
 
virtual void PolygonMode (int mode) override
 
virtual void PolygonEnd (const int mode) override
 
virtual int PolygonEnd (void) override
 
virtual void Shading (const int mode) override
 
virtual int Shading (void) override
 
virtual void DepthTest (unsigned char mode) override
 
virtual int DepthTest (void) override
 
virtual void AntiAlias (bool mode) override
 
virtual bool AntiAlias (void) override
 
virtual void AlphaMode (int mode) override
 
virtual int AlphaMode (void) override
 
virtual void CullBackFace (const bool mode) override
 
virtual bool CullBackFace (void) override
 
virtual bool LightingEnabled () override
 
virtual void LightingEnabled (bool lighting) override
 
virtual void SetBlendColor (const GlsColor &color) override
 
virtual GlsColor GetBlendColor (void) override
 
virtual void SetColor (const GlsColor &color) override
 
virtual GlsColor GetColor (void) override
 
virtual void SetFillColor (const GlsColor &color) override
 
virtual GlsColor GetFillColor (void) override
 
virtual void TextureRepeat (const int rep) override
 
virtual void TextureMappingTechnique (const int map) override
 
virtual int TextureMappingTechnique (void) override
 
virtual void TextureMinificationFilter (const int filter) override
 
virtual int TextureMinificationFilter (void) override
 
virtual void TextureMagnificationFilter (const int filter) override
 
virtual int TextureMagnificationFilter (void) override
 
virtual void Calculate (double time) override
 
CompatabilityListItemFirst ()
 
CompatabilityListItemLast ()
 
- Public Member Functions inherited from DisplayObject
 DisplayObject (float x, float y, float z)
 
 DisplayObject (const DisplayObject &object, const bool generateNames)
 
virtual ~DisplayObject (void)
 
void Destroy ()
 
void ApplyTextureSettings (int textureIndex=-1)
 
DistiAttribDictAttributes ()
 
void GetBlendColor (unsigned char color[])
 
void GetBlendColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void SetBlendColor (unsigned char color[])
 
void SetBlendColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
bool BlinkedOff (void)
 
virtual bool Blinking (void)
 
virtual void Blinking (const bool blink)
 
virtual float BlinkRate (void)
 
virtual void BlinkRate (const float rate)
 
const VectorBoundingVolumeCenter () const
 
void BoundingVolumeCenter (const Vector &center)
 
bool BoundingVolumeHit (const Vector &start, const Vector &direction)
 
float BoundingVolumeRadius () const
 
void BoundingVolumeRadius (float radius)
 
void CalculateCollisionPoint (const Vector &pickLoc, const Vector &directionVector, Vector *collisionPoint)
 
virtual void CalculateParentBoundingBox (void)
 
bool GetTexturePointTransformationMatrix (GlsMatrixType &world2tex)
 
CallbackMethodCallerBaseCallbackCaller () const
 
void CallbackCaller (CallbackMethodCallerBase *cb)
 
virtual void GetCenter (Vector &center)
 
void GetColor (unsigned char c4[])
 
void GetColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void SetColor (unsigned char c4[])
 
void SetColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
virtual void CopyHierarchyProperties (DisplayObject *src, bool copyName)
 
bool Culled () const
 
bool CullTest (const GlsMatrixType *matrix, const Culler &culler)
 
GlsMatrixTypeDcsMatrix ()
 
void DcsMatrix (const GlsMatrixType &matrix)
 
virtual void DeleteVertexAt (unsigned int index)
 
virtual void DeleteVertex (unsigned int indexAfter) final
 
const GlsMatrixTypeDrawMatrix ()
 
bool NeedCalcDrawMatrix ()
 
void DynamicRotate (float angle, int axis)
 
void DynamicRotate (const Vector &v)
 
void DynamicRotate (float angle[])
 
virtual void DynamicRotate (float x, float y, float z)
 
virtual void DynamicRotateRelative (float angle, int axis)
 
virtual float DynamicRotation (int axis)
 
virtual Vector DynamicScale ()
 
virtual void DynamicScale (float x, float y, float z)
 
void DynamicScale (const Vector &scale)
 
virtual void DynamicTranslate (float x, float y, float z, bool relative=false)
 
void DynamicTranslate (const Vertex &amount, bool relative)
 
void DynamicTranslate (const Vector &amount)
 
virtual void DynamicTranslate (float amount, int axis, bool relative=false)
 
virtual float DynamicTranslation (int axis)
 
virtual Vector DynamicTranslation ()
 
DisplayObjectEditor * Editor ()
 
const DisplayObjectEditor * Editor () const
 
void Editor (DisplayObjectEditor *editor)
 
void GetExtentsDCS (Vector &min, Vector &max)
 
void GetFillColor (unsigned char &r, unsigned char &g, unsigned char &b, unsigned char &a)
 
void GetFillColor (unsigned char c4[])
 
void SetFillColor (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
 
void SetFillColor (unsigned char c4[])
 
virtual void FinishObject ()
 
virtual void GenerateInstanceName (void)
 
virtual bool HitUtil (float x, float y, float z, float scale, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector, Vector *collisionPoint)
 
virtual void InsertVertexAt (unsigned int index)
 
virtual void InsertVertex (unsigned int indexAfter) final
 
char * InstanceName (void)
 
void InstanceName (const char *name)
 
virtual const VertexLocation (void) const
 
virtual void GetLocation (Vertex &v)
 
virtual void GetLocation (float &x, float &y, float &z)
 
float X (void) const
 
float Y (void) const
 
float Z (void) const
 
void X (const float x)
 
void Y (const float y)
 
void Z (const float z)
 
virtual int MaterialIndex ()
 
virtual void MaterialIndex (int index)
 
virtual DynamicArray< int > & MaterialIndices ()
 
virtual void MaterialIndices (DynamicArray< int > indices)
 
GlsMatrixTypeModelMatrix ()
 
bool NeedCalculate ()
 
VectorNormals ()
 
virtual void SetNormals (unsigned int nPoints, Vector *vertices)
 
void VaSetNormals (unsigned int nPoints,...)
 
unsigned int NumberOfVertices () const
 
virtual float ObjectDepth (void)
 
virtual float ObjectHeight (void)
 
virtual float ObjectWidth (void)
 
virtual void SetOrigin (const Vertex &vert)
 
DisplayFrameParent (void) const
 
virtual void ParentGroup (Group *group)
 
GroupParentGroup (void) const
 
unsigned char Pickable ()
 
virtual void Pickable (unsigned char pick)
 
GlsMatrixTypeProjMatrix ()
 
virtual void ReallocateVertices (unsigned int numVertices, bool initializeNew, bool copyOld)
 
virtual float RelativeAngle (const float x, const float y)
 
virtual DistiAttributeBaseResource (const char *name)
 
void RestoreAlpha (void)
 
void RestoreAntiAlias (void)
 
void RestoreLighting (void)
 
void RestoreLineStyle (void)
 
const VertexRotationPoint () const
 
virtual void RotationPoint (const Vertex &v)
 
virtual void RotationPoint (float x, float y, float z)
 
virtual void GetRotationPoint (Vertex &v)
 
virtual void Rotate (float angle, int axis=Z_AXIS)
 
virtual void Rotate (const Vector &origin, float angle, int axis=Z_AXIS)
 
void SaveMatrices ()
 
void Set (int spec,...)
 
bool SetupAlpha (void)
 
bool SetupAntiAlias (void)
 
void SetupDepthTest (void)
 
void SetupLighting (void)
 
bool SetupLineStyle (void)
 
void SetupPolyDrawStyle (void)
 
void SetupShading (void)
 
bool SetupTexture (void)
 
virtual void SetTexCoords (unsigned int nPoints, Vector *new_tex_coord, bool isVectorArray=true)
 
void SetTexCoords (unsigned int nPoints, Vertex *new_tex_coord)
 
void VaSetTexCoords (unsigned int nPoints,...)
 
VectorTextureCoordinates (void)
 
VectorGetTextureCoordinates (void)
 
virtual int TextureIndex (void)
 
virtual void TextureIndex (int textureIndex)
 
virtual VectorGetTexturePoints (void)
 
virtual bool TextureRepeat (void)
 
virtual void UpdateBoundingVolume (void)
 
void * UserData (void) const
 
void UserData (void *data)
 
virtual void SetVertexColor (unsigned int vertex, unsigned char CurrentFillColor[])
 
virtual VertexVertices ()
 
virtual void SetVertices (unsigned int nPoints, Vertex *vertices)
 
void VaSetVertices (unsigned int nPoints,...)
 
int * ViewMatrix ()
 
bool Visible (void) const
 
bool Visibility (void) const
 
virtual void Visibility (const bool vis)
 
virtual Vector WorldRotationPoint (void)
 
virtual void WorldRotationPoint (const Vector &vert)
 
virtual Vertex WorldVertex (unsigned int i)
 
virtual void WorldVertex (unsigned int i, const Vertex &vert)
 
bool LogicalToWindow (const Vector &logical, Vector &winLoc, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
 
bool WindowToLogical (const Vector &winLoc, Vector &logical, Vector *directionVector=NULL, const OpenGLMatrices &alternateMatrices=OpenGLMatrices())
 
void LogicalToDCS (Vector logicalPoint, Vector &objectLocal, const Vector *directionVector, const Vector &planeNormal=Vector(0, 0, 1), const Vector &planePoint=Vector(), const GlsMatrixType *dcsMatrix=NULL)
 
void DCSToLogical (Vector dcsPoint, Vector &logicalPoint, const GlsMatrixType *dcsMatrix=NULL)
 
virtual bool GetPlaneVectorPoints (Vertex &p1, Vertex &p2, Vertex &p3, Vertex &planeVector)
 
void NotifyAttributeChanged (const AttributeName &name) override
 
virtual GlsPainterGetPainter ()
 
void InvalidatePainter ()
 
virtual bool IsVisibleInScene (const DisplayObject *obj=NULL) const
 
- Public Member Functions inherited from AttributeChangedNotifier
virtual ~AttributeChangedNotifier ()
 
- Public Member Functions inherited from WeakReferenceableMixin
void AddWeakReference (WeakReference *weakRef) override
 
void NotifyWeakReferenceDestroyed (WeakReference *ref) override
 

Additional Inherited Members

- Public Types inherited from DisplayObject
enum  AvailableAttributesEnum
 
- Static Public Member Functions inherited from DisplayObject
static void UseManualBlinkElapsedTime (bool useManualTime)
 
static void SetManualBlinkElapsedTime (double elapsedTime)
 
- Protected Member Functions inherited from Group
virtual void AddAvailableAttributes (unsigned int availableAttributes)
 
virtual void GrowBoundingBox (DisplayObject *obj)
 
- Protected Member Functions inherited from DisplayObject
virtual void VaListSetVertices (unsigned int nPoints, va_list args)
 
virtual void VaListSetNormals (unsigned int nPoints, va_list args)
 
virtual void VaListSetTexCoords (unsigned int nPoints, va_list args)
 
void AllocateModelMatrix ()
 
bool ApplyDynamicRotation (void)
 
virtual void CalcDrawMatrix ()
 
void CalcDrawMatrixIfExists ()
 
virtual void CalculateMatrices (const OpenGLMatrices &newMatrices)
 
bool InsideVertexExtents (float x, float y, unsigned int nVerts, Vertex *verts, float tolerance)
 
void NeedCalculate (bool val)
 
void PickSetup (float x, float y, float z, Vertex *vertices, unsigned int vertex_cnt, const Vector &directionVector)
 
void PickCleanup (Vertex *vertices, unsigned int vertex_cnt)
 
int GetApplicableTextureIndex ()
 
int GetApplicableTextureRepeat ()
 
- Protected Member Functions inherited from WeakReferenceableMixin
 WeakReferenceableMixin (void)
 
virtual ~WeakReferenceableMixin ()
 
- Protected Attributes inherited from DisplayObject
int _alphaMode
 
bool _antiAlias
 
bool _attributesAdded
 
bool _blinking
 
float _blinkRate
 
GlsColor _color
 
bool _cullBackFace
 
GlsMatrixType _dcsMatrix
 
unsigned char _depthTest
 
GlsMatrixType_drawMatrix
 
unsigned char _lineStippleMultiplier
 
unsigned short _lineStipplePattern
 
float _lineWidth
 
Vertex _location
 
GlsMatrixType_modelMatrix
 
Vector_normals
 
unsigned int _nTex_vertices
 
unsigned int _nVertices
 
unsigned char _polygonEnd
 
unsigned char _polygonMode
 
int _polygonOffset
 
GlsMatrixType_projMatrix
 
unsigned char _shading
 
Vector_texCoord
 
GlsColor _textureBlendColor
 
int _textureIndex
 
unsigned char _textureMagFilter
 
unsigned char _textureMinFilter
 
unsigned char _textureMap
 
Vector _texturePoints [4]
 
unsigned char _textureRepeat
 
void * _userData
 
Vertex_vertices
 
int * _viewMatrix
 
bool _visible
 
- Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * _weakRefs
 

Detailed Description

Runtime implementation of a GlsOdometer

Constructor & Destructor Documentation

GlsOdometer ( bool  generateInstance = false)

Create a new GlsOdometer.

Parameters
generateInstanceWhether or not to generate an instance name for this inputdevice
virtual ~GlsOdometer ( )
virtual

Destructs a GlsOdometer object

Member Function Documentation

virtual void BaseSystem ( const int &  value)
virtual

Set the base number system for this odometer. The default is base 10.

virtual int BaseSystem ( )
virtual

Get the base number system for this odometer.

void BehaviorType ( const GlsOdometerBehaviorType  value)

Set the BehaviorType controls the "Rollover" behavior of the odometer. BEHAVIOR_ANALOG - Wheels will roll between numbers based on the RolloverThreshold BEHAVIOR_DIGITAL - Wheels will display only whole numbers.

virtual GlsOdometerBehaviorType BehaviorType ( )
virtual

Get the BehaviorType controls the "Rollover" behavior of the odometer.

virtual DisplayObject* CloneObject ( bool  generateNames = false)
virtual

Copy+Create operation in one method. In derived classes, this method will create a new instance of the derived class and then copy the object into the new instance. The cut,copy,paste and undo operations use this method.

Parameters
generateNamesWhether or not to generate new names for cloned objects
Returns
A new object, identical to the original, except for the instance name

Reimplemented from Group.

virtual void CopyProperties ( DisplayObject src)
virtual

Copies the attributes except for geometry attributes from one object to another. Used by the undo mechanism to undo most attribute change operations.

Parameters
srcThe object to copy properties from

Reimplemented from Group.

void DegreesPerDigit ( const float &  value)

Set the DegreesPerDigit which is the number of degrees the wheels should be rotated for each digit. This value is only used when GeometryType == GEOMETRY_3D.

virtual float DegreesPerDigit ( )
virtual

Get the DegreesPerDigit

virtual void Draw ( void  )
virtual

Draws this object on the current display frame (_parent member). Pure virtual method

Reimplemented from Group.

void GeometryType ( const GlsOdometerGeometryType  value)

Set the GeometryType controls the method used to "move" the wheels. GEOMETRY_2D - Texture is translated on the object based on the TextureScale. GEOMETRY_3D - The wheels are rotated about the Y-AXIS of the DCS based on the value of DegreesPerDigit.

virtual GlsOdometerGeometryType GeometryType ( )
virtual

Get the GeometryType

virtual InterfaceListType* GetCppInterfaceDescription ( InterfaceListType addToThisList = NULL)
virtual

Get the details of the Cpp Interface The actual interface is exposed in compiled code.

Parameters
addToThisListIf not NULL this list will be added to then returned. If NULL a new list will be created.
Returns
A templated list. The caller must call the corresponding free method to safely free the memory.

Reimplemented from Group.

virtual void GetCppInterfaceDescriptionFree ( InterfaceListType array)
virtual

Frees the memory allocated by a previous call to GetCppInterfaceDescription

Parameters
arrayMemory allocated by a previous call to GetCppInterfaceDescription

Reimplemented from Group.

virtual DisplayObject* handle ( DisplayEvent ev)
virtual

Handles an event that is sent to the object.

Parameters
evThe event to send to the object
Returns
Which object handled the event

Reimplemented from DisplayObject.

void MaxValue ( const float &  value)

Set the maximum displayable value.

virtual float MaxValue ( )
virtual

Get the maximum displayable value.

void MinValue ( const float &  value)

Set the minimum displayable value.

virtual float MinValue ( )
virtual

Get the minimum displayable value.

virtual void PreDraw ( const OpenGLMatrices current,
Culler culler 
)
virtual

Traverses the hierarchy calculating the _modelMatrix, _projMatrix, _viewMatrix as needed.

Parameters
currentCurrent matrices inherited from parent
cullerObject that possibly marks this object for culling

Reimplemented from Group.

virtual void SetAvailableAttributes ( unsigned int  value)
virtual

Specifies which attributes are available for the object. Currently the available attributes cannot be changed after they have been set. (Only the first call has an effect.)

Parameters
valueA bitfield specifying which types of attributes to make available.
See also
AvailableAttributesEnum

Reimplemented from Group.

virtual void SetValue ( int  spec,
va_list &  args 
)
virtual

Sets an attribute of this object using variable arguments

Parameters
specA GLS_Initializer tag
argsA variable argument list

Reimplemented from DisplayObject.

void TextureScale ( const float &  value)

Set the TextureScale which is the amount that the texture should move for each digit. The formula to determine this is: (Pixels per digit)/(Texture height). This value is only used when GeometryType == GEOMETRY_2D.

virtual float TextureScale ( )
virtual

Get the TextureScale

void Value ( const float &  value)

Set the current value to be displayed by the odometer. This value is limited by MaxValue() and MinValue().

virtual float Value ( )
virtual

Get the current value of the odometer.


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