#include <esve/viewers/dim3/Basic_Viewer.hxx>
Inheritance diagram for esve::viewers::dim3::Basic_Viewer:

Public Member Functions | |
| virtual int | takeover () |
| Shorthand for peek_kernel().takeover(). | |
| virtual Camera & | create_camera (const std::string &=default_camera_label, const Camera::Rectangle &=default_camera_rectangle) |
| Cameras. | |
| virtual Light & | create_light () |
| Lights. | |
| virtual void | add_geom (engine::dim3::Geom &) |
| Geoms. | |
| virtual void | remove_geom (engine::dim3::Geom &) |
| Geoms. | |
| virtual void | add_handler (components::dimn::Motion_Handler &) |
| Motion handlers. | |
| virtual void | remove_handler (components::dimn::Motion_Handler &) |
| Motion handlers. | |
| virtual void | add_handler (kernel::Handler &) |
| Regular handlers. | |
| virtual void | remove_handler (kernel::Handler &) |
| Regular handlers. | |
| virtual void | add_frame (engine::dim3::Frame &) |
| Frames. | |
| virtual void | remove_frame (engine::dim3::Frame &) |
| Frames. | |
Protected Member Functions | |
| message::Draw_Sender & | peek_draw_sender () |
| The shared (lit) draw node. | |
| message::Draw_Sender & | peek_unlit_draw_sender () |
| The shared unlit draw node. | |
| message::Draw_Sender & | peek_draw_initializer () |
| The shared initialize node. | |
| message::Compute_Sender & | peek_compute_sender () |
| The shared compute node. | |
| kernel::Simple_Kernel & | peek_kernel () |
| Peek at the kernel. | |
There is one shared handle tree; all emitters send to it; all handlers receive from it.
There is one shared compute tree; all cameras produced by create_camera() trigger it.
There is one shared initialize tree; all cameras produced by create_camera() call it.
There is one shared draw tree; all cameras produced by create_camera() call it; all lights produced by create_light() contribute to it.
There is one shared frame tree; all lights, cameras, and added geoms are made children of the root frame. (Of course you may arrange the frame tree according to your whim; the default is simply to be a child of the root frame.)
|
||||||||||||
|
Cameras. The camera is a child of the root frame. The viewer owns the camera. Reimplemented in esve::viewers::dim3::Starry_Viewer. |
|
|
Lights. The light is a child of the root frame. All lights are enabled for the shared draw node. The viewer owns the light. |
|
|
Geoms. The Geom is added to the shared compute node, to the shared draw node, and to the children of the root frame. Implements esve::viewers::dim3::Minimal_Viewer. Reimplemented in esve::viewers::dim3::Canned_Viewer. |
|
|
Geoms. The Geom is removed compute node, from the shared draw node, and from the root frame (if it was a direct child). Implements esve::viewers::dim3::Minimal_Viewer. Reimplemented in esve::viewers::dim3::Canned_Viewer. |
|
|
Motion handlers. The handler will receive handle_check_awake() and update(dt) messages with a time delta dt. Implements esve::viewers::dimn::Minimal_Viewer. |
|
|
Motion handlers. It will be removed from the handle tree and the update tree. Implements esve::viewers::dimn::Minimal_Viewer. |
|
|
Frames. The frame is made a child of the root frame. |
|
|
Frames. The frame is orphaned from the root frame (if it was a direct child). |
1.3.4