Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

vuSphericIBR< SIZE, TYPE > Class Template Reference

A utility window for Image Based Rendering of lightfields. More...

#include <vuSphericIBR.h>

Inheritance diagram for vuSphericIBR< SIZE, TYPE >:

Inheritance graph
[legend]
Collaboration diagram for vuSphericIBR< SIZE, TYPE >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 vuSphericIBR ()
 Constructor.
 ~vuSphericIBR ()
 Destructor.
virtual const char * _titleString ()
bool init (const char *DataFile)
virtual void addRight (wxSizer *sizer)
 This method adds controls to the bottom of the window.
virtual vuCameragetCamera ()
 This function must return a pointer to the camera that is taking the picture of the scene.
virtual vuImagegetCurrentImage ()
 This function must return a pointer to the current vuImage buffer that the method can write to or read from.
virtual void DrawFromImage ()
 This function must take the data vuImage buffer from the last call to getCurrent Image and draw that on the screen.
virtual void DrawAgain ()
 This function must rerender the scene completely.

Protected Types

enum  { idFILTER, idSUBFILTER }

Protected Member Functions

bool glInit ()
 Initializes open gl for the utility.
void glRender ()
 The method calls the render() method.
void glResize ()
 Resizes the gl viewport and renders the volume.
void onMouse (wxMouseEvent &ev)
 Handles mouse commands from the user.
void onKeyboard (wxKeyEvent &event)
 Keyboard handler.
vu1getVolume ()
 returns a pointer to m_Data
void OnChoiceFilter (wxCommandEvent &event)
 Filter Choice callback.
void OnChoiceSubFilter (wxCommandEvent &event)
 Filter Choice callback.

Protected Attributes

vu1611_2< SIZE, TYPE > * m_Data
 The lightfield volume owned by the utility.

Private Member Functions

void _updateSubFilterChoice ()

Private Attributes

wxChoice * m_CHOICEfilter
 Filter Choice.
wxChoice * m_CHOICEsubFilter
vuSphericViewWinm_SphericView
vuPreviewWinm_Preview

Detailed Description

template<int SIZE, class TYPE>
class vuSphericIBR< SIZE, TYPE >

A utility window for Image Based Rendering of lightfields.

Definition at line 13 of file vuSphericIBR.h.


Member Enumeration Documentation

template<int SIZE, class TYPE>
anonymous enum [protected]
 

Enumeration values:
idFILTER 
idSUBFILTER 

Definition at line 16 of file vuSphericIBR.h.


Constructor & Destructor Documentation

template<int SIZE, class TYPE>
vuSphericIBR< SIZE, TYPE >::vuSphericIBR  ) 
 

Constructor.

Definition at line 6 of file vuSphericIBR.cpp.

References vuSphericIBR< SIZE, TYPE >::m_Data.

template<int SIZE, class TYPE>
vuSphericIBR< SIZE, TYPE >::~vuSphericIBR  ) 
 

Destructor.

Definition at line 12 of file vuSphericIBR.cpp.

References CHECKNDELETE, and vuSphericIBR< SIZE, TYPE >::m_Data.


Member Function Documentation

template<int SIZE, class TYPE>
const char * vuSphericIBR< SIZE, TYPE >::_titleString  )  [virtual]
 

Reimplemented in vuSphericFBR< SIZE, TYPE >, and vuSphericFBR< 2, float >.

Definition at line 18 of file vuSphericIBR.cpp.

Referenced by vuSphericIBR< SIZE, TYPE >::init().

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::_updateSubFilterChoice  )  [private]
 

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::addRight wxSizer *  sizer  )  [virtual]
 

This method adds controls to the bottom of the window.

Reimplemented from vuBasicUtility.

Definition at line 73 of file vuSphericIBR.cpp.

