1 #ifndef _GLS_DISPLAY_OBJECT_H
2 #define _GLS_DISPLAY_OBJECT_H
75 #if defined( GLS_DEBUG )
88 #if defined( GLS_DEBUG )
99 #if defined( GLS_DEBUG )
127 #if defined( GLS_DEBUG )
249 #if defined( GLS_UNIT_TEST )
256 static const void* OffsetOfObjectType(
void );
257 #endif // defined( GLS_UNIT_TEST )
360 #if defined( GLS_DEBUG )
361 #pragma BullseyeCoverage save off
374 #pragma BullseyeCoverage restore
377 #if defined( GLS_DEBUG )
378 #pragma BullseyeCoverage save off
391 #pragma BullseyeCoverage restore
394 #if defined( GLS_UNIT_TEST )
395 #pragma BullseyeCoverage save off
402 inline const void* GlsDisplayObject::OffsetOfObjectType(
void )
406 #pragma BullseyeCoverage restore
407 #endif // defined( GLS_UNIT_TEST )
409 #endif // _GLS_DISPLAY_OBJECT_H
GlsVector3D _dynamicRotation
Definition: gls_display_object.h:285
ObjectType GetObjectType(void) const
bool GlsBool
Definition: gls_types.h:96
GlsVector2D _windowPickLowerLeft
Definition: gls_display_object.h:296
virtual GlsDisplayObject * PickTest(const GlsVector2D &windowCoord, GlsInputManager &inputManager, const GlsMatrixAffineD::GLMatrixAffineF &parentDrawMatrix)
ObjectType
Definition: gls_display_object.h:70
#define GLS_CLASS_INVARIANT_DECLARATION(ClassName)
Definition: gls_class_invariant.h:80
Definition: gls_vertex.h:65
Definition: gls_state_manager.h:63
Definition: gls_display_object.h:83
GlsVector2D _windowPickUpperRight
Definition: gls_display_object.h:298
const GlsVector3D rotationPoint
Definition: gls_display_object.h:122
const GlsBool _dcsMatrixIsIdentity
Definition: gls_display_object.h:264
GlsBool NeedCalculate(void) const
GlsMatrixAffineD::GLMatrixAffineF _pickMatrix
Definition: gls_display_object.h:304
GlsVector3D upperFarRight
Definition: gls_display_object.h:97
const GlsMatrixAffineD _dcsMatrix
Definition: gls_display_object.h:260
const GlsVector3D location
Definition: gls_display_object.h:117
This header defines the runtime assert checking macros for the GL Studio DO-178B Runtime Library...
void InvalidatePickCache(void)
Definition: gls_display_object.h:85
GlsVector3D _dynamicScale
Definition: gls_display_object.h:287
const GlsMatrixAffineD _dcsMatrixInverse
Definition: gls_display_object.h:263
Definition: gls_display_object.h:110
virtual ~GlsDisplayObject()
void SetParent(GlsDisplayObject *const parent)
GlsBool _visible
Definition: gls_display_object.h:293
GlsBool _dynamicScaleIsUnity
Definition: gls_display_object.h:288
This header defines The GlsMatrixAffineD class for use in the GL Studio DO-178B Runtime Library...
virtual void Calculate(const GlsFloat64 time)
GlsDisplayObject * _parent
Definition: gls_display_object.h:306
virtual void CalcWindowPickRegion(GlsInputManager &inputManager, const GlsMatrixAffineD::GLMatrixAffineF &parentDrawMatrix)
void SetPickMode(const PickMode pickMode)
GlsBool _windowPickRegionValid
Definition: gls_display_object.h:295
Definition: gls_event.h:52
const GlsBool blinking
Definition: gls_display_object.h:112
This header defines the basic types used by the GL Studio DO-178B Runtime Library.
Definition: gls_event.h:304
GlsEventDispatcher *const _eventDispatcher
Definition: gls_display_object.h:271
GlsBool IsBlinkedOff(const GlsFloat64 time) const
This header defines any preprocessor defines needed to configure the GL Studio DO-178B Runtime Librar...
const GlsBool visible
Definition: gls_display_object.h:124
GlsMatrixAffineD::GLMatrixAffineF _drawMatrix
Definition: gls_display_object.h:281
GlsVector2D _windowPickLowerRight
Definition: gls_display_object.h:302
GlsFloat64 CStyleMatrix[DIMENSION][DIMENSION]
Definition: gls_matrix_affine_double.h:60
const GlsVector3D _rotationPoint
Definition: gls_display_object.h:272
const PickMode pickMode
Definition: gls_display_object.h:120
void SetDynamicTranslation(const GlsVector3D &dynamicTranslation)
GLfloat GLMatrixAffineF[DIMENSION *DIMENSION]
Definition: gls_matrix_affine_double.h:63
GlsBool CalcDrawMatrix(const GlsMatrixAffineD *const additionalTransform, const GlsBool includeLocation)
void SetBlinkRate(const GlsFloat32 blinkRate)
GlsBool _needCalcDrawMatrix
Definition: gls_display_object.h:291
float GlsFloat32
Definition: gls_types.h:78
const PickRegion pickRegion
Definition: gls_display_object.h:121
Definition: gls_display_object.h:64
GlsDisplayObject(const InitParameters &initParameters, const ObjectType objectType, GlsEventDispatcher *const eventDispatcher)
virtual void Draw(GlsStateManager &gl, const GlsFloat64 time)=0
void SetVisibility(const GlsBool visible)
GlsVector2D _windowPickUpperLeft
Definition: gls_display_object.h:300
Definition: gls_matrix_affine_double.h:54
const GlsMatrixAffineD::CStyleMatrix dcsMatrix
Definition: gls_display_object.h:115
GlsFloat32 _blinkRate
Definition: gls_display_object.h:280
const ObjectType _objectType
Definition: gls_display_object.h:269
double GlsFloat64
Definition: gls_types.h:87
Definition: gls_vertex.h:49
GlsDisplayObject * HandleEvent(GlsEvent &event)
Definition: gls_display_object.h:73
PickMode
Definition: gls_display_object.h:81
const GlsBool needCalculate
Definition: gls_display_object.h:118
GlsBool _blinking
Definition: gls_display_object.h:279
PickMode _pickMode
Definition: gls_display_object.h:294
Definition: gls_display_object.h:72
Definition: gls_display_object.h:94
const GlsMatrixAffineD::CStyleMatrix dcsMatrixInverse
Definition: gls_display_object.h:116
This header the GlsEvent structure and related classes in the GL Studio DO-178B Runtime Library...
const PickRegion _pickRegion
Definition: gls_display_object.h:270
const GlsBool _needCalculate
Definition: gls_display_object.h:267
This header defines classes for working with 2D and 3D vectors, vertices and textured vertices in the...
const GlsVector3D _location
Definition: gls_display_object.h:265
void SetBlinking(const GlsBool blinking)
GlsVector3D lowerNearLeft
Definition: gls_display_object.h:96
const GlsFloat32 blinkRate
Definition: gls_display_object.h:114
void SetDynamicRotation(const GlsVector3D &dynamicRotation)
Definition: gls_display_object.h:84
void SetDynamicScale(const GlsVector3D &dynamicScale)
GlsVector3D _dynamicTranslation
Definition: gls_display_object.h:289
This header includes the API for the OpenGL provider used in the GL Studio DO-178B Runtime Library...