Interfaces


Detailed Description

Abstract structures that allow cross-component communication in an implementation, compiler and library independant manner.


Modules

 Containers
 These interfaces are for the purpose of collecting, containing and transferring information between components in an implementation independant manner.
 Core
 These are interfaces used by, and for working with, the Core of the system.
 Agent Management
 An Agent is a semi-autonomous concept within a simulation.
 User Representation
 These interfaces represent the initial concept for how user presence within a simulation should be managed.
 3D Visuals
 These DInterfaces are from the original design of how a 3D renderer should expose it's internal objects.
 User Input Interfaces
 User Input is a system of taking events provided by the user, such as keypresses and mouse movement, and making it available to the system in an abstract manner.
 Generic Interfaces
 These are interfaces that do not fit in any other group.
 Generic GUI Interfaces
 Interfaces related to working with an overlay GUI.
 Audio Interfaces
 The current implementation (3DAudio_OpenAL, 28th Aug 2007) only supports playback of uncompressed PCM WAV files.
 SceneGraph
 These are very generic DInterfaces for the ordering and heirachy of rendering objects.
 Physics
 These are interfaces used for fine control of real time physics simulation.
 Implementation Specific
 These interfaces closely match the inner workings of the implementation.

Data Structures

struct  DigitalSpaces::DIObjectBase
 Base Interface for all inter-module objects. More...
struct  DigitalSpaces::DIEventSubscriber1
 Used as a call-back from modules that create events. More...
struct  DigitalSpaces::DIAcceptConfiguration1
 DInterface used for configuring an implementation in a generic manner. More...

State Functions

A State is the way that a Controller can affect how the Agent implementation performs.

States can be set with any floating point value, however the values that are valid for a particular State are dependant on the Agent Implementation. Common values are from 0.0 to 1.0 (completely off to completely on), especially when dealing with binary States that are truely either on or off. Multiple States can be "set" (larger then 0.0) at any time, however the results of this are dependant on the Implementation.

void DigitalSpaces::DIAgent1::ActivateState (const char *stateName)
 Sets specified State level to 1.0. This is a shortcut for SetStateLevel( stateName, 1.0 ).
void DigitalSpaces::DIAgent1::DeactivateState (const char *stateName)
 Sets specified State level to 0.0. This is a shortcut for SetStateLevel( stateName, 0.0 ).
void DigitalSpaces::DIAgent1::SetStateLevel (const char *stateName, float stateLevel)
 Sets specified State to specified level. This does not affect the level of any other States.
void DigitalSpaces::DIAgent1::SetState (const char *stateName)
 Sets the specified State level to 1.0, sets all other State levels to 0.0.
void DigitalSpaces::DIAgent1::GetStateList (DIStringList1 *iList)
 Get a list of all the states this implementation supports.
float DigitalSpaces::DIAgent1::GetStateLevel (const char *stateName)
 Returns the current level of the specified State.

Private functions.

These functions are called by the Agent Manager.

They should not be called by anything else.

bool DigitalSpaces::DIAgent1::RenderFrame (float fDelta)
 Called once per frame by the AgentManager.
void DigitalSpaces::DIAgent1::SelfDestruct ()
 Called during cleanup by the AgentManager.

Animation Control

void DigitalSpaces::DI3DVisualsEntity1::PlayAnimation (const char *sAnimationName, double dSpeed=1.0)
void DigitalSpaces::DI3DVisualsEntity1::PlayAnimationTarget (const char *sAnimationName, double dTarget)
void DigitalSpaces::DI3DVisualsEntity1::StopAnimation (const char *sAnimationName)
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationApplied (const char *sAnimationName, bool bEnabled=true)
 Applies the animation, but does not advance it.
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationLoop (const char *sAnimationName, bool bLoop)
 Loops the animation (true by default).
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationWeight (const char *sAnimationName, double dWeight)
 Set animation weight. This is as relative to total weights.
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationWeightChange (const char *sAnimationName, double dWeightChange)
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationWeightChangeTarget (const char *sAnimationName, double dWeightTarget)
void DigitalSpaces::DI3DVisualsEntity1::SetAnimationTimePosition (const char *sAnimationName, double dTime)
void DigitalSpaces::DI3DVisualsEntity1::GetAllAnimations (DIStringList1 *iList) const
float DigitalSpaces::DI3DVisualsEntity1::GetAnimationLength (const char *sName)

Position Control

void DigitalSpaces::DI3DVisualsEntity1::GetRelativePosition (out_Vector3f *) const
 This is its position relative to its parent.