References dword, vuSphericViewFilterFactory< SIZE, TYPE >::getFilterNames(), vuSphericFilterFactory< SIZE, TYPE >::getFilterNames(), vuSphericIBR< SIZE, TYPE >::idFILTER, vuSphericIBR< SIZE, TYPE >::idSUBFILTER, vuSphericIBR< SIZE, TYPE >::m_CHOICEfilter, vuSphericIBR< SIZE, TYPE >::m_CHOICEsubFilter, vuSphericIBR< SIZE, TYPE >::m_Preview, vuSphericIBR< SIZE, TYPE >::m_SphericView, and NULL.

Here is the call graph for this function:

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::DrawAgain  )  [virtual]
 

This function must rerender the scene completely.

This is so that the key frame animator can set the camera, and then force a redraw by the method.

Implements vuBasicUtility.

Definition at line 220 of file vuSphericIBR.cpp.

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::DrawFromImage  )  [virtual]
 

This function must take the data vuImage buffer from the last call to getCurrent Image and draw that on the screen.

This is so that prerendered video animation can be displayed by the key frame animator by simply setting the vuImage returned by getCurrentImage and then calling this function.

Implements vuBasicUtility.

Definition at line 214 of file vuSphericIBR.cpp.

References vuGLCanvas::redraw().

Here is the call graph for this function:

template<int SIZE, class TYPE>
vuCamera * vuSphericIBR< SIZE, TYPE >::getCamera  )  [virtual]
 

This function must return a pointer to the camera that is taking the picture of the scene.

This is so that the key frame animator can read the camera when it needs to take a snapshot and change the camera when it wants the method to rerender the scene from a predetermined camera position.

Implements vuBasicUtility.

Definition at line 202 of file vuSphericIBR.cpp.

References vuSphericIBR< SIZE, TYPE >::m_Data.

template<int SIZE, class TYPE>
vuImage * vuSphericIBR< SIZE, TYPE >::getCurrentImage  )  [virtual]
 

This function must return a pointer to the current vuImage buffer that the method can write to or read from.

This is how the key framer will update the screen.

Implements vuBasicUtility.

Definition at line 208 of file vuSphericIBR.cpp.

template<int SIZE, class TYPE>
vu1 * vuSphericIBR< SIZE, TYPE >::getVolume  )  [protected, virtual]
 

returns a pointer to m_Data

Reimplemented from vuBasicUtility.

Definition at line 170 of file vuSphericIBR.cpp.

template<int SIZE, class TYPE>
bool vuSphericIBR< SIZE, TYPE >::glInit  )  [protected, virtual]
 

Initializes open gl for the utility.

The method calls the initgl() method so it can do the proper initialization.

Reimplemented from vuBasicUtility.

Definition at line 129 of file vuSphericIBR.cpp.

References vuSphericIBR< SIZE, TYPE >::m_Data.

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::glRender  )  [protected, virtual]
 

The method calls the render() method.

Reimplemented from vuBasicUtility.

Definition at line 137 of file vuSphericIBR.cpp.

References vuSphericIBR< SIZE, TYPE >::m_Data, vuSphericIBR< SIZE, TYPE >::m_SphericView, and vuGLCanvas::redraw().

Here is the call graph for this function:

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::glResize  )  [protected, virtual]
 

Resizes the gl viewport and renders the volume.

Reimplemented from vuBasicUtility.

Definition at line 153 of file vuSphericIBR.cpp.

References vuGLCanvas::getHeight(), vuGLCanvas::getWidth(), and vuSphericIBR< SIZE, TYPE >::m_Data.

Here is the call graph for this function:

template<int SIZE, class TYPE>
bool vuSphericIBR< SIZE, TYPE >::init const char *  DataFile  )  [virtual]
 

Initializes the utility window. A object is created and the volume data is read. The window appears when finished.

Reimplemented from vuBasicUtility.

Reimplemented in vuSphericFBR2F, vuSphericIBR1B, vuSphericIBR1F, vuSphericIBR2F, vuSphericIBR3B, and vuSphericIBR3F.

Definition at line 24 of file vuSphericIBR.cpp.

References vuSphericIBR< SIZE, TYPE >::_titleString(), vuString::c_str(), vuSphericIBR< SIZE, TYPE >::m_Data, vuSphericIBR< SIZE, TYPE >::m_SphericView, and vuSphericViewWin::setVolume().

