DataDirector API
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
DDD_RSOAsset Class Reference

The DDD_RSOAsset class. DataDirector asset class that controls GL Studio RSOs. More...

#include <DDD_RSOAsset.h>

Inheritance diagram for DDD_RSOAsset:
DDD_AssetBase DDD_AttributeObserver DDD_ObjectEventSubscriber DDD_AttributeContainer DDD_Base DDD_LogFacade

Public Member Functions

virtual const char * Description ()
 
virtual bool Live ()
 
virtual void PopulateAttributeList ()
 
virtual const char * ClassName ()
 
virtual void SetInstanceName (const char *name)
 
virtual void Start ()
 
virtual void Calculate (double time)
 
virtual void Resume ()
 
virtual void GenerateInstanceName (const DDD_AssetList &assetList)
 
virtual void OnAttributeChanged (DDD_AttributeBase *attribute)
 
void SetTopLevelDisplayFrame (disti::DisplayFrame *frame)
 
int HandleComponentEvent (ComponentBase *self, DisplayEvent *ev)
 
virtual void PostEvent (DDD_ObjectEvent *newEvent)
 
void SetDDDControlsClock (bool val)
 
- Public Member Functions inherited from DDD_AssetBase
 DDD_AssetBase (DDD_AssetContainer *container)
 
virtual ~DDD_AssetBase ()
 
const char * DataDirectorVersion ()
 
DDD_AttributeBaseGetAttribute (const char *attributeName)
 
DDD_AttributeBaseGetAttribute (int index)
 
const char * GetAttributeNames ()
 
DDD_AssetContainerGetContainer ()
 
int NumberOfConnections ()
 
int NumberOfAttributes ()
 
virtual void AddDynamicAttribute (DDD_AttributeBase *attrib)
 
virtual void RefreshAttributesList ()
 
bool AddAssetObserver (DDD_AssetObserver *observer)
 
bool RemoveAssetObserver (DDD_AssetObserver *observer)
 
virtual void Stop ()
 
virtual void Pause ()
 
void RevertAttributes ()
 
virtual DDD_AttributeBaseFindAttributeLocalScope (const std::string &name, void *userData)
 
virtual void ExecuteLuaScript (const char *script, void *userData)
 
virtual bool EvaluateLuaScript (const char *script, void *userData)
 
- Public Member Functions inherited from DDD_Base
 DDD_Base ()
 
virtual ~DDD_Base ()
 
const char * GetInstanceName () const
 
virtual void SetParams (const DDD_AttributeList &params)
 
virtual DDD_AttributeListGetParams ()
 

Static Public Attributes

static const char *const DDD_RSO_ASSET_CLASSNAME
 

Protected Member Functions

virtual disti::DDD_AttributeBaseGetDictionaryAttribute (const char *attributeName)
 
- Protected Member Functions inherited from DDD_AssetBase
void NotifyAttributeListAdded ()
 
void NotifyAttributeListDeleted ()
 
void CreateLua ()
 
void DestroyLua ()
 

Protected Attributes

bool _DDD_ControlsClock
 
- Protected Attributes inherited from DDD_AssetBase
DDD_AttributeList _attributes
 
bool _refreshAttributeList
 
DDD_AssetContainer_container
 
void * _luaState
 
AssetObserverList _assetObserverList
 
- Protected Attributes inherited from DDD_Base
std::string _instanceName
 
DDD_AttributeList _params
 

Static Protected Attributes

static RSOAssetList _rsoAssetList
 

Additional Inherited Members

- Static Public Member Functions inherited from DDD_AssetBase
static bool IsAssetNameLegal (const std::string &assetName)
 
- Static Public Member Functions inherited from DDD_LogFacade
static void LogDebug (const char *format,...)
 
static void LogInfo (const char *format,...)
 
static void LogWarning (const char *format,...)
 
static void LogError (const char *format,...)
 

Detailed Description

The DDD_RSOAsset class. DataDirector asset class that controls GL Studio RSOs.

Member Function Documentation

virtual void Calculate ( double  time)
virtual

calculate to pump the asset

Implements DDD_AssetBase.

virtual const char* ClassName ( )
inlinevirtual

Returns asset type (class) name

< Hard-coded identifier for this asset class.

Implements DDD_AssetBase.

virtual const char* Description ( )
inlinevirtual

Describes the Asset (for UI)

Implements DDD_AssetBase.

virtual void GenerateInstanceName ( const DDD_AssetList assetList)
virtual

Generates unique asset instance name

Parameters
assetListList of assets used to check uniqueness of name
Postcondition
_instanceName will have a unique identifier string

Reimplemented from DDD_AssetBase.

virtual disti::DDD_AttributeBase* GetDictionaryAttribute ( const char *  attributeName)
protectedvirtual

Gets an attribute from the assets internal dictionary and add it to the list of published attributes for the asset.

Parameters
attributeNameThe name of the attribute to get
Returns
A pointer to the attribute or NULL if it doesn't exist.

Implements DDD_AssetBase.

int HandleComponentEvent ( ComponentBase *  self,
DisplayEvent *  ev 
)

Event handler for direct connection to a component, not via the RSO interface This is used when Data Director is embedded into an RSO or glsDisplayFrame

Parameters
selfThe component producing the event
evThe event to handle
Returns
1 If this method handled the event
virtual bool Live ( )
inlinevirtual

Is this asset currently running?

Implements DDD_AssetBase.

virtual void OnAttributeChanged ( DDD_AttributeBase attribute)
virtual

A callback method that will be called when the attribute being observed changes if this observer has registered to be notified on attribute change

Parameters
attributeA pointer to the attribute that changed

Implements DDD_AttributeObserver.

virtual void PopulateAttributeList ( )
virtual

Poll asset, put all "discovered" assets into _attributList

Precondition
_attributeList is empty
Postcondition
_attributeList will contain the list of attributes discovered from the asset

Implements DDD_AssetBase.

virtual void PostEvent ( DDD_ObjectEvent newEvent)
virtual

Posts an event to the ObjectEvent subscriber

Parameters
newEventThe event to post to the subscriber. The subscriber must make a local copy of this event

Implements DDD_ObjectEventSubscriber.

virtual void Resume ( )
virtual

Resume asset. Do allocations, initializations that should happen when the asset is resumed

Reimplemented from DDD_AssetBase.

void SetDDDControlsClock ( bool  val)
inline

Sets the DDD_ControlsClock flag, which determines whether DataDirector should call Calculate on this component

Parameters
valIf true, Data Director will call Calculate on this component during the Data Director Calculate traversal
virtual void SetInstanceName ( const char *  name)
virtual

Set the instance name for this asset

Parameters
nameThe instance name to set

Reimplemented from DDD_Base.

void SetTopLevelDisplayFrame ( disti::DisplayFrame *  frame)

Sets the _topLevelDisplayFrame member, which is only used when the DataDirector is being embedded into a GlsDisplayFrame via the GlsDisplayFrame adapter

virtual void Start ( )
virtual

Start asset. Do allocations, initializations that should only happen once.

Reimplemented from DDD_AssetBase.

Member Data Documentation

bool _DDD_ControlsClock
protected

If this flag is true, then Data Director is controlling the Calculate clock. If it's false then the component is doing Calculate on its own and Data Director won't call calculate on it

RSOAssetList _rsoAssetList
staticprotected

List of all loaded RSO assets

const char* const DDD_RSO_ASSET_CLASSNAME
static

Classname string constant. Needed by the AssetFactory


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