Generally each video stream will have a separate processing tree. Interaction could occur between trees for things like stereo vision.
The top level node in a processing tree should create a data stream manager. This stream manager will act like the system table in that it will have pointers to all the interfaces for this stream.
Some examples of these interfaces.
User interface callbacks
Coordinate system conversions.
-- Image space, world space, camera space, render space, etc.
Drawing to the render window
This would help segregate the events and signals of a specific stream. The old event / callback system should stay in place for global information. But all the data stream specific stuff should be routed through the data stream manager
Generally each video stream will have a separate processing tree. Interaction could occur between trees for things like stereo vision. The top level node in a processing tree should create a data stream manager. This stream manager will act like the system table in that it will have pointers to all the interfaces for this stream.
Some examples of these interfaces.
This would help segregate the events and signals of a specific stream. The old event / callback system should stay in place for global information. But all the data stream specific stuff should be routed through the data stream manager