40 #ifndef INCLUDED_GLS_RSO_INTERFACE_IMPL_H 
   41 #define INCLUDED_GLS_RSO_INTERFACE_IMPL_H 
   47 #    include "rso_interface_es_1.h" 
   51 typedef disti::RSOInterfaceES1::MatrixF 
RSOMatrixT;
 
   78     void LevelsUp( 
int value ) DISTI_METHOD_OVERRIDE { _filter->
LevelsUp( value ); }
 
  108     const char* GetInclude( 
int index ) 
const DISTI_METHOD_OVERRIDE { 
return _filter->
GetInclude( index ); }
 
  115     void PushParentName( 
const char* parent ) { _filter->
PushParentName( parent ); }
 
  118     unsigned int ParentNameCount()
 const { 
return _filter->
ParentNameCount(); }
 
  120     const char* GetParentName( 
unsigned int index )
 const { 
return _filter->
GetParentName( index ); }
 
  135     std::string _resourcesRetVal;
 
  139     typedef std::map<ResourceHandle, DistiAttributeBase*> ResourceHandleMap;
 
  141     ResourceHandleMap _resourceHandleMap;
 
  142     ResourceHandle    _nextResourceHandle;
 
  151     virtual GLS_EXPORT ~GlsRSOInterfaceImpl();
 
  154     static GLS_EXPORT GlsRSOInterfaceImpl* CreateInstance( 
ComponentBase* component );
 
  161     GLS_EXPORT 
void Calculate( 
double time ) DISTI_METHOD_OVERRIDE;
 
  167     GLS_EXPORT 
void Draw() DISTI_METHOD_OVERRIDE;
 
  188     GLS_EXPORT 
void SetResource( 
const char* resourceName, 
const char* resourceVal ) DISTI_METHOD_OVERRIDE;
 
  190     GLS_EXPORT 
const char* 
GetResource( 
const char* resourceName ) DISTI_METHOD_OVERRIDE;
 
  202     void SetResource( ResourceHandle resourceHandle, 
const char* resourceVal ) DISTI_METHOD_OVERRIDE;
 
  204     const char* 
GetResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
 
  206     void SetIntResource( 
const char* resourceName, 
long resourceVal ) DISTI_METHOD_OVERRIDE;
 
  208     long GetIntResource( 
const char* resourceName ) DISTI_METHOD_OVERRIDE;
 
  210     void SetIntResource( ResourceHandle resourceHandle, 
long resourceVal ) DISTI_METHOD_OVERRIDE;
 
  212     long GetIntResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
 
  214     void SetFloatResource( 
const char* resourceName, 
double resourceVal ) DISTI_METHOD_OVERRIDE;
 
  218     void SetFloatResource( ResourceHandle resourceHandle, 
double resourceVal ) DISTI_METHOD_OVERRIDE;
 
  220     double GetFloatResource( ResourceHandle resourceHandle ) DISTI_METHOD_OVERRIDE;
 
  226     unsigned int GetMaxNumLights() DISTI_METHOD_OVERRIDE;
 
  227     void         SetLightData( 
unsigned int numLights, LightData* lightData ) DISTI_METHOD_OVERRIDE;
 
  229     unsigned int GetMaxClipPlanes() DISTI_METHOD_OVERRIDE;
 
  230     void         SetClipPlaneData( 
unsigned int numClipPlanes, 
float** equations ) DISTI_METHOD_OVERRIDE;
 
  232     void SetMatrix( 
int type, 
const float* matrix ) DISTI_METHOD_OVERRIDE;
 
  233     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. 
Definition: rso_interface_1.h:290
void PreDraw(const RsoImplBaseInterface::OpenGLMatrices &parentMatrices, RsoImplBaseInterface::Culler &culler)
const char * GetInclude(unsigned int index) const 
double GetFloatResource(const char *resourceName)
Get the value as a float for a given named resource. 
Definition: gls_rso_interface_impl.h:65
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:106
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:100
A file for all GL Studio files to include. 
unsigned int ParentNameCount() const 
int GroupLevelsDown() const 
Definition: gls_rso_interface_impl.h:84
Definition: rso_interface_4.h:63
Definition: component_base.h:67
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:103
The standard Mouse and keyboard events and event structures. 
void AddInclude(const char *name)
Definition: gls_rso_interface_impl.h:124
bool PassFilter(const char *name) const 
Definition: gls_rso_interface_impl.h:112
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:174
int LevelsUp() const 
Definition: gls_rso_interface_impl.h:77
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:91
bool HandleInput(RsoImplBaseInterface::Event *lci1_ev)
void DeleteInstance()
Safely delete the object. 
Definition: rso_interface_4.h:59
Definition: gls_resources.h:50
disti::GlsResourceFilter classes and methods. 
const char * GetExclude(unsigned int index) const 
Defines the RSO interface v3, which extends v2 to add multitouch support through the HandleMultiTouch...
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:95
int ExcludeCount() const 
Definition: gls_rso_interface_impl.h:98
bool SetEmittedEventHandler(RsoImplBaseInterface::EmittedEventHandler *handler)
bool GetBoundingBox(RsoImplBaseInterface::Vector *min, RsoImplBaseInterface::Vector *max, const RSOMatrixT *transform=NULL)
void PushParentName(const char *parent)