MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
customframegraph.h
Go to the documentation of this file.
1//=============================================================================================================
36#ifndef DISP3DLIB_CUSTOMFRAMEGRAPH_H
37#define DISP3DLIB_CUSTOMFRAMEGRAPH_H
38
39//=============================================================================================================
40// INCLUDES
41//=============================================================================================================
42
43#include "../../disp3D_global.h"
44
45//=============================================================================================================
46// QT INCLUDES
47//=============================================================================================================
48
49#include <QSharedPointer>
50#include <QPointer>
51#include <Qt3DRender/QViewport>
52
53//=============================================================================================================
54// EIGEN INCLUDES
55//=============================================================================================================
56
57//=============================================================================================================
58// FORWARD DECLARATIONS
59//=============================================================================================================
60
61namespace Qt3DRender {
62 class QRenderSurfaceSelector;
63 class QClearBuffers;
64 class QNoDraw;
65 class QDispatchCompute;
66 class QTechniqueFilter;
67 class QCameraSelector;
68 class QCamera;
69 class QFilterKey;
70 class QMemoryBarrier;
71 class QCamera;
72 class QSortPolicy;
73 class QRenderStateSet;
74 class QDepthTest;
75 class QNoDepthMask;
76 class QBlendEquationArguments;
77 class QBlendEquation;
78 class QCullFace;
79 class QRenderCapture;
80 class QRenderCaptureReply;
81}
82
83//=============================================================================================================
84// DEFINE NAMESPACE DISP3DLIB
85//=============================================================================================================
86
87namespace DISP3DLIB {
88
89//=============================================================================================================
90// DISP3DLIB FORWARD DECLARATIONS
91//=============================================================================================================
92
93//=============================================================================================================
100class DISP3DSHARED_EXPORT CustomFrameGraph : public Qt3DRender::QViewport
101{
102 Q_OBJECT
103
104public:
105 typedef QSharedPointer<CustomFrameGraph> SPtr;
106 typedef QSharedPointer<const CustomFrameGraph> ConstSPtr;
108 //=========================================================================================================
114 explicit CustomFrameGraph(Qt3DCore::QNode *parent = 0);
115
116 //=========================================================================================================
121
122 //=========================================================================================================
128 void setCamera(Qt3DRender::QCamera *tCamera);
129
130 //=========================================================================================================
138 void setWorkGroupSize(const uint tX, const uint tY , const uint tZ);
139
140 //=========================================================================================================
146 void setClearColor(const QColor &tColor);
147
148 //=========================================================================================================
154 Qt3DRender::QRenderCaptureReply* requestRenderCaptureReply();
155
156protected:
157
158private:
159
160 //=========================================================================================================
164 void init();
165
166 QPointer<Qt3DRender::QRenderSurfaceSelector> m_pSurfaceSelector;
168 QPointer<Qt3DRender::QClearBuffers> m_pClearBuffers;
170 QPointer<Qt3DRender::QNoDraw> m_pNoDraw;
172 QPointer<Qt3DRender::QDispatchCompute> m_pDispatchCompute;
174 QPointer<Qt3DRender::QTechniqueFilter> m_pComputeFilter;
176 QPointer<Qt3DRender::QCameraSelector> m_pCameraSelector;
178 QPointer<Qt3DRender::QMemoryBarrier> m_pMemoryBarrier;
180 QPointer<Qt3DRender::QRenderStateSet> m_pForwardState;
182 QPointer<Qt3DRender::QTechniqueFilter> m_pForwardTranspFilter;
184 QPointer<Qt3DRender::QRenderStateSet> m_pTransparentState;
186 QPointer<Qt3DRender::QTechniqueFilter> m_pForwardFilter;
188 QPointer<Qt3DRender::QTechniqueFilter> m_pForwardSortedFilter;
190 QPointer<Qt3DRender::QSortPolicy> m_pSortPolicy;
192 QPointer<Qt3DRender::QFilterKey> m_pForwardTranspKey;
194 QPointer<Qt3DRender::QFilterKey> m_pForwardKey;
196 QPointer<Qt3DRender::QFilterKey> m_pForwardSortedKey;
198 QPointer<Qt3DRender::QFilterKey> m_pComputeKey;
200 QPointer<Qt3DRender::QDepthTest> m_pDepthTest;
202 QPointer<Qt3DRender::QCullFace> m_pCullFace;
204 QPointer<Qt3DRender::QBlendEquation> m_pBlendEquation;
206 QPointer<Qt3DRender::QBlendEquationArguments> m_pBlendArguments;
208 QPointer<Qt3DRender::QNoDepthMask> m_pNoDepthMask;
210 QPointer<Qt3DRender::QRenderCapture> m_pCapture;
212 bool m_bUseOpenGl4_3;
213};
214
215//=============================================================================================================
216// INLINE DEFINITIONS
217//=============================================================================================================
218} // namespace DISP3DLIB
219
220#endif // DISP3DLIB_CUSTOMFRAMEGRAPH_H
#define DISP3DSHARED_EXPORT
Custom framegaph class.
QSharedPointer< const CustomFrameGraph > ConstSPtr
QSharedPointer< CustomFrameGraph > SPtr