GL Studio C++ Runtime API
RSOInterface4 Class Referenceabstract

#include <rso_interface_4.h>

Inheritance diagram for RSOInterface4:
RSOInterface3 RSOInterface2 RSOInterface1 RSOInterface5 GlsRSOInterfaceImpl

Classes

class  ResourceObserver
 

Public Types

typedef unsigned int CallbackID
 Type for unique identifiers.
 
- Public Types inherited from RSOInterface2
typedef unsigned int ResourceHandle
 Typedef for a unique resource identifier.
 

Public Member Functions

virtual CallbackID RegisterResourceObserver (ResourceHandle resourceHandle, ResourceObserver *observer)=0
 
virtual void UnregisterResourceObserver (ResourceHandle resourceHandle, CallbackID id)=0
 
- Public Member Functions inherited from RSOInterface3
virtual bool HandleMultiTouchInput (MouseMultiTouchEvent *ev)=0
 
- Public Member Functions inherited from RSOInterface2
virtual ResourceHandle CreateResourceHandle (const char *resourceName)=0
 
virtual void ReleaseResourceHandle (ResourceHandle resourceHandle)=0
 
virtual bool IsResourceHandleValid (ResourceHandle resourceHandle)=0
 
virtual void SetResource (ResourceHandle resourceHandle, const char *resourceVal)=0
 
virtual const char * GetResource (ResourceHandle resourceHandle)=0
 
virtual void SetIntResource (const char *resourceName, long resourceVal)=0
 
virtual long GetIntResource (const char *resourceName)=0
 
virtual void SetIntResource (ResourceHandle handle, long resourceVal)=0
 
virtual long GetIntResource (ResourceHandle resourceHandle)=0
 
virtual void SetFloatResource (const char *resourceName, double resourceVal)=0
 
virtual double GetFloatResource (const char *resourceName)=0
 
virtual void SetFloatResource (ResourceHandle handle, double resourceVal)=0
 
virtual double GetFloatResource (ResourceHandle resourceHandle)=0
 
virtual const char * GetResource (const char *resourceName)=0
 
virtual void SetResource (const char *resourceName, const char *resourceVal)=0
 
- Public Member Functions inherited from RSOInterface1
virtual void Calculate (double time)=0
 The RSO Interface methods. More...
 
virtual void PreDraw (const OpenGLMatrices &current, Culler &culler)=0
 
virtual void Draw ()=0
 
virtual void SetResource (const char *resourceName, const char *resourceVal)=0
 
virtual const char * GetResource (const char *resourceName)=0
 
virtual const char * GetResources (ResourceFilter *filter=0)=0
 
virtual bool HandleInput (Event *ev)=0
 
virtual bool SetEmittedEventHandler (EmittedEventHandler *handler)=0
 
virtual bool Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices)=0
 
virtual bool GetBoundingSphere (Vector *center, float *radius)=0
 
virtual bool GetBoundingBox (Vector *min, Vector *max, const MatrixD *transform=0)=0
 
virtual RSOInterface1CloneObject ()=0
 
virtual void DeleteInstance ()=0
 Safely delete the object. More...
 

Protected Member Functions

virtual ~RSOInterface4 ()
 Protected destructor so it can't be deleted directly.
 
- Protected Member Functions inherited from RSOInterface3
virtual ~RSOInterface3 ()
 Protected destructor so it can't be deleted directly.
 
- Protected Member Functions inherited from RSOInterface2
virtual ~RSOInterface2 ()
 Protected destructor so it can't be deleted directly.
 
- Protected Member Functions inherited from RSOInterface1
virtual ~RSOInterface1 ()
 Protected destructor so it can't be deleted directly.
 

Additional Inherited Members

- Static Public Member Functions inherited from RSOInterface1
static unsigned int strlen (const char *str)
 
static char * strcpy (char *dest, const char *src)
 

Detailed Description

The RSOInterface4 class defines an abstract interface to an RSO instance.

Member Function Documentation

◆ RegisterResourceObserver()

virtual CallbackID RegisterResourceObserver ( ResourceHandle  resourceHandle,
ResourceObserver observer 
)
pure virtual

Register a resource observer to be notified when a resource changes *

Parameters
resourceHandlethe resource handle
observerthe observer to be notified. The RSO takes ownership of the observer and will call Destroy to delete it when needed.
Returns
the id used to unregister the observer in combination with the original resourceHandle

Implemented in GlsRSOInterfaceImpl.

◆ UnregisterResourceObserver()

virtual void UnregisterResourceObserver ( ResourceHandle  resourceHandle,
CallbackID  id 
)
pure virtual

Unregister a resource observer

Parameters
resourceHandlethe resource handle used to register the observer
idthe id used to register the resource observer

Implemented in GlsRSOInterfaceImpl.


The documentation for this class was generated from the following file: