40 #ifndef INCLUDED_GLS_RSO_INTERFACE_IMPL_H
41 #define INCLUDED_GLS_RSO_INTERFACE_IMPL_H
47 # include "rso_interface_es_2.h"
51 typedef disti::RSOInterfaceES1::MatrixF
RSOMatrixT;
52 typedef disti::RSOInterfaceES2::RSOPainter
RSOPainterT;
80 void LevelsUp(
int value ) DISTI_METHOD_OVERRIDE { _filter->
LevelsUp( value ); }
110 const char* GetInclude(
int index )
const DISTI_METHOD_OVERRIDE {
return _filter->
GetInclude( index ); }
117 void PushParentName(
const char* parent ) { _filter->
PushParentName( parent ); }
120 unsigned int ParentNameCount()
const {
return _filter->
ParentNameCount(); }
122 const char* GetParentName(
unsigned int index )
const {
return _filter->
GetParentName( index ); }
138 std::string _resourcesRetVal;
142 typedef std::map<ResourceHandle, DistiAttributeBase*> ResourceHandleMap;
144 ResourceHandleMap _resourceHandleMap;
145 ResourceHandle _nextResourceHandle;
156 virtual GLS_EXPORT ~GlsRSOInterfaceImpl();
159 static GLS_EXPORT GlsRSOInterfaceImpl* CreateInstance(
ComponentBase* component );
166 GLS_EXPORT
void Calculate(
double time ) DISTI_METHOD_OVERRIDE;
172 GLS_EXPORT
void Draw() DISTI_METHOD_OVERRIDE;
193 GLS_EXPORT
void SetResource(
const char* resourceName,
const char* resourceVal ) DISTI_METHOD_OVERRIDE;
195 GLS_EXPORT
const char*
GetResource(
const char* resourceName ) DISTI_METHOD_OVERRIDE;
207 void SetResource( ResourceHandle resourceHandle,
const char* resourceVal ) DISTI_METHOD_OVERRIDE;
209 const char*
GetResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
211 void SetIntResource(
const char* resourceName,
long resourceVal ) DISTI_METHOD_OVERRIDE;
213 long GetIntResource(
const char* resourceName ) DISTI_METHOD_OVERRIDE;
215 void SetIntResource( ResourceHandle resourceHandle,
long resourceVal ) DISTI_METHOD_OVERRIDE;
217 long GetIntResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
219 void SetFloatResource(
const char* resourceName,
double resourceVal ) DISTI_METHOD_OVERRIDE;
223 void SetFloatResource( ResourceHandle resourceHandle,
double resourceVal ) DISTI_METHOD_OVERRIDE;
225 double GetFloatResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
231 unsigned int GetMaxNumLights() DISTI_METHOD_OVERRIDE;
232 void SetLightData(
unsigned int numLights, LightData* lightData ) DISTI_METHOD_OVERRIDE;
234 unsigned int GetMaxClipPlanes() DISTI_METHOD_OVERRIDE;
235 void SetClipPlaneData(
unsigned int numClipPlanes,
float** equations ) DISTI_METHOD_OVERRIDE;
237 void SetMatrix(
int type,
const float* matrix ) DISTI_METHOD_OVERRIDE;
238 void SetDefaultOpenGLState() DISTI_METHOD_OVERRIDE;
bool GetBoundingSphere(RsoImplBaseInterface::Vector *center, float *radius)
Definition: rso_interface_1.h:578
void SetResource(const char *resourceName, const char *resourceVal)
Set the string value for a given named resource.
const char * GetParentName(unsigned int index) const
void SetIntResource(const char *resourceName, long resourceVal)
Set the value as an integer for a given named resource.
virtual void Invalidate()
Definition: rso_interface_5.h:64
Definition: rso_interface_1.h:290
void PreDraw(const RsoImplBaseInterface::OpenGLMatrices &parentMatrices, RsoImplBaseInterface::Culler &culler)
const char * GetInclude(unsigned int index) const
Definition: rso_interface_5.h:61
double GetFloatResource(const char *resourceName)
Get the value as a float for a given named resource.
Definition: gls_rso_interface_impl.h:67
bool IsResourceHandleValid(ResourceHandle resourceHandle)
Checks if a given resource handle is valid.
unsigned int ExcludeCount() const
Returns the number of exclude entries in the filter.
RsoImplBaseInterface * CloneObject()
long GetIntResource(const char *resourceName)
Get the value as an integer for a given named resource.
int IncludeCount() const
Definition: gls_rso_interface_impl.h:108
bool NamesOnly()
Definition: gls_resources.h:103
const char * GetExclude(int index) const
Returns NULL if index >= ExcludeCount() or index < -1.
Definition: gls_rso_interface_impl.h:102
A file for all GL Studio files to include.
unsigned int ParentNameCount() const
int GroupLevelsDown() const
Definition: gls_rso_interface_impl.h:86
Definition: rso_interface_4.h:63
Definition: component_base.h:67
Definition: gls_painter.h:51
const char * GetResource(const char *resourceName)
Get the string value for the given resource.
Definition: rso_interface_1.h:302
void AddInclude(const char *str)
Manage the list of included attributes.
Definition: gls_rso_interface_impl.h:105
The standard Mouse and keyboard events and event structures.
void AddInclude(const char *name)
Definition: gls_rso_interface_impl.h:126
bool PassFilter(const char *name) const
Definition: gls_rso_interface_impl.h:114
void UnregisterResourceObserver(ResourceHandle resourceHandle, CallbackID id)
virtual bool PassFilter(const char *name)
Test a resource name against the filter.
Definition: rso_interface_1.h:592
unsigned int IncludeCount() const
Returns the number of includes in the filter.
void SetFloatResource(const char *resourceName, double resourceVal)
Set the value as a float for a given named resource.
Definition: rso_interface_1.h:60
void AddExclude(const char *name)
Definition: rso_interface_1.h:209
Definition: disti_metadata.h:180
int LevelsUp() const
Definition: gls_rso_interface_impl.h:79
Definition: rso_interface_3.h:60
Definition: rso_interface_3.h:64
bool Pick3D(const RsoImplBaseInterface::Vector &winLoc, const RsoImplBaseInterface::Vector &logicalCoords, float scale, const RsoImplBaseInterface::Vector &directionVector, RsoImplBaseInterface::Vector &collisionWinLoc, const RsoImplBaseInterface::OpenGLMatrices &drawnMatrices)
Pick3D returns true if the RSO was picked.
ResourceHandle CreateResourceHandle(const char *resourceName)
CallbackID RegisterResourceObserver(ResourceHandle resourceHandle, ResourceObserver *obs)
Definition: rso_interface_1.h:185
const char * GetResources(RsoImplBaseInterface::ResourceFilter *filter=NULL)
int LevelsUp()
Definition: gls_resources.h:79
void Calculate(double time)
The RSO Interface methods.
Definition: rso_interface_1.h:242
int GroupLevelsDown()
Definition: gls_resources.h:96
bool NamesOnly() const
Definition: gls_rso_interface_impl.h:93
bool HandleInput(RsoImplBaseInterface::Event *lci1_ev)
void DeleteInstance()
Safely delete the object.
Definition: gls_resources.h:50
disti::GlsResourceFilter classes and methods.
const char * GetExclude(unsigned int index) const
void ReleaseResourceHandle(ResourceHandle resourceHandle)
Disposes of a resource handle.
unsigned int CallbackID
Type for unique identifiers.
Definition: rso_interface_4.h:79
bool HandleMultiTouchInput(RsoImplMultiTouchInterface::MouseMultiTouchEvent *lci3_ev)
Definition: bmpimage.h:46
void AddExclude(const char *str)
Manage the list of excluded attributes.
Definition: gls_rso_interface_impl.h:97
virtual void SetPainter(RSOPainterT *painter)
Defines the RSO interface v5, which extends v4 to add conditional rendering support.
int ExcludeCount() const
Definition: gls_rso_interface_impl.h:100
bool SetEmittedEventHandler(RsoImplBaseInterface::EmittedEventHandler *handler)
bool GetBoundingBox(RsoImplBaseInterface::Vector *min, RsoImplBaseInterface::Vector *max, const RSOMatrixT *transform=NULL)
void PushParentName(const char *parent)