GLViewer Class Reference

A wxWidget to display the fast preview. More...

#include <GLViewer.h>

Inheritance diagram for GLViewer:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 GLViewer (wxWindow *parent, HuginBase::Panorama &pano, int args[], GLPreviewFrame *frame, wxGLContext *shared_context=NULL)
virtual ~GLViewer ()
void RedrawE (wxPaintEvent &e)
void Resized (wxSizeEvent &e)
void Redraw ()
void SetUpContext ()
void SetPhotometricCorrect (bool state)
virtual void SetLayoutMode (bool state)
virtual void SetLayoutScale (double scale)
void SetActive (bool active)
bool IsActive ()
void SetViewerBackground (wxColour col)

Static Public Member Functions

static void RefreshWrapper (void *obj)

Public Attributes

VisualizationStatem_visualization_state

Static Public Attributes

static ViewStatem_view_state = NULL

Protected Member Functions

void OnEraseBackground (wxEraseEvent &e)
void MouseMotion (wxMouseEvent &e)
void MouseEnter (wxMouseEvent &e)
void MouseLeave (wxMouseEvent &e)
void MouseButtons (wxMouseEvent &e)
void MouseWheel (wxMouseEvent &e)
void KeyDown (wxKeyEvent &e)
void KeyUp (wxKeyEvent &e)
virtual void setUp ()=0

Protected Attributes

ToolHelperm_tool_helper
GLRendererm_renderer
HuginBase::Panoramam_pano
bool started_creation
bool redrawing
vigra::Diff2D offset
GLPreviewFrameframe
bool active
wxColour m_background_color

Static Protected Attributes

static bool initialised_glew = false

Detailed Description

A wxWidget to display the fast preview.

It is the OpenGL equivalent of PreviewPanel. The actual work in rendering the preview is done by a GLRenderer.

Definition at line 51 of file GLViewer.h.


Constructor & Destructor Documentation

GLViewer::GLViewer ( wxWindow *  parent,
HuginBase::Panorama pano,
int  args[],
GLPreviewFrame frame,
wxGLContext *  shared_context = NULL 
)

Definition at line 66 of file GLViewer.cpp.

GLViewer::~GLViewer (  )  [virtual]

Definition at line 104 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and m_view_state.


Member Function Documentation

bool GLViewer::IsActive (  )  [inline]

Definition at line 75 of file GLViewer.h.

References active.

Referenced by RedrawE(), and Resized().

void GLViewer::KeyDown ( wxKeyEvent &  e  )  [protected]

Definition at line 408 of file GLViewer.cpp.

References ToolHelper::KeypressEvent(), m_renderer, and m_tool_helper.

void GLViewer::KeyUp ( wxKeyEvent &  e  )  [protected]

Definition at line 414 of file GLViewer.cpp.

References ToolHelper::KeypressEvent(), m_renderer, and m_tool_helper.

void GLViewer::MouseButtons ( wxMouseEvent &  e  )  [protected]

Definition at line 385 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseButtonEvent().

void GLViewer::MouseEnter ( wxMouseEvent &  e  )  [protected]

Definition at line 372 of file GLViewer.cpp.

References m_renderer, m_tool_helper, ToolHelper::MouseEnter(), and offset.

void GLViewer::MouseLeave ( wxMouseEvent &  e  )  [protected]

Definition at line 379 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseLeave().

void GLViewer::MouseMotion ( wxMouseEvent &  e  )  [protected]

Definition at line 365 of file GLViewer.cpp.

References m_renderer, m_tool_helper, ToolHelper::MouseMoved(), and offset.

void GLViewer::MouseWheel ( wxMouseEvent &  e  )  [protected]

Definition at line 400 of file GLViewer.cpp.

References m_renderer, m_tool_helper, and ToolHelper::MouseWheelEvent().

void GLViewer::OnEraseBackground ( wxEraseEvent &  e  )  [protected]

Definition at line 360 of file GLViewer.cpp.

void GLViewer::Redraw (  ) 

Definition at line 332 of file GLViewer.cpp.

References DEBUG_INFO, VisualizationState::DoUpdates(), VisualizationState::FinishedDraw(), vigra_ext::EMoR::h, HuginBase::Panorama::hasPendingChanges(), m_pano, m_renderer, m_visualization_state, offset, GLRenderer::Redraw(), VisualizationState::RequireRecalculateViewport(), GLRenderer::Resize(), and GLRenderer::SetBackground().

Referenced by RedrawE(), and Resized().

void GLViewer::RedrawE ( wxPaintEvent &  e  ) 

Definition at line 268 of file GLViewer.cpp.

References GLPreviewFrame::CanResize(), GLPreviewFrame::ContinueResize(), DEBUG_DEBUG, frame, IsActive(), Redraw(), redrawing, and SetUpContext().

void GLViewer::RefreshWrapper ( void *  obj  )  [static]

Definition at line 296 of file GLViewer.cpp.

References DEBUG_DEBUG.

Referenced by GLOverview::setUp(), and GLPreview::setUp().

void GLViewer::Resized ( wxSizeEvent &  e  ) 

Definition at line 303 of file GLViewer.cpp.

