Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

NonlinearImager Class Reference

#include <nonlinearImager.h>

List of all members.

Private Types

typedef pvector< ViewerViewers
typedef pvector< MeshMeshes
typedef pvector< ScreenScreens

Private Member Functions

 ~NonlinearImager ()
int add_screen (ProjectionScreen *screen)
int find_screen (ProjectionScreen *screen) const
void remove_screen (int index)
void remove_all_screens ()
int get_num_screens () const
ProjectionScreenget_screen (int index) const
void set_texture_size (int index, int width, int height)
void set_source_camera (int index, const NodePath &source_camera)
void set_screen_active (int index, bool active)
bool get_screen_active (int index) const
int add_viewer (DisplayRegion *dr)
int find_viewer (DisplayRegion *dr) const
void remove_viewer (int index)
void remove_all_viewers ()
void set_viewer_camera (int index, const NodePath &viewer_camera)
NodePath get_viewer_camera (int index) const
NodePath get_internal_scene (int index) const
int get_num_viewers () const
DisplayRegionget_viewer (int index) const
void recompute ()
void render (GraphicsEngine *engine)
void recompute_if_stale ()
void recompute_screen (Screen &screen, size_t vi)
void render_screen (GraphicsEngine *engine, Screen &screen)

Private Attributes

PUBLISHED __pad0__: NonlinearImager()
Viewers _viewers
Screens _screens
GraphicsStateGuardian_gsg
GraphicsWindow_win
bool _stale


Member Typedef Documentation

typedef pvector<Mesh> NonlinearImager::Meshes [private]
 

Definition at line 144 of file nonlinearImager.h.

typedef pvector<Screen> NonlinearImager::Screens [private]
 

Definition at line 157 of file nonlinearImager.h.

typedef pvector<Viewer> NonlinearImager::Viewers [private]
 

Definition at line 137 of file nonlinearImager.h.


Constructor & Destructor Documentation

NonlinearImager::~NonlinearImager  )  [private]
 

Definition at line 45 of file nonlinearImager.cxx.

References remove_all_screens(), and remove_all_viewers().


Member Function Documentation

int NonlinearImager::add_screen ProjectionScreen screen  )  [private]
 

Definition at line 76 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_active, NonlinearImager::Screen::_meshes, _screens, _stale, NonlinearImager::Screen::_tex_height, NonlinearImager::Screen::_tex_width, _viewers, ProjectionScreen::get_last_screen(), and NULL.

int NonlinearImager::add_viewer DisplayRegion dr  )  [private]
 

Definition at line 259 of file nonlinearImager.cxx.

References _gsg, NonlinearImager::Viewer::_internal_scene, NonlinearImager::Screen::_meshes, _screens, _stale, NonlinearImager::Viewer::_viewer, _viewers, _win, NodePath::attach_new_node(), DCAST, find_viewer(), DisplayRegion::get_camera(), GraphicsWindow::get_gsg(), DisplayRegion::get_window(), NodePath::is_empty(), NodePath::node(), NULL, NodePath::set_two_sided(), and win.

int NonlinearImager::find_screen ProjectionScreen screen  )  const [private]
 

Definition at line 104 of file nonlinearImager.cxx.

References _screens.

int NonlinearImager::find_viewer DisplayRegion dr  )  const [private]
 

Definition at line 320 of file nonlinearImager.cxx.

References _viewers.

Referenced by add_viewer().

NodePath NonlinearImager::get_internal_scene int  index  )  const [private]
 

Definition at line 415 of file nonlinearImager.cxx.

References _viewers, and index.

int NonlinearImager::get_num_screens  )  const [private]
 

Definition at line 149 of file nonlinearImager.cxx.

References _screens.

int NonlinearImager::get_num_viewers  )  const [private]
 

Definition at line 427 of file nonlinearImager.cxx.

References _viewers.

ProjectionScreen * NonlinearImager::get_screen int  index  )  const [private]
 

Definition at line 160 of file nonlinearImager.cxx.

References _screens, index, and NULL.

bool NonlinearImager::get_screen_active int  index  )  const [private]
 

Definition at line 232 of file nonlinearImager.cxx.

References _screens, and index.

DisplayRegion * NonlinearImager::get_viewer int  index  )  const [private]
 

Definition at line 438 of file nonlinearImager.cxx.

References _viewers, index, and NULL.

NodePath NonlinearImager::get_viewer_camera int  index  )  const [private]
 

Definition at line 402 of file nonlinearImager.cxx.

References _viewers, and index.

void NonlinearImager::recompute  )  [private]
 

Definition at line 449 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_active, _screens, _stale, NonlinearImager::Viewer::_viewer_lens_change, _viewers, NULL, and recompute_screen().

Referenced by recompute_if_stale().

void NonlinearImager::recompute_if_stale  )  [private]
 