void DigitalSpaces::DI3DVisualsEntity1::GetAbsolutePosition (out_Vector3f *) const
 This is its position in absolute terms.
void DigitalSpaces::DI3DVisualsEntity1::Move (in_Vector3f *vecMovement)
 This moves the entity. (In Parent space? Scale, rotation?).
void DigitalSpaces::DI3DVisualsEntity1::SetRelativePosition (in_Vector3f *vecPosition)
void DigitalSpaces::DI3DVisualsEntity1::SetVelocity (in_Vector3f *vecVelocity)
void DigitalSpaces::DI3DVisualsEntity1::GetVelocity (out_Vector3f *pVelocity)
void DigitalSpaces::DI3DVisualsEntity1::SetVelocityTarget (in_Vector3f *vecVelocity)
 Position to stop at when the current velocity puts you there.

Orientation Control

void DigitalSpaces::DI3DVisualsEntity1::GetOrientation (out_Quaternionf *pOrientation) const
void DigitalSpaces::DI3DVisualsEntity1::SetOrientation (in_Quaternionf *quatRot)
void DigitalSpaces::DI3DVisualsEntity1::SetOrientation (const float &X, const float &Y, const float &Z)
void DigitalSpaces::DI3DVisualsEntity1::Rotate (in_Quaternionf *quatRot)
void DigitalSpaces::DI3DVisualsEntity1::Rotate (const float &X, const float &Y, const float &Z)
void DigitalSpaces::DI3DVisualsEntity1::SetSlerp (const float &fTimeMultiplier, in_Quaternionf *fSrcQuat, in_Quaternionf *fDestQuat)

Position Control

void DigitalSpaces::DI3DVisualsNode1::GetRelativePosition (out_Vector3f *) const
 This is its position relative to its parent.
void DigitalSpaces::DI3DVisualsNode1::GetAbsolutePosition (out_Vector3f *) const
 This is its position in absolute terms.
void DigitalSpaces::DI3DVisualsNode1::Move (in_Vector3f *vecMovement)
 This moves the entity. (In Parent space? Scale, rotation?).
void DigitalSpaces::DI3DVisualsNode1::SetRelativePosition (in_Vector3f *vecPosition)
void DigitalSpaces::DI3DVisualsNode1::SetVelocity (in_Vector3f *vecVelocity)
void DigitalSpaces::DI3DVisualsNode1::GetVelocity (out_Vector3f *)
void DigitalSpaces::DI3DVisualsNode1::SetVelocityTarget (in_Vector3f *vecVelocity)
 Position to stop at when the current velocity puts you there.

Orientation Control

void DigitalSpaces::DI3DVisualsNode1::GetOrientation (out_Quaternionf *) const
void DigitalSpaces::DI3DVisualsNode1::SetOrientation (in_Quaternionf *quatRot)
void DigitalSpaces::DI3DVisualsNode1::SetOrientation (const float &X, const float &Y, const float &Z)
void DigitalSpaces::DI3DVisualsNode1::Rotate (in_Quaternionf *quatRot)
void DigitalSpaces::DI3DVisualsNode1::Rotate (const float &X, const float &Y, const float &Z)
void DigitalSpaces::DI3DVisualsNode1::SetSlerp (const float &fTimeMultiplier, in_Quaternionf *fSrcQuat, in_Quaternionf *fDestQuat)

Heirachy Control

DI3DVisualsNode1 * DigitalSpaces::DI3DVisualsNode1::GetParent ()
void DigitalSpaces::DI3DVisualsNode1::addChild (DI3DVisualsNode1 *pNewChild)

Positioning

Functions for getting and setting the GUI Element's position

float DigitalSpaces::DI3DVisualsGUIElement1::getXPosition ()
 Return the X (horizontal) position of the GUI element.
float DigitalSpaces::DI3DVisualsGUIElement1::getYPosition ()
 Return the Y (vertical) position of the GUI element.
void DigitalSpaces::DI3DVisualsGUIElement1::setXPosition (const float fX)
 Set the X (horizontal) position of the GUI element.
void DigitalSpaces::DI3DVisualsGUIElement1::setYPosition (const float fY)
 Set the Y (vertical) position of the GUI element.

Path Related Functions.

These functions are used to get the assorted paths the DSS system uses.

This was previously required because each component had to do its own file accessing. It should be less needed in more recent builds, due to the addition of the ResourceManager and it's path search mechanism, but the functions remain. The paths provided from these functions can be used with the ResourceManager to cause it to do an absolute file open, without doing the search path process.

