|
GL Studio Safety Critical Embedded C++ Runtime Library
|
#include <gls_component_base.h>
Inheritance diagram for GlsComponentBase:Classes | |
| struct | InitParameters |
Public Member Functions | |
| virtual void | Initialize (void)=0 |
| void | SetClipPlanes (const GlsVector3D &lowerFarLeft, const GlsVector3D &upperNearRight) |
| virtual void | Draw (GlsStateManager &gl, const GlsFloat64 time) |
| virtual void | Calculate (const GlsFloat64 time) |
| virtual GlsDisplayObject * | PickTest (const GlsVector2D &windowCoord, GlsInputManager &inputManager, const GlsMatrixAffineD::GLMatrixAffineF &parentDrawMatrix) |
| virtual void | SetChildrenAlphaMode (const GlsAlphaMode alphaMode) |
| virtual void | SetChildrenFillColor (const GlsColor &fillColor) |
| virtual void | SetChildrenLineColor (const GlsColor &lineColor) |
| virtual void | SetChildrenLineWidth (const GlsFloat32 lineWidth) |
| virtual void | SetChildrenPolygonMode (const GlsPolygonMode polygonMode) |
Public Member Functions inherited from GlsDisplayObject | |
| GlsDisplayObject * | HandleEvent (GlsEvent &event) |
| ObjectType | GetObjectType (void) const |
| void | SetBlinking (const GlsBool blinking) |
| void | SetBlinkRate (const GlsFloat32 blinkRate) |
| void | SetDynamicRotation (const GlsVector3D &dynamicRotation) |
| void | SetDynamicScale (const GlsVector3D &dynamicScale) |
| void | SetDynamicTranslation (const GlsVector3D &dynamicTranslation) |
| void | SetVisibility (const GlsBool visible) |
| void | SetParent (GlsDisplayObject *const parent) |
| void | SetPickMode (const PickMode pickMode) |
| GlsBool | NeedCalculate (void) const |
| void | InvalidatePickCache (void) |
Protected Types | |
| enum | { CLIP_PLANE_LEFT = 0u, CLIP_PLANE_RIGHT, CLIP_PLANE_TOP, CLIP_PLANE_BOTTOM, CLIP_PLANE_FRONT, CLIP_PLANE_BACK, NUM_CLIP_PLANES } |
| enum | { PLANE_EQN_COEFF_A = 0u, PLANE_EQN_COEFF_B, PLANE_EQN_COEFF_C, PLANE_EQN_COEFF_D, NUM_PLANE_COEFF } |
Protected Member Functions | |
| GlsComponentBase (const InitParameters &initParameters, GlsEventDispatcher *const eventDispatcher) | |
| void | ActivateClipPlanes (void) const |
| void | DeactivateClipPlanes (void) const |
| virtual GlsDisplayObjectArray & | GetObjects (void)=0 |
| virtual | ~GlsComponentBase () |
Protected Member Functions inherited from GlsCompositeObject | |
| GlsCompositeObject (const InitParameters &initParameters, GlsEventDispatcher *const eventDispatcher) | |
| virtual | ~GlsCompositeObject () |
Protected Member Functions inherited from GlsDisplayObject | |
| GlsDisplayObject (const InitParameters &initParameters, const ObjectType objectType, GlsEventDispatcher *const eventDispatcher) | |
| virtual | ~GlsDisplayObject () |
| GlsBool | CalcDrawMatrix (const GlsMatrixAffineD *const additionalTransform, const GlsBool includeLocation) |
| virtual void | CalcWindowPickRegion (GlsInputManager &inputManager, const GlsMatrixAffineD::GLMatrixAffineF &parentDrawMatrix) |
| GlsBool | IsBlinkedOff (const GlsFloat64 time) const |
Additional Inherited Members | |
Public Types inherited from GlsDisplayObject | |
| enum | ObjectType { OBJECT_TYPE_COMPOSITE, OBJECT_TYPE_RENDERABLE } |
| enum | PickMode { PICK_MODE_NEVER, PICK_MODE_FIRST, PICK_MODE_ALWAYS } |
This class serves as an abstract base class for all user derived display components.
|
protected |
|
protected |
|
protected |
Constructor - create an instance, can only be called by a derived class
| initParameters | initialization parameters |
| eventDispatcher | event dispatcher for this object else GLS_NULL |
|
protectedvirtual |
Destructor - shall never be called
|
protected |
Activate the GL clip planes described by _clipPlanes
|
virtual |
Provides a mechanism for performing regular calculations, separate from drawing.
| time | The elaspsed time in seconds since program start |
Reimplemented from GlsDisplayObject.
|
protected |
Deactivate the GL clip planes
|
virtual |
Draws the component
| gl | GL State manager for OpenGL into which object is drawn |
| time | the elaspsed time in seconds since program start |
Implements GlsDisplayObject.
|
protectedpure virtual |
Get the object array that contains all of the objects in the component
|
pure virtual |
Called after objects in the component are created. This allows a derived class to have custom initialization code.
|
virtual |
Perform a pick test of the given point in window coordinates against this object
| windowCoord | point in question |
| inputManager | input manager managing input for this object |
| parentDrawMatrix | draw matrix used when rendering parent object |
Reimplemented from GlsDisplayObject.
|
virtual |
Set the alpha mode of the contained objects
| alphaMode | desired alpha mode |
Implements GlsCompositeObject.
|
virtual |
Set the fill color of the contained objects
| fillColor | desired fill color |
Implements GlsCompositeObject.
|
virtual |
Set the line color of the contained objects
| lineColor | desired line color |
Implements GlsCompositeObject.
|
virtual |
Set the line width of the contained objects
| lineWidth | new line width, GlsRenderObject::LINE_WIDTH_MIN <= lineWidth <= GlsRenderObject::LINE_WIDTH_MAX |
Implements GlsCompositeObject.
|
virtual |
Set the polygon mode of the contained objects
| polygonMode | new polygon mode |
Implements GlsCompositeObject.
| void GlsComponentBase::SetClipPlanes | ( | const GlsVector3D & | lowerFarLeft, |
| const GlsVector3D & | upperNearRight | ||
| ) |
Enable and configure the six clipping planes ( left, right, top, bottom, front, back ) against which the component will be clipped when rendered. The clipping planes are defined by the 3D box described by the given points.
| lowerFarLeft | lower far left side point of 3D box describing clip planes |
| upperNearRight | upper near right side point of 3D box describing clip planes |
|
protected |
GLS_TRUE if clipping is enabled when drawing else GLS_FALSE
|
protected |
plane equation coefficients for each plane
|
protected |
The static transformation from the internal component coordinates to the parent's coordinate system. the rotation, and scaling that the parent did to this component, including translation for _location