Referenced by vuSphericIBR3F::init(), vuSphericIBR3B::init(), vuSphericIBR2F::init(), vuSphericIBR1F::init(), vuSphericIBR1B::init(), and vuSphericFBR2F::init().

Here is the call graph for this function:

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::OnChoiceFilter wxCommandEvent &  event  )  [protected]
 

Filter Choice callback.

Definition at line 180 of file vuSphericIBR.cpp.

References dword, vuSphericIBR< SIZE, TYPE >::m_CHOICEfilter, vuSphericIBR< SIZE, TYPE >::m_Data, vuGLCanvas::redraw(), and vu1::setIsReRendering().

Here is the call graph for this function:

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::OnChoiceSubFilter wxCommandEvent &  event  )  [protected]
 

Filter Choice callback.

Definition at line 191 of file vuSphericIBR.cpp.

References dword, vuSphericIBR< SIZE, TYPE >::m_CHOICEsubFilter, vuSphericIBR< SIZE, TYPE >::m_Data, and vuGLCanvas::redraw().

Here is the call graph for this function:

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::onKeyboard wxKeyEvent &  event  )  [protected, virtual]
 

Keyboard handler.

Reimplemented from vuBasicUtility.

Definition at line 165 of file vuSphericIBR.cpp.

template<int SIZE, class TYPE>
void vuSphericIBR< SIZE, TYPE >::onMouse wxMouseEvent &  ev  )  [protected, virtual]
 

Handles mouse commands from the user.

Reimplemented from vuBasicUtility.

Definition at line 159 of file vuSphericIBR.cpp.


Member Data Documentation

template<int SIZE, class TYPE>
wxChoice* vuSphericIBR< SIZE, TYPE >::m_CHOICEfilter [private]
 

Filter Choice.

Definition at line 80 of file vuSphericIBR.h.

Referenced by vuSphericIBR< SIZE, TYPE >::addRight(), and vuSphericIBR< SIZE, TYPE >::OnChoiceFilter().

template<int SIZE, class TYPE>
wxChoice* vuSphericIBR< SIZE, TYPE >::m_CHOICEsubFilter [private]
 

Definition at line 81 of file vuSphericIBR.h.

Referenced by vuSphericIBR< SIZE, TYPE >::addRight(), and vuSphericIBR< SIZE, TYPE >::OnChoiceSubFilter().

template<int SIZE, class TYPE>
vu1611_2<SIZE,TYPE>* vuSphericIBR< SIZE, TYPE >::m_Data [protected]
 

The lightfield volume owned by the utility.

Definition at line 75 of file vuSphericIBR.h.

Referenced by vuSphericIBR< SIZE, TYPE >::getCamera(), vuSphericIBR< SIZE, TYPE >::glInit(), vuSphericIBR< SIZE, TYPE >::glRender(), vuSphericIBR< SIZE, TYPE >::glResize(), vuSphericIBR< SIZE, TYPE >::init(), vuSphericIBR< SIZE, TYPE >::OnChoiceFilter(), vuSphericIBR< SIZE, TYPE >::OnChoiceSubFilter(), vuSphericIBR< SIZE, TYPE >::vuSphericIBR(), and vuSphericIBR< SIZE, TYPE >::~vuSphericIBR().

template<int SIZE, class TYPE>
vuPreviewWin* vuSphericIBR< SIZE, TYPE >::m_Preview [private]
 

Definition at line 83 of file vuSphericIBR.h.

Referenced by vuSphericIBR< SIZE, TYPE >::addRight().

template<int SIZE, class TYPE>
vuSphericViewWin* vuSphericIBR< SIZE, TYPE >::m_SphericView [private]
 

Definition at line 82 of file vuSphericIBR.h.

Referenced by vuSphericIBR< SIZE, TYPE >::addRight(), vuSphericIBR< SIZE, TYPE >::glRender(), and vuSphericIBR< SIZE, TYPE >::init().


The documentation for this class was generated from the following files:
Generated on Wed Dec 15 21:22:04 2004 for vuVolume by  doxygen 1.3.9.1