- page Digital Spaces Interfaces API
- Fill this out
- page Digital Spaces Interfaces API
- Creating a component
- page Digital Spaces Interfaces API
- Providing new DInterfaces
- page Digital Spaces Interfaces API
- Agent Behaviours
- Class DigitalSpaces::DI3DAudioEntity1
- Add rest of 3D Audio functionality (position, orientation, velocity, rotation etc)
- Global DigitalSpaces::DI3DVisualsGUIElement1::isClosed ()
- Put here for now. Later needs to be moved to a Window Element
- Class DigitalSpaces::DIAcceptSettingMap
- Add functions to allow interrogation of what settings are supported, and inspection of the current values. Possible also default value interrogation.
- Class DigitalSpaces::DIAcceptSettingMap
- Consider making this more generic, copy functionality from the DIPhysicsBase design, where using a SettingMap is a shortcut for multiple Set calls.
- Global DigitalSpaces::DICore1::GetConfigurationPath ()
- This should be moved to be stored in the per-user storage area.
- Global DigitalSpaces::DICore1::GetPluginPath ()
- This needs better seperation from GetModulePath.
- Class DigitalSpaces::DIDataResourceManager
- Consider a RemoveSearchPath option.
- Class DigitalSpaces::DIDataTransfer1
- Look at adding a "channel" or "group" id to these functions, to allow selective subgroubs beyond entire space
- Class DigitalSpaces::DIOGREGpuProgram
- Fill this out if/when we decide it's needed
- Class DigitalSpaces::DIOGREIndexData
- Need to flesh this out, because the physics implementation will need it
- Global DigitalSpaces::DIOGRESceneManager::SetShadowTechnique (OGREShadowTechnique technique)
- We need to do these later
- Class DigitalSpaces::DIOGREVertexData
- Need to flesh this out, because the physics implementation will need it
- Class DigitalSpaces::DIOGREViewport
- Fill this out if/when we decide it's needed
- Class DigitalSpaces::DIPhysicsBase
- Other physics interface should inherit from this interface. It is recommended that initialization of physics objects be performed by the SceneGraph and providing appropriate information in the .scene format. However, if creating objects manually, the process is:
- Global DigitalSpaces::DIPhysicsBase::BeginSetup ()
- Should this function be removed and replaced with a call to BeginSetup(const char* sObjectType) where sObjectType is ignored if appropriate for the object?
- Global DigitalSpaces::DIPhysicsCollision::GetShape ()
- Check this is what the current implementation is doing.
- Global DigitalSpaces::DIPhysicsRay::SetRayLength (float length)
- Add an infinite option?
- Class DigitalSpaces::DIScheduledObject
- Give consideration to changing the system, so that rather then GetComponentInfo returning a structure that contains DIScheduledObject, the DICore supports being given a DIScheduledObject, at any point in time. This would allow the use of the scheduler in more situations, in a more flexible arrangement.
- Class DigitalSpaces::DIScheduledObject
- Also under consideration is changing the GetMaxRunInterval/GetMinRunInterval system to something where the Core asks the DIScheduledObject to decrease or increase it's load on the system, and it's up to the component implementation if this involves changing its call frequency. This would additionally allow the component to know when to enact Level Of Detail changes, and such.
- Class DigitalSpaces::DISettingMap
- Add a function for removing a value
- Class DigitalSpaces::DISettingMap
- Add a function for setting the value of an existing key, only if it exists. This is inverse of insertValue. Until this is implemented, using getValue and using one of the Assignment Functions of DIVariant is the way to do this.
- Global DigitalSpaces::DISGNode::AttachObject (DISGRenderObject *object)
- How does it handle render objects that are also implement DISGNode?
- Class DigitalSpaces::DIUserActionFilter1
- Look at coming up with a better way of implementing this. - Possibly something SGManager related.
- Class DigitalSpaces::DIUserInput1
- This system needs revision.
- Class DigitalSpaces::DIWin32Window1
- Should be replaced with functions that perform the actions commonly performed using data from this DInterface (ShowWindow).
- Global DigitalSpaces::SettingMap::SettingMap (DISettingMap *rhs)
- Needs to be able to construct from a DISettingMap without doing a dubious cast.
- Class DigitalSpaces::strctKeyEvent
- Look at replacing this with a DInterface with querying methods
- Global DigitalSpaces::Variant::Variant (DIVariant *rhs)
- Need a constructor from a DIVariant that doesn't do a dubious typecast
- Class DigitalSpaces::Variant::getStringVisitor
- This needs further development, to allow more automatic to-string conversion.
- Global DigitalSpaces::DUIDFromString (const std::string &str, DUID *pduid)
- Replace this with actual code, rather then linking in
- Global DigitalSpaces::StringFromDUID (const DUID *pduid, std::string &str)
- Replace this with actual code, rather then linking in
- Global DigitalSpaces::XMLNodeType
- The functions that use this data can probably be reimplemented to use the DSS dss_cast/QueryInterface system.
- Global DigitalSpaces::out_Quaternionf
- Look into packing
- Group GUI
- This needs to be renamed to 2DGUI, since the GUI is overlayed/flat, and will not be always tied to a 3D Renderer
- Group GUI
- Also look at making all Widget-specific interfaces derived from DI3DVisualsGUIElement1. Will make vtables bigger, but save on down casting.
- Group Audio
- Needs a complete implementation. Support for DISGRepresentation would be the way to go, I think.
- Global DigitalSpaces::DID_CEGUI1
- Event subscription
- Global DigitalSpaces::Variant_Impl
- Add a function object that can return generated values. A useful form of this may be random values.
- Global DigitalSpaces::_readColour (DigitalSpaces::DIXMLElement1 *xmlElem)
- Should there be an error return value? Since this is a implementation function, not an interface function, throwing an exception would be acceptable.
- Global DigitalSpaces::_readQuaternion (DigitalSpaces::DIXMLElement1 *xmlElem)
- Should there be an error return value? Since this is a implementation function, not an interface function, throwing an exception would be acceptable.
- Global DigitalSpaces::_readVector (DigitalSpaces::DIXMLElement1 *xmlElem)
- Should there be an error return value? Since this is a implementation function, not an interface function, throwing an exception would be acceptable.
- Global DigitalSpaces::GetVariantFromXML (DIXMLElement1 *)
- Improve attribute reading process to be case insensitive.
- Global DigitalSpaces::GetVariantFromXML (DIXMLElement1 *)
- Add support for <settings> (or <settingmap>) using GetSettingMapFromXML.
- Group MathObjects
- These should probably be reimplemented, as our customizations are hacky. Possibly by subclassing the Vector3<Real> etc classes?
- Page How is scripting different then a component?
- Check if our implementation supports python destructors, as an equivalent to StopFactory?
Generated on Thu Jul 10 16:21:34 2008 for Digital Spaces by
1.5.6