v2.0.0
Loading...
Searching...
No Matches
fiff_dig_point_set.h
Go to the documentation of this file.
1//=============================================================================================================
35
36#ifndef FIFFLIB_FIFF_DIG_POINT_SET_H
37#define FIFFLIB_FIFF_DIG_POINT_SET_H
38
39//=============================================================================================================
40// INCLUDES
41//=============================================================================================================
42
43#include "fiff_global.h"
44
45//=============================================================================================================
46// QT INCLUDES
47//=============================================================================================================
48
49#include <QSharedPointer>
50#include <QIODevice>
51#include <QList>
52
53#include "fiff_stream.h"
54#include "fiff_dig_point.h"
55
56//=============================================================================================================
57// EIGEN INCLUDES
58//=============================================================================================================
59
60//=============================================================================================================
61// FORWARD DECLARATIONS
62//=============================================================================================================
63
64//=============================================================================================================
65// DEFINE NAMESPACE FIFFLIB
66//=============================================================================================================
67
68namespace FIFFLIB {
69
70//=============================================================================================================
71// FIFFLIB FORWARD DECLARATIONS
72//=============================================================================================================
73
74class FiffDigPoint;
75class FiffDirNode;
76
77//=============================================================================================================
83
85{
86
87public:
88 typedef QSharedPointer<FiffDigPointSet> SPtr;
89 typedef QSharedPointer<const FiffDigPointSet> ConstSPtr;
90
91 //=========================================================================================================
96
97 //=========================================================================================================
103 FiffDigPointSet(const FiffDigPointSet &p_FiffDigPointSet);
104
105 //=========================================================================================================
111 FiffDigPointSet(QList<FIFFLIB::FiffDigPoint> pointList);
112
113 //=========================================================================================================
119 FiffDigPointSet(QIODevice &p_IODevice);
120
121 //=========================================================================================================
126
127 //=========================================================================================================
136 static bool readFromStream(FiffStream::SPtr& p_Stream, FiffDigPointSet& p_Dig);
137
138 //=========================================================================================================
142 inline void clear();
143
144 //=========================================================================================================
150 inline bool isEmpty() const;
151
152 //=========================================================================================================
158 inline qint32 size() const;
159
160 //=========================================================================================================
166 void write(QIODevice &p_IODevice);
167
168 //=========================================================================================================
174 void writeToStream(FiffStream* p_pStream);
175
176 //=========================================================================================================
184 const FiffDigPoint& operator[] (qint32 idx) const;
185
186 //=========================================================================================================
194 FiffDigPoint& operator[] (qint32 idx);
195
196 //=========================================================================================================
204 FiffDigPointSet pickTypes(QList<int> includeTypes) const;
205
206 //=========================================================================================================
214 FiffDigPointSet& operator<< (const FiffDigPoint& dig);
215
216 //=========================================================================================================
224 FiffDigPointSet& operator<< (const FiffDigPoint* dig);
225
226 //=========================================================================================================
233 void applyTransform(const FiffCoordTrans& coordTrans, bool bApplyInverse = false);
234
235 //=========================================================================================================
241 QList<FiffDigPoint> getList();
242
243// ToDo:
244// //=========================================================================================================
245// /**
246// * Write the FiffDigPointSet to a FIF file
247// *
248// * @param[in] p_IODevice IO device to write the FiffDigPointSet to.
249// */
250// void write(QIODevice &p_IODevice);
251
252protected:
253
254private:
255 QList<FiffDigPoint> m_qListDigPoint;
256};
257
258//=============================================================================================================
259// INLINE DEFINITIONS
260//=============================================================================================================
261
263{
264 m_qListDigPoint.clear();
265}
266
267//=============================================================================================================
268
269inline bool FiffDigPointSet::isEmpty() const
270{
271 return m_qListDigPoint.size() == 0;
272}
273
274//=============================================================================================================
275
276inline qint32 FiffDigPointSet::size() const
277{
278 return m_qListDigPoint.size();
279}
280} // namespace FIFFLIB
281
282#ifndef metatype_fiffdigpointset
283#define metatype_fiffdigpointset
285#endif
286
287#ifndef metatype_fiffdigpointset_sptr
288#define metatype_fiffdigpointset_sptr
290#endif
291
292#endif // FIFFLIB_FIFF_DIG_POINT_SET_H
Fiff library export/import macros.
#define FIFFSHARED_EXPORT
Definition fiff_global.h:52
FiffStream class declaration.
Q_DECLARE_METATYPE(FIFFLIB::FiffDigPointSet)
FiffDigPoint class declaration.
FIFF file I/O and data structures (raw, epochs, evoked, covariance, forward).
Coordinate transformation description.
Digitization point description.
Holds a set of digitizer points.
QSharedPointer< FiffDigPointSet > SPtr
FiffDigPointSet pickTypes(QList< int > includeTypes) const
QSharedPointer< const FiffDigPointSet > ConstSPtr
void applyTransform(const FiffCoordTrans &coordTrans, bool bApplyInverse=false)
void write(QIODevice &p_IODevice)
void writeToStream(FiffStream *p_pStream)
static bool readFromStream(FiffStream::SPtr &p_Stream, FiffDigPointSet &p_Dig)
QList< FiffDigPoint > getList()
Directory node structure.
FIFF File I/O routines.
QSharedPointer< FiffStream > SPtr