Changes between Version 1 and Version 2 of visual_dataIO
- Timestamp:
- Aug 26, 2010, 7:15:51 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
visual_dataIO
v1 v2 5 5 == Introduction == 6 6 7 dataIO is the module to unitize data input or output of a render node, independendif the node is connected via cluster or externalLink. It provides a unified interface to query or set data values and set or execute executer tasks.7 dataIO is the module to unitize data input or output of a render machine, independent if the node is connected via cluster or externalLink. It provides a unified interface to query or set data values and set or execute executer tasks. 8 8 9 Behind this interface, dataIO sync ronise at appropriate positions the relevant data over the cluster module to all connected render nodes, so the osgVisual cluster renders consistendviews.9 Behind this interface, dataIO synchronise at appropriate positions the relevant data over the cluster module to all connected render machines, so the osgVisual cluster renders consistent views. 10 10 The connection to the simulator is hold by the module extLink, which gets all values, queries and executer from simulation host and returns the queried return values. 11 11 12 Every rendering node in the visual system does not need to care if it's role is cluster master or cluster slave, it hast just to use the unified dataIO interface. Picture 1 clarifies the structore of the dataIO module.12 Every rendering machine in the visual system does not need to care if it's role is cluster master or cluster slave, it hast just to use the unified dataIO interface. Picture 1 clarifies the structure of the dataIO module. 13 13 14 14 == SLOT concept == … … 25 25 === Data flow === 26 26 27 To explain the dataflow, lets follow an virtual variable from simulation host to osgVisual, to a specific visual_object, and return. P Lease read prior the concept of [wiki:"visual_object"] and the [wiki:"object_updater"].27 To explain the dataflow, lets follow an virtual variable from simulation host to osgVisual, to a specific visual_object, and return. Please read prior the concept of [wiki:"visual_object"] and the [wiki:"object_updater"]. 28 28 29 29 * At first lets assume the virtual variable is: … … 45 45 46 46 Slots are accessible with several approaches: 47 * Via Pointer 48 * void* getSlotPointer( std::string slotName_, osgVisual::dataIO_slot::dataDirection direction_, osgVisual::dataIO_slot::DOUBLE ); 47 * Via Pointer osgVisual::dataIO_slot* getSlotPointer( std::string slotName_, osgVisual::dataIO_slot::dataDirection direction_, osgVisual::dataIO_slot::DOUBLE ); 49 48 * Via References 50 49 * std::string& getSlotRefAsString( std::string slotName_, osgVisual::dataIO_slot::dataDirection direction_); … … 64 63 == !ExtLink == 65 64 65 The external Link is the Module which exchange data with external sources. osgVisual provides a Dummy implementation to be compilable even without a valid extLink implementation. For the main fündig Partner, a implementation for a closed source UDP data transfer solution (called VCL) is coded, but since VCL is not open source, it is useless for all other users. 66 66 67 In Short, this are the activities of extLink: 68 * Reading values from the external Link and pass them to the corresponding slots. 69 * Reading executer und queries from the external link and pass/execute them on the adressed machine. 70 * Write back the return values from the slots to the external link. 67 71 72 Read xyz for the extLinkVCL implementation. 73