References GLPreviewFrame::CanResize(), DEBUG_DEBUG, frame, vigra_ext::EMoR::h, IsActive(), m_renderer, offset, Redraw(), GLRenderer::Resize(), and SetUpContext().

Referenced by GLPreviewFrame::ContinueResize().

void GLViewer::SetActive ( bool  active  )  [inline]

Definition at line 74 of file GLViewer.h.

Referenced by GLPreviewFrame::GLPreviewFrame(), GLPreviewFrame::LoadOpenGLLayout(), and GLPreviewFrame::OnOverviewToggle().

void GLViewer::SetLayoutMode ( bool  state  )  [virtual]

Reimplemented in GLOverview.

Definition at line 241 of file GLViewer.cpp.

References VisualizationState::GetMeshManager(), m_visualization_state, and MeshManager::SetLayoutMode().

Referenced by GLPreviewFrame::SetMode().

void GLViewer::SetLayoutScale ( double  scale  )  [virtual]

Reimplemented in GLOverview.

Definition at line 247 of file GLViewer.cpp.

References VisualizationState::GetMeshManager(), m_visualization_state, and MeshManager::SetLayoutScale().

Referenced by GLPreviewFrame::OnLayoutScaleChange().

void GLViewer::SetPhotometricCorrect ( bool  state  ) 

Definition at line 235 of file GLViewer.cpp.

References ViewState::GetTextureManager(), m_view_state, and TextureManager::SetPhotometricCorrect().

Referenced by GLPreviewFrame::MakePreviewTools(), and GLPreviewFrame::OnPhotometric().

virtual void GLViewer::setUp (  )  [protected, pure virtual]

Implemented in GLPreview, and GLOverview.

Referenced by SetUpContext().

void GLViewer::SetUpContext (  ) 

Definition at line 123 of file GLViewer.cpp.

References DEBUG_ERROR, DEBUG_INFO, frame, initialised_glew, setUp(), and started_creation.

Referenced by GLPreviewFrame::InitPreviews(), RedrawE(), and Resized().

void GLViewer::SetViewerBackground ( wxColour  col  ) 

Definition at line 420 of file GLViewer.cpp.

References m_background_color, m_renderer, and GLRenderer::SetPreviewBackgroundColor().

Referenced by GLPreviewFrame::OnPreviewBackgroundColorChanged().


Member Data Documentation

bool GLViewer::active [protected]

Definition at line 109 of file GLViewer.h.

Referenced by IsActive().

GLPreviewFrame* GLViewer::frame [protected]

Definition at line 107 of file GLViewer.h.

Referenced by RedrawE(), Resized(), GLOverview::setUp(), GLPreview::setUp(), and SetUpContext().

bool GLViewer::initialised_glew = false [static, protected]

Definition at line 105 of file GLViewer.h.

Referenced by SetUpContext().

wxColour GLViewer::m_background_color [protected]

Definition at line 111 of file GLViewer.h.

Referenced by GLOverview::setUp(), GLPreview::setUp(), and SetViewerBackground().

HuginBase::Panorama* GLViewer::m_pano [protected]

Definition at line 100 of file GLViewer.h.

Referenced by Redraw(), GLOverview::setUp(), and GLPreview::setUp().

GLRenderer* GLViewer::m_renderer [protected]

Definition at line 96 of file GLViewer.h.

Referenced by KeyDown(), KeyUp(), MouseButtons(), MouseEnter(), MouseLeave(), MouseMotion(), MouseWheel(), Redraw(), Resized(), GLOverview::SetMode(), GLOverview::setUp(), GLPreview::setUp(), SetViewerBackground(), and ~GLViewer().

ToolHelper* GLViewer::m_tool_helper [protected]

Definition at line 95 of file GLViewer.h.

Referenced by KeyDown(), KeyUp(), MouseButtons(), MouseEnter(), MouseLeave(), MouseMotion(), MouseWheel(), GLOverview::SetMode(), GLOverview::setUp(), GLPreview::setUp(), and ~GLViewer().

ViewState * GLViewer::m_view_state = NULL [static]

Definition at line 72 of file GLViewer.h.

Referenced by GLPreviewFrame::OnTrackChangeFOV(), SetPhotometricCorrect(), GLOverview::setUp(), GLPreview::setUp(), and ~GLViewer().

VisualizationState* GLViewer::m_visualization_state

Definition at line 71 of file GLViewer.h.

Referenced by OverviewOutlinesTool::draw(), OverviewOutlinesTool::DrawRect(), GLPreviewFrame::OnDragChoice(), GLPreviewFrame::OnOverviewModeChoice(), Redraw(), SetLayoutMode(), SetLayoutScale(), GLOverview::SetMode(), GLOverview::setUp(), and GLPreview::setUp().

vigra::Diff2D GLViewer::offset [protected]

Definition at line 106 of file GLViewer.h.

Referenced by MouseEnter(), MouseMotion(), Redraw(), and Resized().

bool GLViewer::redrawing [protected]

Definition at line 104 of file GLViewer.h.

Referenced by RedrawE().

bool GLViewer::started_creation [protected]

Definition at line 104 of file GLViewer.h.

Referenced by SetUpContext().


The documentation for this class was generated from the following files:
Generated on 28 Apr 2016 for Hugintrunk by  doxygen 1.4.7