MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
mne_inverse_operator.h
Go to the documentation of this file.
1//=============================================================================================================
37#ifndef MNEINVERSEOPERATOR_H
38#define MNEINVERSEOPERATOR_H
39
40//=============================================================================================================
41// INCLUDES
42//=============================================================================================================
43
44#include "../inverse_global.h"
45#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
60//=============================================================================================================
61// DEFINE NAMESPACE FIFFLIB
62//=============================================================================================================
63
64namespace FIFFLIB
65{
66 class FiffCoordTransOld;
67}
68
69namespace MNELIB
70{
71 class MneCovMatrix;
72 class MneNamedMatrix;
73 class MneProjOp;
74}
75
76//=============================================================================================================
77// DEFINE NAMESPACE INVERSELIB
78//=============================================================================================================
79
80namespace INVERSELIB
81{
82
83//=============================================================================================================
84// FORWARD DECLARATIONS
85//=============================================================================================================
86
87//=============================================================================================================
94{
95public:
96 typedef QSharedPointer<MneInverseOperator> SPtr;
97 typedef QSharedPointer<const MneInverseOperator> ConstSPtr;
99 //=========================================================================================================
105
106 //=========================================================================================================
112
113public:
114 FIFFLIB::fiffId meas_id; /* The assosiated measurement ID */
115 MNELIB::MneSourceSpaceOld* *spaces; /* The source spaces */
116 int nspace; /* Number of source spaces */
117 FIFFLIB::FiffCoordTransOld* meg_head_t; /* MEG device <-> head coordinate transformation */
118 FIFFLIB::FiffCoordTransOld* mri_head_t; /* MRI device <-> head coordinate transformation */
119 int methods; /* EEG, MEG or EEG+MEG (see mne_fiff.h) */
120 int nchan; /* Number of measurement channels */
121 int nsource; /* Number of source points */
122 int fixed_ori; /* Fixed source orientations? */
123 float **rr_source; /* The active source points */
124 float **nn_source; /* The source orientations (These are equal to the cortex normals in the fixed orientation case) */
125 int coord_frame; /* Which coordinates are the locations and orientations given in? */
126 MNELIB::MneCovMatrix* sensor_cov; /* Sensor covariance matrix */
127 int nave; /* Number of averaged responses (affects scaling of the noise covariance) */
128 int current_unit; /* This can be FIFF_UNIT_AM, FIFF_UNIT_AM_M2, FIFF_UNIT_AM_M3 */
129 MNELIB::MneCovMatrix* source_cov; /* Source covariance matrix */
130 MNELIB::MneCovMatrix* orient_prior; /* Orientation prior applied */
131 MNELIB::MneCovMatrix* depth_prior; /* Depth-weighting prior applied */
132 MNELIB::MneCovMatrix* fMRI_prior; /* fMRI prior applied */
133 float *sing; /* Singular values of the inverse operator */
134 MNELIB::MneNamedMatrix* eigen_leads; /* The eigen leadfields */
135 int eigen_leads_weighted; /* Have the above been already weighted with R^0.5? */
136 MNELIB::MneNamedMatrix* eigen_fields; /* Associated field patterns */
137 float trace_ratio; /* tr(GRG^T)/tr(C) */
138 MNELIB::MneProjOp* proj; /* The associated projection operator */
139
140// ### OLD STRUCT ###
141//typedef struct { /* An inverse operator */
142// FIFFLIB::fiffId meas_id; /* The assosiated measurement ID */
143// INVERSELIB::MneSourceSpaceOld* *spaces; /* The source spaces */
144// int nspace; /* Number of source spaces */
145// INVERSELIB::FiffCoordTransOld* meg_head_t; /* MEG device <-> head coordinate transformation */
146// INVERSELIB::FiffCoordTransOld* mri_head_t; /* MRI device <-> head coordinate transformation */
147// int methods; /* EEG, MEG or EEG+MEG (see mne_fiff.h) */
148// int nchan; /* Number of measurement channels */
149// int nsource; /* Number of source points */
150// int fixed_ori; /* Fixed source orientations? */
151// float **rr_source; /* The active source points */
152// float **nn_source; /* The source orientations (These are equal to the cortex normals in the fixed orientation case) */
153// int coord_frame; /* Which coordinates are the locations and orientations given in? */
154// INVERSELIB::MneCovMatrix* sensor_cov; /* Sensor covariance matrix */
155// int nave; /* Number of averaged responses (affects scaling of the noise covariance) */
156// int current_unit; /* This can be FIFF_UNIT_AM, FIFF_UNIT_AM_M2, FIFF_UNIT_AM_M3 */
157// INVERSELIB::MneCovMatrix* source_cov; /* Source covariance matrix */
158// INVERSELIB::MneCovMatrix* orient_prior; /* Orientation prior applied */
159// INVERSELIB::MneCovMatrix* depth_prior; /* Depth-weighting prior applied */
160// INVERSELIB::MneCovMatrix* fMRI_prior; /* fMRI prior applied */
161// float *sing; /* Singular values of the inverse operator */
162// INVERSELIB::MneNamedMatrix* eigen_leads; /* The eigen leadfields */
163// int eigen_leads_weighted; /* Have the above been already weighted with R^0.5? */
164// INVERSELIB::MneNamedMatrix* eigen_fields; /* Associated field patterns */
165// float trace_ratio; /* tr(GRG^T)/tr(C) */
166// INVERSELIB::MneProjOp* proj; /* The associated projection operator */
167//} *mneInverseOperator,mneInverseOperatorRec;
168};
169
170//=============================================================================================================
171// INLINE DEFINITIONS
172//=============================================================================================================
173} // NAMESPACE INVERSELIB
174
175#endif // MNEINVERSEOPERATOR_H
Definitions for describing the objects in a FIFF file.
MNE Surface or Volume (MneSurfaceOrVolume) class declaration.
#define INVERSESHARED_EXPORT
Coordinate transformation descriptor.
ToDo Old implementation use new fiff_id.h instead.
QSharedPointer< const MneInverseOperator > ConstSPtr
QSharedPointer< MneInverseOperator > SPtr
Covariance matrix storage.
Matrix specification with a channel list.
One linear projection item.
Definition mne_proj_op.h:84
This defines a source space.