const char * DICore1::GetConfigurationPath ()
 Returns the path where DSS stores it's configuration files.
const char * DICore1::GetPluginPath ()
 Returns the path where DSS loads add-on DLL files from.
const char * DICore1::GetModulePath ()
 Returns the path where DSS loads component DLL files from.
const char * DICore1::GetSpaceFile ()
 Returns the path of the currently executing .space file.
const char * DICore1::GetSpaceBasePath ()
 Returns the path to the folder the currently executing .space file is stored in.

OS PATH Environment Variable Functions

Provide these as a helper for the plugins.

Component creators should be aware that the Core automatically adds a (ModulePath)\(NameOfModule)\ directory to the search path when loading a component. Previously, components had to use these functions to do this, but it occured often enough and was helpful enough to make standard.

void DICore1::AddToPathVariable (const char *pDirectory)
 Appends the specified directory to the PATH enviroment variable.
void DICore1::ResetPathVariable ()
 Undoes the effect of the last AddToPathVariable call.

Enumerations

enum  { DigitalSpaces::strctKeyEvent::ET_NOTHING, DigitalSpaces::strctKeyEvent::ET_PRESSED, DigitalSpaces::strctKeyEvent::ET_RELEASED, DigitalSpaces::strctKeyEvent::ET_CLICKED }

Functions

void DigitalSpaces::DIAgent1::SetVelocityNextCollision (in_Vector3f *velocity)
 Velocity is not applied immediately, but until the agent touches something.
void DigitalSpaces::DIAgent1::SetRotation (in_Vector3f *rotation)
 Set the target rotation (change in orientation per second) for the agent.
void DigitalSpaces::DIAgent1::SetPosition (in_Vector3f *position)
 Set the target position for the Agent.
void DigitalSpaces::DIAgent1::SetOrientation (in_Quaternionf *orientation)
 Set the target orientation for the Agent.
void DigitalSpaces::DIAgent1::GetPosition (out_Vector3f *position)
 Returns the current position of the Agent.
void DigitalSpaces::DIAgent1::GetVelocity (out_Vector3f *velocity)
 Returns the current velocity of the Agent.
void DigitalSpaces::DIAgent1::GetRotation (out_Vector3f *rotat)
 Returns the current rotation (change in orientation over time) of the Agent.
void DigitalSpaces::DIAgent1::GetOrientation (out_Quaternionf *orientation)
 Returns the current orientation of the Agent.
const char * DigitalSpaces::DIAgent1::GetName ()
 Returns the name given to the Agent Implementation when it was created by the Agent Manager.
DISGBase * DigitalSpaces::DIAgent1::GetCentralNode ()
 Returns the "cnetral node" of the Agent.
DIAgent1 * DigitalSpaces::DIAgentManager1::GetAgent (const char *name)
 Returns an interface to an existing Agent.
void DigitalSpaces::DIAgentManager1::GetAgentList (DIStringList1 *iList)
 Provides a list of names of instanced Agents.
void DigitalSpaces::DIAgentManager1::AddTemplate (const char *name, const char *file)
 A Template is an XML file that contains configuration data for both the Agent Manager (what implementation to instance), and data for the implementation.
void DigitalSpaces::DIAgentManager1::GetTemplateList (DIStringList1 *iList)
 Provides a list of names of parsed Templates.
void DigitalSpaces::DIUser1::SetPosition (in_Vector3f *vecPosition)
 Sets the user representations position in global co-ordinates.
void DigitalSpaces::DIUser1::SetAbsoluteVelocity (in_Vector3f *vecVelocity)
 Sets the user representations velocity in global coordinates.
void DigitalSpaces::DIUser1::SetVelocityTarget (in_Vector3f *vecTarget)
 You know what, I don't know what this is supposed to do.
void DigitalSpaces::DIUser1::RotateRelative (const float &fXAxis, const float &fYAxis, const float &fZAxis)
 Rotates the user representation relative to its current orientation.
void DigitalSpaces::DIUser1::SetOrientation (in_Quaternionf *quatRot)
 Sets the orientation of the user representation.
void DigitalSpaces::DIUser1::GetPosition (out_Vector3f *pPosition)
 Returns the current position of the user, as understood by this implementation.
void DigitalSpaces::DIUser1::GetOrientation (out_Quaternionf *pOrientation)
 Returns the current orientation of the user, as understood by this implementation.
