v2.0.0
Loading...
Searching...
No Matches
coregsettingsview.h
Go to the documentation of this file.
1//=============================================================================================================
22
23#ifndef COREGSETTINGSVIEW_H
24#define COREGSETTINGSVIEW_H
25
26//=============================================================================================================
27// INCLUDES
28//=============================================================================================================
29
30#include "../disp_global.h"
31#include "abstractview.h"
32
33//=============================================================================================================
34// QT INCLUDES
35//=============================================================================================================
36
37#include <QSharedPointer>
38#include <QVector3D>
39
40#include <memory>
41
42//=============================================================================================================
43// EIGEN INCLUDES
44//=============================================================================================================
45
46#include <Eigen/Core>
47//=============================================================================================================
48// FORWARD DECLARATIONS
49//=============================================================================================================
50
51namespace Ui
52{
53class CoregSettingsViewWidget;
54}
55
56namespace FIFFLIB
57{
58class FiffCoordTrans;
59}
60//=============================================================================================================
61// DEFINE NAMESPACE NAMESPACE
62//=============================================================================================================
63
64namespace DISPLIB
65{
66
67//=============================================================================================================
68// NAMESPACE FORWARD DECLARATIONS
69//=============================================================================================================
70
71//=============================================================================================================
81{
82 Q_OBJECT
83
84public:
85 typedef QSharedPointer<CoregSettingsView> SPtr;
86 typedef QSharedPointer<const CoregSettingsView> ConstSPtr;
87
88 //=========================================================================================================
96 explicit CoregSettingsView(const QString& sSettingsPath = "",
97 QWidget* parent = 0,
98 Qt::WindowFlags f = Qt::Widget);
99
101
102 //=========================================================================================================
106 void saveSettings();
107
108 //=========================================================================================================
112 void loadSettings();
113
114 //=========================================================================================================
120 void updateGuiMode(GuiMode mode);
121
122 //=========================================================================================================
129
130 //=========================================================================================================
135 void clearSelectionBem();
136
137 //=========================================================================================================
143 void addSelectionBem(const QString& sBemName);
144
145 //=========================================================================================================
151 QString getCurrentSelectedBem();
152
153 //=========================================================================================================
159 int getCurrentFiducial();
160
161 //=========================================================================================================
167 void setFiducials(const QVector3D vecAxialPosition);
168
169 //=========================================================================================================
175 int getMaxIter();
176
177 //=========================================================================================================
183 float getConvergence();
184
185 //=========================================================================================================
191 bool getAutoScale();
192
193 //=========================================================================================================
199 float getOmmitDistance();
200
201 //=========================================================================================================
207 void setOmittedPoints(const int iN);
208
209 //=========================================================================================================
215 void setRMSE(const float fRMSE);
216
217 //=========================================================================================================
223 float getWeightLPA();
224 float getWeightRPA();
225 float getWeightNAS();
226 float getWeightEEG();
227 float getWeightHSP();
228 float getWeightHPI();
229
230 //=========================================================================================================
236 QList<int> getDigitizerCheckState();
237
238 //=========================================================================================================
247 void getTransParams(Eigen::Vector3f& vecRot,
248 Eigen::Vector3f& vecTrans,
249 Eigen::Vector3f& vecScale);
250
251 //=========================================================================================================
260 void setTransParams(const Eigen::Vector3f& vecTrans,
261 const Eigen::Vector3f& vecRot,
262 const Eigen::Vector3f& vecScale);
263
264 //=========================================================================================================
268 void clearView();
269
270private:
271 //=========================================================================================================
275 void onLoadFidFile();
276
277 //=========================================================================================================
281 void onPickingStatus();
282
283 //=========================================================================================================
287 void onFiducialChanged();
288 //=========================================================================================================
292 void onFitFiducials();
293
294 //=========================================================================================================
298 void onFitICP();
299
300 //=========================================================================================================
304 void onStoreFidFile();
305
306 //=========================================================================================================
310 void onLoadDigFile();
311
312 //=========================================================================================================
316 void onLoadTrans();
317
318 //=========================================================================================================
322 void onStoreTrans();
323
324 //=========================================================================================================
328 void onScalingModeChanges();
329
330 //=========================================================================================================
334 void setToolTipInfo();
335
336 std::unique_ptr<Ui::CoregSettingsViewWidget> m_pUi;
337 QString m_sSettingsPath;
338
339 QVector3D m_vecLPA;
340 QVector3D m_vecNAS;
341 QVector3D m_vecRPA;
342
343signals:
344 //=========================================================================================================
350 void fidFileChanged(const QString& sFilePath);
351
352 //=========================================================================================================
358 void fiducialChanged(const int iFiducial);
359
360 //=========================================================================================================
366 void fidStoreFileChanged(const QString& sFilePath);
367
368 //=========================================================================================================
374 void digFileChanged(const QString& sFilePath);
375
376 //=========================================================================================================
381
382 //=========================================================================================================
386 void fitICP();
387
388 //=========================================================================================================
394 void storeTrans(const QString& sFilePath);
395
396 //=========================================================================================================
402 void loadTrans(const QString& sFilePath);
403
404 //=========================================================================================================
410 void changeSelectedBem(const QString& sText);
411
412 //=========================================================================================================
417
418 //=========================================================================================================
422 void pickFiducials(bool bActivatePicking);
423};
424
425//=============================================================================================================
426// INLINE DEFINITIONS
427//=============================================================================================================
428
429} // NAMESPACE
430
431#endif // COREGSETTINGSVIEW_H
Export macros and build-info hooks for the DISPLIB shared library.
#define DISPSHARED_EXPORT
Definition disp_global.h:38
Common base widget for every dockable Quick-Control settings panel in DISPLIB.
FIFF file I/O, in-memory data structures and high-level readers/writers.
2-D display widgets and visualisation helpers (charts, topography, colour maps).
AbstractView(QWidget *parent=0, Qt::WindowFlags f=Qt::Widget)
void fidFileChanged(const QString &sFilePath)
void setRMSE(const float fRMSE)
void addSelectionBem(const QString &sBemName)
void updateProcessingMode(ProcessingMode mode)
void changeSelectedBem(const QString &sText)
void setOmittedPoints(const int iN)
void pickFiducials(bool bActivatePicking)
QSharedPointer< CoregSettingsView > SPtr
void loadTrans(const QString &sFilePath)
void setTransParams(const Eigen::Vector3f &vecTrans, const Eigen::Vector3f &vecRot, const Eigen::Vector3f &vecScale)
QSharedPointer< const CoregSettingsView > ConstSPtr
void fidStoreFileChanged(const QString &sFilePath)
void setFiducials(const QVector3D vecAxialPosition)
void digFileChanged(const QString &sFilePath)
void getTransParams(Eigen::Vector3f &vecRot, Eigen::Vector3f &vecTrans, Eigen::Vector3f &vecScale)
void storeTrans(const QString &sFilePath)
void fiducialChanged(const int iFiducial)
CoregSettingsView(const QString &sSettingsPath="", QWidget *parent=0, Qt::WindowFlags f=Qt::Widget)
Labelled 4x4 FIFF affine: source frame, destination frame, rotation, translation and cached inverse.