Version 2 (modified by 15 years ago) (diff) | ,
---|
TracNav
Documentation
- Getting Started
BuildEnvironment...
- Terrain Data
- Architecture
Modules...
osgVisual Configuration via XML...
- SerializationNotes
- ExecuterNotes
- CameraControl
- Theories of Terrain Deformation
- Theories of Image Distortion
- Home
About...
- Screenshots
- Downloads
Projection Designer...
- Wiki Edit
- Website Credits/Impressum
Executer
Aufbau des Executer-Containers
typedef enum {SWAP, READY_TO_SWAP, <othercomands...> } executerID;
- Befehl: executerID
- 3 num. Param. double[3]
- Stringparam. std::String
dataIO::executer Realisierung
Wie auch Updater (an visual_Objects) werden die executer cascadiert an visual_core angehängt. Bei jedem Framepaket kann ein Executerbefehl übertragen werden.
Sowohl Slave als auch master iterieren pro Frame durch die Executerliste und fragen über isReponsible(ENUM executerIdentifier_)
-> Wenn ja: performExecuter( executer* executer_ )
Die executer werden in der Transportklasse übertragen.
executer_query: Ein eindeutiger Identifier sagt, was mit diesem executer gemacht werden soll
HAT HOT LAT LON COLLISION INSIDE CLOUD WIND precipitation
executer_modify:
READY_TO_SWAP SWAP <Object management> <Sky & Weather management> <visual Configuration e.g. grey out>
Wie die ermittelten Werte des executer_query zurücksenden?
- Grundsätzlich: dataIO hat ein ergebnisarray, jeweils mit executerID und mit (numerischen) Rückgabewert
- extlink bekommt von dataIO dieses Ergebnisarray als startpointer übermittelt und muss jeweils selbst diese Werte entnehmen und gemäß der jeweiligen extLink-implementierung verwursten
--> Bei extLink_VCL : rückgabewerte fest an gewisse channel binden.