void DigitalSpaces::DIUser1::SetSlerp (const float &fTimeMultiplier, in_Quaternionf *fSrcQuat, in_Quaternionf *fDestQuat)
 Sets the rate the user representation should be blended between two orientations.
void DigitalSpaces::DI3DVisualsEntity1::Dump () const
 Temporary function.
void DigitalSpaces::DI3DVisualsEntity1::AttatchEntityToBone (const char *boneName, DI3DVisualsEntity1 *pEntity, in_Quaternionf *quatOffset, in_Vector3f *vecOffset)
void DigitalSpaces::DI3DVisualsEntity1::DetatchEntityFromBone (const char *objectName)
void DigitalSpaces::DI3DVisualsEntity1::AttatchToSceneNode (const char *nodeName)
const char * DigitalSpaces::DI3DVisualsEntity1::GetName ()
void DigitalSpaces::DI3DVisualsEntity1::SetFloatingText (const char *)
const char * DigitalSpaces::DI3DVisualsNode1::getName () const
DI3DVisualsNode1 * DigitalSpaces::DI3DVisuals1::GetNode (const char *sNodeName)
void DigitalSpaces::DI3DVisuals1::SetTimeMultiplier (const float fMultiplier)
unsigned int DigitalSpaces::DI3DVisuals1::getDisplayWidth ()
unsigned int DigitalSpaces::DI3DVisuals1::getDisplayHeight ()
void DigitalSpaces::DI3DVisuals1::GetAllEntityNames (DIStringList1 *iList)
DI3DVisualsNode1 * DigitalSpaces::DI3DVisuals1::GetRootNode ()
void DigitalSpaces::DI3DVisuals1::SetParticleEffectActive (const char *sName, bool bActive)
strctKeyEvent DigitalSpaces::DIUserInputKeyboard1::GetKeyEvent ()
bool DigitalSpaces::DIWin32Window1::IsFullScreen ()
 Used by the Core to detect if the application window needs minimizing before displaying the browsing windows for DIFileSystemBrowser::SelectFile and DIFileSystemBrowser::SelectFolder.
const char * DigitalSpaces::DI3DVisualsGUIElement1::getText () const
 Get the text being displayed on this GUI element.
bool DigitalSpaces::DI3DVisualsGUIElement1::isClicked ()
 Returns if the GUI element has been clicked.
void DigitalSpaces::DI3DVisualsGUIElement1::show ()
 Makes the GUI element visible.
void DigitalSpaces::DI3DVisualsGUIElement1::hide ()
 Makes the GUI element no longer visible.
bool DigitalSpaces::DI3DVisualsGUIElement1::isClosed ()
 Returns if a window has been closed.
void DigitalSpaces::DI3DVisualsGUIElement1::setAlpha (const float fAlpha)
 Sets the visible transperency of the GUI element.
bool DigitalSpaces::DI3DVisualsGUIElement1::isMouseButtonDown ()
 Returns if the mouse button is currently down.
bool DigitalSpaces::DI3DVisualsGUIElement1::isMouseButtonUp ()
 Returns if the mouse button is currently up.
void DigitalSpaces::DI3DVisualsGUIElement1::setEnabled (bool bEnabled)
 Sets if the GUI element can be interacted with.
bool DigitalSpaces::DI3DVisualsGUIElement1::gainedFocus ()
 Returns if the GUI element has gained focus.
bool DigitalSpaces::DI3DVisualsGUIElement1::lostFocus ()
 Returns if the GUI element has lost focus.
void DigitalSpaces::DI3DVisualsGUI1::ActivateCursor ()
 Makes the graphical representation of the mouse cursor visible.
void DigitalSpaces::DI3DVisualsGUI1::DeactivateCursor ()
 Makes the graphical representation of the mouse cursor invisible.
float DigitalSpaces::DI3DVisualsGUIScrollBar1::getScrollPosition ()
 Returns the position of the scroll "thumb".
void DigitalSpaces::DI3DVisualsGUIScrollBar1::setScrollPosition (float fPosition)
 Sets the position of the scroll "thumb".
void DigitalSpaces::DI3DVisualsGUIScrollBar1::setScrollSize (float fSize)
 Sets the size of the scrollbar ("document").
void DigitalSpaces::DI3DVisualsGUIComboBox1::addItem (const char *sItemText)
 Adds an item to the drop down list.
void DigitalSpaces::DI3DVisualsGUIComboBox1::removeItem (const char *sItemText)
 Removes an item from the drop down list.
void DigitalSpaces::DI3DVisualsGUIComboBox1::resetList ()
 Removes every item from the drop down list.
