GCS::GWorldData Class Reference

The interface to the world data for elements. More...

#include <GWorldData.h>

Inheritance diagram for GCS::GWorldData:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ~GWorldData ()
virtual const GElementread (const GElementID &id) const =0
virtual QList< GCS::GElementIDgetChildren (const GCS::GElementID &parent) const =0

Protected Member Functions

 GWorldData ()

Detailed Description

The interface to the world data for elements.

Author:
Raphael Langerhorst
To allow maximum flexibility in agent design, agents can access data of other elements(!) through this interface. The implementation must be provided externally (through the GWE normally).

Note:
In case you hold sensitive data in one or another element and don't want all other elements to be able to access it, YOU need to provide security mechanisms. Potentially an agent can traverse through the whole element hierarchy and perform data mining. Be careful in untrusted environments were you are not in control of injected agents.
Todo:
write an algorithm to find a position transformation path between arbitrary elements


Constructor & Destructor Documentation

GCS::GWorldData::GWorldData (  )  [inline, protected]

Constructor.

virtual GCS::GWorldData::~GWorldData (  )  [inline, virtual]

Virtual Destructor.


Member Function Documentation

virtual QList<GCS::GElementID> GCS::GWorldData::getChildren ( const GCS::GElementID parent  )  const [pure virtual]

Returns:
the IDs of the children of given element.

Implemented in GWE::GXmlDataController.

virtual const GElement* GCS::GWorldData::read ( const GElementID id  )  const [pure virtual]

The implementation is provided by the GWE, it allows read access to any element in the world. Normally an element more closely watches the element it is connected to. The GWorldData provides the possibility to read data from it, regardless how the remote element is accessed, which is accomplished by the GWE.

Implemented in GWE::GXmlDataController.


The documentation for this class was generated from the following file:
Generated on Thu Nov 16 07:49:36 2006 for G System by  doxygen 1.4.7