40#ifndef INCLUDED_GLS_RSO_INTERFACE_IMPL_H
41#define INCLUDED_GLS_RSO_INTERFACE_IMPL_H
47# include "rso_interface_es_2.h"
51typedef disti::RSOInterfaceES1::MatrixF
RSOMatrixT;
52typedef disti::RSOInterfaceES2::RSOPainter
RSOPainterT;
Definition: component_base.h:68
Definition: disti_metadata.h:220
Definition: gls_painter.h:51
Definition: gls_rso_interface_impl.h:159
static GlsRSOInterfaceImpl * CreateInstance(ComponentBase *component)
DistiAttributeBase & GetAttribute(ResourceHandle handle)
void UnregisterResourceObserver(ResourceHandle resourceHandle, CallbackID id) override
bool GetBoundingSphere(RsoImplBaseInterface::Vector *center, float *radius) override
ResourceHandleMap _resourceHandleMap
Mapping of external RSO interface resource ids with runtime attributes.
Definition: gls_rso_interface_impl.h:175
void SetPainter(RSOPainterT *painter) override
bool GetBoundingBox(RsoImplBaseInterface::Vector *min, RsoImplBaseInterface::Vector *max, const RSOMatrixT *transform=NULL) override
RsoImplBaseInterface::EmittedEventHandler * _emittedEventHandler
The container's event handler.
Definition: gls_rso_interface_impl.h:166
RSOPainterT * _painter
Painter object that tracks the conditional rendering state.
Definition: gls_rso_interface_impl.h:179
void Invalidate() override
Notify the painter that the scene needs to be redrawn.
bool IsInvalidated() const override
void SetIntResource(const char *resourceName, long resourceVal) override
bool _redraw
If true, this RSO should redraw itself on the next frame.
Definition: gls_rso_interface_impl.h:180
bool Pick3D(const RsoImplBaseInterface::Vector &winLoc, const RsoImplBaseInterface::Vector &logicalCoords, float scale, const RsoImplBaseInterface::Vector &directionVector, RsoImplBaseInterface::Vector &collisionWinLoc, const RsoImplBaseInterface::OpenGLMatrices &drawnMatrices) override
ResourceHandle CreateResourceHandle(const char *resourceName) override
bool HandleMultiTouchInput(RsoImplMultiTouchInterface::MouseMultiTouchEvent *lci3_ev) override
std::map< ResourceHandle, DistiAttributeBase * > ResourceHandleMap
Typedef to associate external ids (ResourceHandle) with runtime attributes.
Definition: gls_rso_interface_impl.h:173
bool _firstDraw
If true, this RSO has not been drawn yet.
Definition: gls_rso_interface_impl.h:177
GlsRSOInterfaceImpl(ComponentBase *component)
double GetFloatResource(const char *resourceName) override
bool SetEmittedEventHandler(RsoImplBaseInterface::EmittedEventHandler *handler) override
const char * GetResource(const char *resourceName) override
void SetResource(const char *resourceName, const char *resourceVal) override
void DeleteInstance() override
Safely delete the object.
void Calculate(double time) override
The RSO Interface methods.
bool IsResourceHandleValid(ResourceHandle resourceHandle) override
void ReleaseResourceHandle(ResourceHandle resourceHandle) override
const char * GetResources(RsoImplBaseInterface::ResourceFilter *filter=NULL) override
void SetFloatResource(const char *resourceName, double resourceVal) override
long GetIntResource(const char *resourceName) override
ResourceHandle _nextResourceHandle
Used to track the highest id, to assign as the next resource handle.
Definition: gls_rso_interface_impl.h:176
CallbackID RegisterResourceObserver(ResourceHandle resourceHandle, ResourceObserver *obs) override
std::string _resourcesRetVal
String to return from Resources methods.
Definition: gls_rso_interface_impl.h:169
bool HandleInput(RsoImplBaseInterface::Event *lci1_ev) override
void PreDraw(const RsoImplBaseInterface::OpenGLMatrices &parentMatrices, RsoImplBaseInterface::Culler &culler) override
RsoImplBaseInterface * CloneObject() override
ComponentBase * _component
Definition: gls_rso_interface_impl.h:163
int LiveComponentEventHandlerCb(ComponentBase *, disti::DisplayEvent *ev)
Definition: gls_resources.h:51
void LevelsUp(int value)
Definition: gls_resources.h:84
unsigned int IncludeCount() const
void PopParentName()
Removes the top entry on the parent name stack.
const char * GetInclude(unsigned int index) const
void PushParentName(const char *parent)
unsigned int ExcludeCount() const
const char * GetExclude(unsigned int index) const
void NamesOnly(bool value)
Definition: gls_resources.h:112
void AddInclude(const char *name)
unsigned int ParentNameCount() const
virtual bool PassFilter(const char *name)
const char * GetParentName(unsigned int index) const
void AddExclude(const char *name)
void GroupLevelsDown(int value)
Definition: gls_resources.h:103
Definition: rso_interface_1.h:310
Definition: rso_interface_1.h:636
Definition: rso_interface_1.h:322
Definition: rso_interface_1.h:210
Definition: rso_interface_1.h:243
Definition: rso_interface_1.h:650
Definition: rso_interface_1.h:175
Definition: rso_interface_1.h:61
unsigned int ResourceHandle
Typedef for a unique resource identifier.
Definition: rso_interface_2.h:65
Definition: rso_interface_3.h:65
Definition: rso_interface_3.h:61
Definition: rso_interface_4.h:64
unsigned int CallbackID
Type for unique identifiers.
Definition: rso_interface_4.h:79
Definition: rso_interface_5.h:66
Definition: rso_interface_5.h:62
Definition: gls_rso_interface_impl.h:68
const char * GetInclude(int index) const override
Definition: gls_rso_interface_impl.h:132
void PopParentName()
Pop the parent object name stack.
Definition: gls_rso_interface_impl.h:145
int ExcludeCount() const override
Definition: gls_rso_interface_impl.h:114
const char * GetExclude(int index) const override
Definition: gls_rso_interface_impl.h:119
bool NamesOnly() const override
Definition: gls_rso_interface_impl.h:99
void PushParentName(const char *parent)
Definition: gls_rso_interface_impl.h:142
void GroupLevelsDown(int value) override
Definition: gls_rso_interface_impl.h:96
RSOResourceFilterImpl(GlsResourceFilter *filter)
Definition: gls_rso_interface_impl.h:75
void LevelsUp(int value) override
Definition: gls_rso_interface_impl.h:86
void AddExclude(const char *str) override
Definition: gls_rso_interface_impl.h:110
bool PassFilter(const char *name) const override
Definition: gls_rso_interface_impl.h:138
int LevelsUp() const override
Definition: gls_rso_interface_impl.h:80
void AddInclude(const char *str) override
Definition: gls_rso_interface_impl.h:123
unsigned int ParentNameCount() const
Definition: gls_rso_interface_impl.h:148
int GroupLevelsDown() const override
Definition: gls_rso_interface_impl.h:89
int IncludeCount() const override
Definition: gls_rso_interface_impl.h:127
const char * GetParentName(unsigned int index) const
Definition: gls_rso_interface_impl.h:153
void NamesOnly(bool value) override
Definition: gls_rso_interface_impl.h:106
The standard Mouse and keyboard events and event structures.
#define DISTI_METHOD_OVERRIDE
Macro to wrap the override keyword, removed on compilers that don't support it.
Definition: gls_cpp_lang_support.h:214
A file for all GL Studio files to include.
#define GLS_EXPORT
Macro denoting which functions should be visible from the runtime library.
Definition: gls_include.h:52
#define GLS_EDITOR
Macro denoting which functions should be visible from the editor.
Definition: gls_include.h:63
disti::GlsResourceFilter classes and methods.
disti::RSOInterface3 RsoImplMultiTouchInterface
Typedef for the RSO interface version that introduced multitouch support.
Definition: gls_rso_interface_impl.h:57
disti::RSOInterface5::RSOPainter RSOPainterT
Typedef for the RSO interface painter type.
Definition: gls_rso_interface_impl.h:59
disti::RSOInterface1 RsoImplBaseInterface
Typedef for the original RSO interface.
Definition: gls_rso_interface_impl.h:56
disti::RSOInterface1::MatrixD RSOMatrixT
Typedef for the RSO interface matrix type.
Definition: gls_rso_interface_impl.h:58
disti::RSOInterface5 RsoImplBaseClass
Typedef for the current RSO interface.
Definition: gls_rso_interface_impl.h:55
Force inclusion of the DirectShow library.
Definition: bmpimage.h:47
Defines the RSO interface v5, which extends v4 to add conditional rendering support.