void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::addColumn (const char *sColumnText, float fWidth)
 Adds a column to the GUI element.
void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::addItem (DIStringList1 *sItem)
 Adds a row to the bottom of the list, setting the text of each column.
void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::getSelection (DIStringList1 *iList) const
 Returns the text entries for each column for the currently selected row.
bool DigitalSpaces::DI3DVisualsGUIMultiColumnList1::hasSelectionChanged ()
 Returns if an item has been selected from the drop down list.
void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::removeItem (DIStringList1 *sItem)
 Removes a row from the GUI element.
void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::getAllItems (DIObjectBaseList1 *iList)
 Returns the contents of every row and column in the GUI element.
void DigitalSpaces::DI3DVisualsGUICheckbox1::setChecked (const bool bChecked)
 Sets the checked state of the GUI element.
void DigitalSpaces::DI3DAudioEntity1::Stop ()
 DigitalSpaces::DInterfaceWithParent (DIAcceptConfiguration2, DIAcceptConfiguration1) void GetConfigurationPropertyCategories(DIStringList1 *categoryNames)
 Provide the configuration property categories names.
void DigitalSpaces::GetConfigurationPropertyNamesForCategory (const char *categoryName, DIStringList1 *propertyNames)
 May change over lifetime of Component, in response to changes to other properties.
const char * DigitalSpaces::GetConfigurationPropertyValue (const char *categoryName, const char *propertyName)
 Retreive the value of a property.
void DigitalSpaces::GetConfigurationPropertyOptions (const char *categoryName, const char *propertyName, DIStringList1 *propertyOptions)
 Retreive the possible values for a property.
void DigitalSpaces::SetConfigurationPropertyValue (const char *categoryName, const char *propertyName, const char *propertyValue)
 Set the value of a property.
void DIStoreConfiguration1::StoreConfiguration (const DUID *ConfID, DIXMLNode1 *pChunkNode)
 Extract configuration data about the component.
void DICore1::SetTimeoutEvent (const char *pszEventName, float fTimeout, DIEventSubscriber1 *pEventSubscriber)
 Create a callback event that will be called after a period of time.
void DICore1::RemoveTimeoutEvent (const char *pszEventName)
 Remove a callback event that was previously requested.
float DICore1::GetTime ()
 Returns the internal time as calculated by the Core.
unsigned long DICore1::GetTimeInMS ()
 Returns the real time taken since the Core started the PerformHeartbeat state.
unsigned long DIDataResource::GetResourceSize ()
 Returns the size (in bytes) of the data resource.
unsigned long DIDataResource::GetPosition ()
 Returns the current position (in bytes) that GetCharacters will return data from.
bool DIDataResource::SeekResource (unsigned long position)
 Alters the current position (in bytes) that GetCharacters will return data from.
DIDataResourceDIDataResourceManager::GetResource (const char *sURL)
 Returns a data resource.
void DIDataResourceManager::GetResourceNames (DIStringList1 *list)
 Returns the names of all the resources currently available.
const char * DIFileSystemBrowser::SelectFolder (const char *requiredFile)
 Bring up the default File Browser dialog, to select a folder to load an XML file from.
float DIScheduledObject::PerformPublicStartupStep ()
 Instructs the implementation to perform initialization work, while allowing access to other components.
bool DIScheduledObject::PerformHeartbeat (float fDeltaTime, float fDeltaRealTime)
 The main work function of an implementation, this is called periodically by the Core.
void DIScheduledObject::StopFactory ()
 Instructs the implementation to perform cleanup, in preperation for being unloaded.
unsigned long DIScheduledObject::GetMaxRunInterval ()
 Returns the maximum number of heartbeats (10ms) that should occur between calls to PerformHeartbeat.
unsigned long DIScheduledObject::GetMinRunInterval ()
 Returns the minimum number of heartbeats (10ms) that should occure between calls to PerformHeartbeat.
const char * DIScheduledObject::GetDescriptiveName ()
 Returns a human readable descriptive name of the implementation, for use in logging and debug output.
void DIDataTransfer1::RegisterAsListening (DIAcceptConfiguration1 *listener, const DUID *chunkID)
 Register an object to receive any received XML "chunk" fragments that match the format specified by the chunkID.

Variables

char DigitalSpaces::strctKeyEvent::character
 This is a "pretty" version of the keypress, and is the text representation of the key (if it has one).
unsigned int DigitalSpaces::strctKeyEvent::key
 This keycode matches the DirectX/DirectInput keycodes.
