-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMRIUI.h
112 lines (85 loc) · 2.41 KB
/
MRIUI.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
//
// -------------------------------------------------------------------
// Copyright (C) 2007 OpenEngine.dk (See AUTHORS)
//
// This program is free software; It is covered by the GNU General
// Public License version 2 or any later version.
// See the GNU General Public License for more details (see LICENSE).
//--------------------------------------------------------------------
#ifndef _OE_M_R_I_U_I_H_
#define _OE_M_R_I_U_I_H_
#include <QtGui>
#include <Resources/IFontResource.h>
#include <Display/IFrame.h>
#include "Resources/MINCResource.h"
#include <Devices/IMouse.h>
#include <Science/MathGLPlot.h>
#include <Display/WallCanvas.h>
#include <Display/CanvasQueue.h>
#include <Core/IEngine.h>
#include "Science/MRISim.h"
#include "Display/CanvasSwitch.h"
#include <Utils/SimpleSetup.h>
namespace Ui { class MRIUI; }
namespace OpenEngine {
namespace Display {
namespace OpenGL {
class SliceCanvas;
class PhantomCanvas;
}
class QtEnvironment;
}
}
namespace MRI {
namespace Scene { class SpinNode; }
namespace Display {
namespace OpenGL { class SpinCanvas; }
}
}
using namespace OpenEngine::Resources;
using namespace OpenEngine::Display;
using namespace OpenEngine::Devices;
using namespace OpenEngine::Utils;
using namespace OpenEngine::Display::OpenGL;
using namespace MRI::Display::OpenGL;
using namespace MRI::Science;
using namespace OpenEngine::Science;
using namespace OpenEngine::Core;
class MRIUI : public QMainWindow {
Q_OBJECT;
Ui::MRIUI* ui;
IFontResourcePtr font;
IFrame* frame;
IEngine* engine;
IMouse* mouse;
Phantom phantom;
MRISim* sim;
IMRIKernel* kern;
IMRISequence* seq;
SliceCanvas *samplesCanvas, *fftCanvas;
PhantomCanvas *phantomCanvas;
SpinCanvas* spinCanvas;
WallCanvas* wcSim, *wcRF;
CanvasSwitch* cSwitch;
CanvasQueue* cq;
MathGLPlot* plot;
MathGLPlot* fftPlot;
IRenderer* r;
TextureLoader* tl;
MRI::Scene::SpinNode *spinNode;
QDockWidget *dwI, *dwI1, *dwI2, *dwI3, *dwI4, *dwI5;
void SetupPlugins();
void SetupCanvas();
void SetupWall();
void SetupSim();
void SetupRF();
void SetupOpenCL();
void LoadResources();
void Exit();
public slots:
void SetSimView(bool toggle);
void SetRFView(bool toggle);
public:
MRIUI(OpenEngine::Display::QtEnvironment *env, IMRISequence*, IMRIKernel*, Phantom, SimpleSetup*);
};
#endif // _OE_M_R_I_U_I_H_