MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
fwd_coil_set.h
Go to the documentation of this file.
1//=============================================================================================================
37#ifndef FWDCOILSET_H
38#define FWDCOILSET_H
39
40//=============================================================================================================
41// INCLUDES
42//=============================================================================================================
43
44#include "fwd_global.h"
45#include "fwd_coil.h"
46#include <fiff/fiff_types.h>
47
48//=============================================================================================================
49// EIGEN INCLUDES
50//=============================================================================================================
51
52#include <Eigen/Core>
53
54//=============================================================================================================
55// QT INCLUDES
56//=============================================================================================================
57
58#include <QSharedPointer>
59
60typedef void (*fwdUserFreeFunc)(void *); /* General purpose */
61
62//=============================================================================================================
63// DEFINE NAMESPACE FWDLIB
64//=============================================================================================================
65
66namespace FWDLIB
67{
68
69//=============================================================================================================
76{
77public:
78 typedef QSharedPointer<FwdCoilSet> SPtr;
79 typedef QSharedPointer<const FwdCoilSet> ConstSPtr;
81 //=========================================================================================================
86 FwdCoilSet();
87
88// //=========================================================================================================
89// /**
90// * Copy constructor.
91// *
92// * @param[in] p_FwdCoilSet FwdCoilSet which should be copied
93// */
94// FwdCoilSet(const FwdCoilSet& p_FwdCoilSet);
95
96 //=========================================================================================================
101 ~FwdCoilSet();
102
103 void fwd_free_coil_set_user_data()
104 {
105 if (user_data_free && user_data)
106 user_data_free(user_data);
107 user_data = NULL;
108 }
109
110 //=========================================================================================================
122 FwdCoil* create_meg_coil(const FIFFLIB::FiffChInfo& ch, int acc, const FIFFLIB::FiffCoordTransOld* t);
123
124 //=========================================================================================================
137 FwdCoilSet* create_meg_coils(const QList<FIFFLIB::FiffChInfo>& chs,
138 int nch,
139 int acc,
141
142 //=========================================================================================================
154 static FwdCoilSet* create_eeg_els(const QList<FIFFLIB::FiffChInfo>& chs,
155 int nch,
157
158 //=========================================================================================================
167 static FwdCoilSet* read_coil_defs(const QString& name);
168
169 //=========================================================================================================
178 FwdCoilSet* dup_coil_set(const FIFFLIB::FiffCoordTransOld* t) const;
179
180 //=========================================================================================================
189 bool is_planar_coil_type(int type) const;
190
191 //=========================================================================================================
200 bool is_axial_coil_type(int type) const;
201
202 //=========================================================================================================
211 bool is_magnetometer_coil_type(int type) const;
212
213 //=========================================================================================================
222 bool is_eeg_electrode_type(int type) const;
223
224public:
225 FwdCoil **coils; /*< The coil or electrode positions >*/
226 int ncoil; /*< Number of coils >*/
227 int coord_frame; /*< Common coordinate frame >*/
228 void *user_data; /*< We can put whatever in here >*/
229 fwdUserFreeFunc user_data_free;
230
231// ### OLD STRUCT ###
232// typedef struct {
233// fwdCoil *coils; /* The coil or electrode positions */
234// int ncoil;
235// int coord_frame; /* Common coordinate frame */
236// void *user_data; /* We can put whatever in here */
237// fwdUserFreeFunc user_data_free;
238// } *fwdCoilSet,fwdCoilSetRec; /* A collection of the above */
239};
240
241//=============================================================================================================
242// INLINE DEFINITIONS
243//=============================================================================================================
244} // NAMESPACE FWDLIB
245
246#endif // FWDCOILSET_H
Definitions for describing the objects in a FIFF file.
FwdCoil class declaration.
forward library export/import macros.
#define FWDSHARED_EXPORT
Definition fwd_global.h:57
Coordinate transformation descriptor.
Channel info descriptor.
FwdCoil description.
Definition fwd_coil.h:89
FwdCoilSet description.
QSharedPointer< const FwdCoilSet > ConstSPtr
QSharedPointer< FwdCoilSet > SPtr