enum
DigitalSpaces::strctKeyEvent:: { ... }  
DigitalSpaces::strctKeyEvent::eventType

Enumeration Type Documentation

anonymous enum [inherited]

Enumerator:
ET_NOTHING 
ET_PRESSED 
ET_RELEASED 
ET_CLICKED 


Function Documentation

void DigitalSpaces::DI3DVisualsGUI1::ActivateCursor (  )  [inherited]

Makes the graphical representation of the mouse cursor visible.

Note:
This is the themed representation provided by the GUI, not the OS.

void DigitalSpaces::DIAgent1::ActivateState ( const char *  stateName  )  [inherited]

Sets specified State level to 1.0. This is a shortcut for SetStateLevel( stateName, 1.0 ).

void DigitalSpaces::DI3DVisualsNode1::addChild ( DI3DVisualsNode1 pNewChild  )  [inherited]

void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::addColumn ( const char *  sColumnText,
float  fWidth 
) [inherited]

Adds a column to the GUI element.

It will be added as the rightmost column.

Parameters:
sColumnText The text to be displayed as the title of the column
fWidth The width of the column element, as a percentage (from 0.0 to 1.0) of the total GUI element with. Note that the GUI element width includes any scrollbars, so that having column widths adding up to 1.0 will overlap the scroll bar.

void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::addItem ( DIStringList1 sItem  )  [inherited]

Adds a row to the bottom of the list, setting the text of each column.

Parameters:
sItem A list containing text to be added, in order of the columns in the GUI element.
Note:
The text added does not need to be unique.

void DigitalSpaces::DI3DVisualsGUIComboBox1::addItem ( const char *  sItemText  )  [inherited]

Adds an item to the drop down list.

No checking is done on the item, you may add duplicate entries.

void DigitalSpaces::DIAgentManager1::AddTemplate ( const char *  name,
const char *  file 
) [inherited]

A Template is an XML file that contains configuration data for both the Agent Manager (what implementation to instance), and data for the implementation.

Parameters:
name A unique name to assign this template. Used in CreateAgent.
file The name of a Resource. This will be loaded through any available DIResourceManager.

void DICore1::AddToPathVariable ( const char *  pDirectory  )  [inherited]

Appends the specified directory to the PATH enviroment variable.

Useful for components that want to load DLLs.

void DigitalSpaces::DI3DVisualsEntity1::AttatchEntityToBone ( const char *  boneName,
DI3DVisualsEntity1 pEntity,
in_Quaternionf quatOffset,
in_Vector3f vecOffset 
) [inherited]

void DigitalSpaces::DI3DVisualsEntity1::AttatchToSceneNode ( const char *  nodeName  )  [inherited]

void DigitalSpaces::DI3DVisualsGUI1::DeactivateCursor (  )  [inherited]

Makes the graphical representation of the mouse cursor invisible.

Note:
This is the themed representation provided by the GUI, not the OS.

Not sure if this merely controls visibility, or if the mouse can no longer interact with GUI elements.

void DigitalSpaces::DIAgent1::DeactivateState ( const char *  stateName  )  [inherited]

Sets specified State level to 0.0. This is a shortcut for SetStateLevel( stateName, 0.0 ).

void DigitalSpaces::DI3DVisualsEntity1::DetatchEntityFromBone ( const char *  objectName  )  [inherited]

DigitalSpaces::DInterfaceWithParent ( DIAcceptConfiguration2  ,
DIAcceptConfiguration1   
)

Provide the configuration property categories names.

A configuration property category is a grouping of configuration information. For example: "Graphics". Each configuration category will have sub properties. Many (most?) Components will only export 0 or 1 categories. Category names are not expected to change over the lifetime of a Component.

Parameters:
[out] categoryNames Will have the names of configuration cattegories appended.

void DigitalSpaces::DI3DVisualsEntity1::Dump (  )  const [inherited]

Temporary function.

bool DigitalSpaces::DI3DVisualsGUIElement1::gainedFocus (  )  [inherited]

Returns if the GUI element has gained focus.

The commonest way for a GUI element to gain focus to for the user to click on it.

Note:
Tabbing may also cause this?
The current implementation returns if the element has gained focus since the last time this function was called, or since creation if the function has not been called before.
Note:
This only returns if the GUI element has gained focus, not that it still has it.

void DigitalSpaces::DI3DVisualsNode1::GetAbsolutePosition ( out_Vector3f  )  const [inherited]

This is its position in absolute terms.

