GOFIGURE2
0.9.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
Code
GUI
lib
SynchronizedViews
QGoSynchronizedView.h
Go to the documentation of this file.
1
/*=========================================================================
2
Authors: The GoFigure Dev. Team.
3
at Megason Lab, Systems biology, Harvard Medical school, 2009-11
4
5
Copyright (c) 2009-11, President and Fellows of Harvard College.
6
All rights reserved.
7
8
Redistribution and use in source and binary forms, with or without
9
modification, are permitted provided that the following conditions are met:
10
11
Redistributions of source code must retain the above copyright notice,
12
this list of conditions and the following disclaimer.
13
Redistributions in binary form must reproduce the above copyright notice,
14
this list of conditions and the following disclaimer in the documentation
15
and/or other materials provided with the distribution.
16
Neither the name of the President and Fellows of Harvard College
17
nor the names of its contributors may be used to endorse or promote
18
products derived from this software without specific prior written
19
permission.
20
21
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
23
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
25
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
26
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
27
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
28
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
30
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
31
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
33
=========================================================================*/
34
#ifndef __QGoSynchronizedView_h
35
#define __QGoSynchronizedView_h
36
37
#include "
SnapshotHelper.h
"
38
#include "vtkSmartPointer.h"
39
#include "ui_QGoSynchronizedView.h"
40
41
#include "itkImage.h"
42
#include "QGoGUILibConfigure.h"
43
44
class
vtkCamera;
45
class
vtkImageData;
46
class
vtkEventQtSlotConnect;
47
class
QGoImageView
;
48
class
QGoSynchronizedViewManager
;
49
59
class
QGOGUILIB_EXPORT
QGoSynchronizedView
:
public
QWidget
,
60
protected
Ui::QGoSynchronizedView
61
{
62
Q_OBJECT
63
public
:
64
explicit
QGoSynchronizedView
(
QString
iViewName,
QWidget
*iParent = 0);
65
68
virtual
~
QGoSynchronizedView
();
69
72
virtual
void
SetImage(vtkImageData *iImage) = 0;
73
76
virtual
void
Update(
void
) = 0;
77
80
void
SetViewManager(
QGoSynchronizedViewManager
*iViewManager);
81
84
QString
* GetName(
void
);
85
88
virtual
void
Render(
void
) = 0;
89
92
virtual
vtkCamera * GetCamera(
void
) = 0;
93
96
virtual
bool
HasViewer(
void
) = 0;
97
101
virtual
void
PrintOs(ostream & os) = 0;
102
105
virtual
int
GetSynchronizedViewType(
void
) = 0;
106
107
public
slots:
108
111
virtual
QString
SnapshotViewXY(
const
GoFigure::FileType
& iType,
112
const
QString
& iBaseName =
tr
(
"Snapshot"
) ) = 0;
113
114
protected
:
115
116
QString
m_ViewName
;
117
vtkImageData *
m_Image
;
118
QString
m_ImageName
;
119
QGoSynchronizedViewManager
*
m_ViewManager
;
120
vtkEventQtSlotConnect *
m_VTKEventQtConnector
;
121
124
void
changeEvent
(
QEvent
*e);
125
128
virtual
void
deleteViewer(
void
) = 0;
129
132
virtual
void
createViewer(
void
) = 0;
133
134
private
:
135
136
Q_DISABLE_COPY(
QGoSynchronizedView
);
137
};
138
139
#endif //__QGoSynchronizedView_h
Generated on Mon May 27 2013 08:47:30 for GOFIGURE2 by
1.8.1.2