MNE-CPP  0.1.9
A Framework for Electrophysiology
mne_surface.h
Go to the documentation of this file.
1 //=============================================================================================================
37 #ifndef MNE_SURFACE_H
38 #define MNE_SURFACE_H
39 
40 //=============================================================================================================
41 // INCLUDES
42 //=============================================================================================================
43 
44 #include "mne_global.h"
45 
46 #include <fiff/fiff_dir_node.h>
47 #include <fiff/fiff_stream.h>
48 #include <fiff/fiff_types.h>
49 
50 //=============================================================================================================
51 // EIGEN INCLUDES
52 //=============================================================================================================
53 
54 #include <Eigen/Core>
55 
56 //=============================================================================================================
57 // QT INCLUDES
58 //=============================================================================================================
59 
60 #include <QIODevice>
61 #include <QList>
62 #include <QSharedPointer>
63 
64 //=============================================================================================================
65 // DEFINE NAMESPACE MNELIB
66 //=============================================================================================================
67 
68 namespace MNELIB
69 {
70 
71 //=============================================================================================================
72 // FORWARD DECLARATIONS
73 //=============================================================================================================
74 
75 //=============================================================================================================
83 {
84 public:
85  typedef QSharedPointer<MNESurface>SPtr;
86  typedef QSharedPointer<const MNESurface>ConstSPtr;
88  typedef Eigen::Matrix3Xf PointsT;
89  typedef Eigen::Matrix3Xf NormalsT;
90  typedef Eigen::Matrix3Xi TrianglesT;
92  //=========================================================================================================
96  MNESurface();
97 
102  {
103  }
104 
105  //=========================================================================================================
114  static bool read(QIODevice& p_IODevice, QList<MNESurface::SPtr>& surfaces);
115 
116  //=========================================================================================================
130  static bool read(FIFFLIB::FiffStream::SPtr& p_pStream, bool add_geom, const FIFFLIB::FiffDirNode::SPtr& p_Tree, QList<MNESurface::SPtr>& surfaces);
131 
132  //=========================================================================================================
133 
134  FIFFLIB::fiff_int_t id;
135  FIFFLIB::fiff_float_t sigma;
136  FIFFLIB::fiff_int_t np;
137  FIFFLIB::fiff_int_t ntri;
138  FIFFLIB::fiff_int_t coord_frame;
139  PointsT rr;
140  NormalsT nn;
141  TrianglesT tris;
143 private:
155  static bool read(FIFFLIB::FiffStream::SPtr& fiffStream,
156  const FIFFLIB::FiffDirNode::SPtr& dir,
157  const FIFFLIB::fiff_int_t def_coord_frame, MNESurface::SPtr& surf);
158 };
159 } // NAMESPACE
160 
161 #endif // MNE_SURFACE_H
FIFFLIB::fiff_float_t sigma
Definition: mne_surface.h:135
Old fiff_type declarations - replace them.
FiffStream class declaration.
BEM Surface.
Definition: mne_surface.h:82
FIFFLIB::fiff_int_t coord_frame
Definition: mne_surface.h:138
FIFFLIB::fiff_int_t ntri
Definition: mne_surface.h:137
QSharedPointer< FiffDirNode > SPtr
Definition: fiff_dir_node.h:77
FIFFLIB::fiff_int_t id
Definition: mne_surface.h:134
FIFFLIB::fiff_int_t np
Definition: mne_surface.h:136
QSharedPointer< MNESurface > SPtr
Definition: mne_surface.h:85
FiffDirNode class declaration, which provides fiff dir tree processing methods.
mne library export/import macros.
#define MNESHARED_EXPORT
Definition: mne_global.h:56
QSharedPointer< const MNESurface > ConstSPtr
Definition: mne_surface.h:86
QSharedPointer< FiffStream > SPtr
Definition: fiff_stream.h:107
Eigen::Matrix3Xf NormalsT
Definition: mne_surface.h:89
Eigen::Matrix3Xf PointsT
Definition: mne_surface.h:88
Eigen::Matrix3Xi TrianglesT
Definition: mne_surface.h:90