void DigitalSpaces::DI3DVisualsEntity1::GetAbsolutePosition ( out_Vector3f  )  const [inherited]

This is its position in absolute terms.

DIAgent1* DigitalSpaces::DIAgentManager1::GetAgent ( const char *  name  )  [inherited]

Returns an interface to an existing Agent.

This Agent needs to have been created by CreateAgent before hand.

void DigitalSpaces::DIAgentManager1::GetAgentList ( DIStringList1 iList  )  [inherited]

Provides a list of names of instanced Agents.

Parameters:
[out] iList String list to have the Agent Implementation names appended to it. The name is the agentName parameter from DIAgentManager1::CreateAgent.

void DigitalSpaces::DI3DVisualsEntity1::GetAllAnimations ( DIStringList1 iList  )  const [inherited]

void DigitalSpaces::DI3DVisuals1::GetAllEntityNames ( DIStringList1 iList  )  [inherited]

void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::getAllItems ( DIObjectBaseList1 iList  )  [inherited]

Returns the contents of every row and column in the GUI element.

The function provides list of DIObjectBase which all implement DIStringList1

Parameters:
[out] iList An object list that will have a String List representing each row.
Note:
The values returned are copies of the GUI elements text entries, and altering the returns list will not affect the values displayed on the GUI.

The current implementation (GUI_CEGUI) populates this list using a pool of objects. If the list is too long, the initial items values will be replaced with the values of later items. The currently implemented limit is 10 items.

float DigitalSpaces::DI3DVisualsEntity1::GetAnimationLength ( const char *  sName  )  [inherited]

DISGBase* DigitalSpaces::DIAgent1::GetCentralNode (  )  [inherited]

Returns the "cnetral node" of the Agent.

Most Agent implementations will be visually represented (all current implementations fit this). This provides information about a chosen object that can be considered the center of the visual representation.

const char* DICore1::GetConfigurationPath (  )  [inherited]

Returns the path where DSS stores it's configuration files.

In a default install (on Windows) this is C:\Program Files\Digital Spaces\config

Todo:
This should be moved to be stored in the per-user storage area.

void DigitalSpaces::GetConfigurationPropertyNamesForCategory ( const char *  categoryName,
DIStringList1 *  propertyNames 
)

May change over lifetime of Component, in response to changes to other properties.

void DigitalSpaces::GetConfigurationPropertyOptions ( const char *  categoryName,
const char *  propertyName,
DIStringList1 *  propertyOptions 
)

Retreive the possible values for a property.

Not all properties return values for this. May change over lifetime of Component, in response to changes to other properties.

Parameters:
categoryName 
propertyName 
[out] propertyOptions 

const char* DigitalSpaces::GetConfigurationPropertyValue ( const char *  categoryName,
const char *  propertyName 
)

Retreive the value of a property.

All properties are expected to return their current value as a string. In future, may allow other types (float, int, etc. DVariant?). May change over lifetime of Component, in response to changes to other properties.

const char* DIScheduledObject::GetDescriptiveName (  )  [inherited]

Returns a human readable descriptive name of the implementation, for use in logging and debug output.

unsigned int DigitalSpaces::DI3DVisuals1::getDisplayHeight (  )  [inherited]

unsigned int DigitalSpaces::DI3DVisuals1::getDisplayWidth (  )  [inherited]

strctKeyEvent DigitalSpaces::DIUserInputKeyboard1::GetKeyEvent (  )  [inherited]

unsigned long DIScheduledObject::GetMaxRunInterval (  )  [inherited]

Returns the maximum number of heartbeats (10ms) that should occur between calls to PerformHeartbeat.

For the implementation to be called every heartbeat, this should return 1. If your component only needs to perform calculations every second, it should return the value 100. If the implementation wants to be called at every opportunity, it should return 0.

unsigned long DIScheduledObject::GetMinRunInterval (  )  [inherited]

Returns the minimum number of heartbeats (10ms) that should occure between calls to PerformHeartbeat.

This allows an implementation to specify the maximum load this component will apply to the system. If your component only needs to perform calculations every second, it should return the value 100. If the implementation wants to be called at every opportunity, it should return 0.

const char* DICore1::GetModulePath (  )  [inherited]

Returns the path where DSS loads component DLL files from.

In a default install (on Windows) this is C:\Program Files\Digital Spaces\modules . This is used by copmponents who store additional files in their own subfolder in the Module Path. An example of this is GUI_CEGUI.

const char* DigitalSpaces::DI3DVisualsNode1::getName (  )  const [inherited]