Definition at line 506 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_active, NonlinearImager::Screen::_meshes, _screens, NonlinearImager::Viewer::_viewer_lens_change, _viewers, NULL, recompute(), and recompute_screen().

Referenced by render().

void NonlinearImager::recompute_screen Screen screen,
size_t  vi
[private]
 

Definition at line 551 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_active, NonlinearImager::Viewer::_internal_scene, NonlinearImager::Screen::_meshes, NonlinearImager::Screen::_tex_height, NonlinearImager::Screen::_tex_width, NonlinearImager::Viewer::_viewer, _viewers, NodePath::attach_new_node(), Texture::FT_linear, NULL, PT, texture, and Texture::WM_clamp.

Referenced by recompute(), and recompute_if_stale().

void NonlinearImager::remove_all_screens  )  [private]
 

Definition at line 136 of file nonlinearImager.cxx.

References _screens, and remove_screen().

Referenced by ~NonlinearImager().

void NonlinearImager::remove_all_viewers  )  [private]
 

Definition at line 361 of file nonlinearImager.cxx.

References _viewers, and remove_viewer().

Referenced by ~NonlinearImager().

void NonlinearImager::remove_screen int  index  )  [private]
 

Definition at line 121 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_meshes, _screens, and index.

Referenced by remove_all_screens().

void NonlinearImager::remove_viewer int  index  )  [private]
 

Definition at line 337 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_meshes, _screens, NonlinearImager::Viewer::_viewer, _viewers, and index.

Referenced by remove_all_viewers().

void NonlinearImager::render GraphicsEngine engine  )  [private]
 

Definition at line 489 of file nonlinearImager.cxx.

References _screens, recompute_if_stale(), and render_screen().

void NonlinearImager::render_screen GraphicsEngine engine,
Screen screen
[private]
 

Definition at line 590 of file nonlinearImager.cxx.

References _gsg, NonlinearImager::Screen::_source_camera, NonlinearImager::Screen::_tex_height, NonlinearImager::Screen::_tex_width, _win, GraphicsStateGuardian::get_render_buffer(), NodePath::is_empty(), NULL, PT, GraphicsEngine::render_subframe(), and RenderBuffer::T_back.

Referenced by render().

void NonlinearImager::set_screen_active int  index,
bool  active
[private]
 

Definition at line 209 of file nonlinearImager.cxx.

References NonlinearImager::Screen::_meshes, _screens, _stale, and index.

void NonlinearImager::set_source_camera int  index,
const NodePath source_camera
[private]
 

Definition at line 194 of file nonlinearImager.cxx.

References _screens, Camera::get_class_type(), index, NodePath::is_empty(), TypedObject::is_of_type(), and NodePath::node().

void NonlinearImager::set_texture_size int  index,
int  width,
int  height
[private]
 

Definition at line 177 of file nonlinearImager.cxx.

References _screens, height, index, and width.

void NonlinearImager::set_viewer_camera int  index,
const NodePath viewer_camera
[private]
 

Definition at line 385 of file nonlinearImager.cxx.

References _stale, NonlinearImager::Viewer::_viewer, _viewers, DCAST, LensNode::get_class_type(), index, NodePath::is_empty(), TypedObject::is_of_type(), and NodePath::node().


Member Data Documentation

PUBLISHED NonlinearImager::__pad0__ [private]
 

Definition at line 95 of file nonlinearImager.h.

GraphicsStateGuardian* NonlinearImager::_gsg [private]
 

Definition at line 165 of file nonlinearImager.h.

Referenced by add_viewer(), and render_screen().

Screens NonlinearImager::_screens [private]
 

Definition at line 164 of file nonlinearImager.h.

Referenced by add_screen(), add_viewer(), find_screen(), get_num_screens(), get_screen(), get_screen_active(), recompute(), recompute_if_stale(), remove_all_screens(), remove_screen(), remove_viewer(), render(), set_screen_active(), set_source_camera(), and set_texture_size().

bool NonlinearImager::_stale [private]
 

Definition at line 168 of file nonlinearImager.h.

Referenced by add_screen(), add_viewer(), recompute(), set_screen_active(), and set_viewer_camera().

Viewers NonlinearImager::_viewers [private]
 

Definition at line 163 of file nonlinearImager.h.

Referenced by add_screen(), add_viewer(), find_viewer(), get_internal_scene(), get_num_viewers(), get_viewer(), get_viewer_camera(), recompute(), recompute_if_stale(), recompute_screen(), remove_all_viewers(), remove_viewer(), and set_viewer_camera().

GraphicsWindow* NonlinearImager::_win [private]
 

Definition at line 166 of file nonlinearImager.h.

Referenced by add_viewer(), and render_screen().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:12:53 2003 for Panda by doxygen1.3