MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
fiff_ch_pos.h
Go to the documentation of this file.
1//=============================================================================================================
37#ifndef FIFF_CH_POS_H
38#define FIFF_CH_POS_H
39
40//=============================================================================================================
41// INCLUDES
42//=============================================================================================================
43
44#include "fiff_global.h"
45#include "fiff_types.h"
46
47//=============================================================================================================
48// QT INCLUDES
49//=============================================================================================================
50
51#include <QSharedPointer>
52
53//=============================================================================================================
54// DEFINE NAMESPACE FIFFLIB
55//=============================================================================================================
56
57namespace FIFFLIB
58{
59
60//=============================================================================================================
67{
68public:
69 typedef QSharedPointer<FiffChPos> SPtr;
70 typedef QSharedPointer<const FiffChPos> ConstSPtr;
72 //=========================================================================================================
76 FiffChPos();
77
78 //=========================================================================================================
84 FiffChPos(const FiffChPos &p_FiffChPos);
85
86 //=========================================================================================================
90 ~FiffChPos();
91
92 //=========================================================================================================
98 inline static qint32 storageSize();
99
100 //=========================================================================================================
108 friend bool operator== (const FiffChPos &a, const FiffChPos &b);
109
110public:
111 fiff_int_t coil_type;
112 Eigen::Vector3f r0;
113 Eigen::Vector3f ex;
114 Eigen::Vector3f ey;
115 Eigen::Vector3f ez;
117// ### OLD STRUCT ###
118// /** Measurement channel position and coil type. *
119// typedef struct _fiffChPosRec {
120// fiff_int_t coil_type; /**< What kind of coil. *
121// fiff_float_t r0[3]; /**< Coil coordinate system origin *
122// fiff_float_t ex[3]; /**< Coil coordinate system x-axis unit vector *
123// fiff_float_t ey[3]; /**< Coil coordinate system y-axis unit vector *
124// fiff_float_t ez[3]; /**< Coil coordinate system z-axis unit vector *
125// } fiffChPosRec,*fiffChPos; /**< Measurement channel position and coil type *
126
127// typedef fiffChPosRec fiff_ch_pos_t;
128};
129
130//=============================================================================================================
131// INLINE DEFINITIONS
132//=============================================================================================================
133
135{
136 return 52;
137}
138
139//=============================================================================================================
140
141inline bool operator== (const FiffChPos &a, const FiffChPos &b)
142{
143 return (a.coil_type == b.coil_type &&
144 a.r0.isApprox(b.r0, 0.0001f) &&
145 a.ex.isApprox(b.ex, 0.0001f) &&
146 a.ey.isApprox(b.ey, 0.0001f) &&
147 a.ez.isApprox(b.ez, 0.0001f));
148}
149} // NAMESPACE
150
151#endif // FIFF_CH_POS_H
Fiff library export/import macros.
#define FIFFSHARED_EXPORT
Definition fiff_global.h:56
Definitions for describing the objects in a FIFF file.
Measurement channel position and coil type.
Definition fiff_ch_pos.h:67
QSharedPointer< const FiffChPos > ConstSPtr
Definition fiff_ch_pos.h:70
Eigen::Vector3f r0
fiff_int_t coil_type
QSharedPointer< FiffChPos > SPtr
Definition fiff_ch_pos.h:69
static qint32 storageSize()
Eigen::Vector3f ey
Eigen::Vector3f ex
Eigen::Vector3f ez