const char* DigitalSpaces::DI3DVisualsEntity1::GetName (  )  [inherited]

const char* DigitalSpaces::DIAgent1::GetName (  )  [inherited]

Returns the name given to the Agent Implementation when it was created by the Agent Manager.

DI3DVisualsNode1* DigitalSpaces::DI3DVisuals1::GetNode ( const char *  sNodeName  )  [inherited]

void DigitalSpaces::DI3DVisualsNode1::GetOrientation ( out_Quaternionf  )  const [inherited]

void DigitalSpaces::DI3DVisualsEntity1::GetOrientation ( out_Quaternionf pOrientation  )  const [inherited]

void DigitalSpaces::DIUser1::GetOrientation ( out_Quaternionf pOrientation  )  [inherited]

Returns the current orientation of the user, as understood by this implementation.

Should be in global coordinates.

Parameters:
[out] pOrientation Quaternion to be filled with the current orientation.

void DigitalSpaces::DIAgent1::GetOrientation ( out_Quaternionf orientation  )  [inherited]

Returns the current orientation of the Agent.

Be aware that due to how Agents interpret SetOrientation, this will often be different to what was fed into a previous SetOrientation call. A common behaviour of Agents is to return the orientation of their "central node".

Parameters:
[out] orientation Orientation of the Agent.

DI3DVisualsNode1* DigitalSpaces::DI3DVisualsNode1::GetParent (  )  [inherited]

const char* DICore1::GetPluginPath (  )  [inherited]

Returns the path where DSS loads add-on DLL files from.

In a default install (on Windows) this is C:\Program Files\Digital Spaces\modules

Todo:
This needs better seperation from GetModulePath.

unsigned long DIDataResource::GetPosition (  )  [inherited]

Returns the current position (in bytes) that GetCharacters will return data from.

This will be between 0 and the resource size, as returned by GetResourceSize.

void DigitalSpaces::DIUser1::GetPosition ( out_Vector3f pPosition  )  [inherited]

Returns the current position of the user, as understood by this implementation.

Should be in global coordinates.

Parameters:
[out] pPosition Vector to be filled with the current position.

void DigitalSpaces::DIAgent1::GetPosition ( out_Vector3f position  )  [inherited]

Returns the current position of the Agent.

Be aware that due to how Agents interpret SetPosition, this will often be different to what was fed into a previous SetPosition call. A common behaviour of Agents is to return the position of their "central node".

Parameters:
[out] position Position in world co-ordinates

void DigitalSpaces::DI3DVisualsNode1::GetRelativePosition ( out_Vector3f  )  const [inherited]

This is its position relative to its parent.

void DigitalSpaces::DI3DVisualsEntity1::GetRelativePosition ( out_Vector3f  )  const [inherited]

This is its position relative to its parent.

DIDataResource* DIDataResourceManager::GetResource ( const char *  sURL  )  [inherited]

Returns a data resource.

It will search the URLs added through AddSearchPath for a match, and if not found, attempt to open as an absolute URL.

void DIDataResourceManager::GetResourceNames ( DIStringList1 *  list  )  [inherited]

Returns the names of all the resources currently available.

These are usually added by AddSearchPath, but will also include any added by GetResource with an absolute path.

Parameters:
list String List that will have the available resource names appended to it. The implementation will not clear the content of this list.

unsigned long DIDataResource::GetResourceSize (  )  [inherited]

Returns the size (in bytes) of the data resource.

DI3DVisualsNode1* DigitalSpaces::DI3DVisuals1::GetRootNode (  )  [inherited]

void DigitalSpaces::DIAgent1::GetRotation ( out_Vector3f rotat  )  [inherited]

Returns the current rotation (change in orientation over time) of the Agent.

Be aware that due to how Agents interpret SetRotation, this will often be different to what was fed in to a previous SetRotation call. A common behaviour of physics simulated Agents is to return the rotation (angular velocity) of their main physics body.

Parameters:
[out] rotation Rotation of the Agent, measured in radians per second, around each Euler axis.

float DigitalSpaces::DI3DVisualsGUIScrollBar1::getScrollPosition (  )  [inherited]

Returns the position of the scroll "thumb".

Returns:
Position of the scroll thumb. This is between 0 and the "document" size, as set by DI3DVisualsGUIScrollBar1::setScrollSize.

void DigitalSpaces::DI3DVisualsGUIMultiColumnList1::getSelection ( DIStringList1 iList  )  const [inherited]

Returns the text entries for each column for the currently selected row.

Parameters:
[out] iLi