v2.0.0
Loading...
Searching...
No Matches
mne_named_matrix.h
Go to the documentation of this file.
1//=============================================================================================================
18
19#ifndef MNENAMEDMATRIX_H
20#define MNENAMEDMATRIX_H
21
22//=============================================================================================================
23// INCLUDES
24//=============================================================================================================
25
26#include "mne_global.h"
27
28//=============================================================================================================
29// EIGEN INCLUDES
30//=============================================================================================================
31
32#include <Eigen/Core>
33
34//=============================================================================================================
35// STL INCLUDES
36//=============================================================================================================
37
38#include <memory>
39
40//=============================================================================================================
41// QT INCLUDES
42//=============================================================================================================
43
44#include <QSharedPointer>
45#include <QStringList>
46
47//=============================================================================================================
48// FORWARD DECLARATIONS
49//=============================================================================================================
50
51namespace FIFFLIB
52{
53 class FiffStream;
54 class FiffDirNode;
55}
56
57//=============================================================================================================
58// DEFINE NAMESPACE MNELIB
59//=============================================================================================================
60
61namespace MNELIB
62{
63
64//=============================================================================================================
84{
85public:
86 typedef QSharedPointer<MNENamedMatrix> SPtr;
87 typedef QSharedPointer<const MNENamedMatrix> ConstSPtr;
88
89 //=========================================================================================================
97
98 //=========================================================================================================
106 MNENamedMatrix(const MNENamedMatrix& p_MneNamedMatrix);
107
108 //=========================================================================================================
116
117 //=========================================================================================================
132 static std::unique_ptr<MNENamedMatrix> build(int nrow,
133 int ncol,
134 const QStringList& rowlist,
135 const QStringList& collist,
136 const Eigen::MatrixXf& data);
137
138 //=========================================================================================================
153 static std::unique_ptr<MNENamedMatrix> read(QSharedPointer<FIFFLIB::FiffStream>& stream,
154 const QSharedPointer<FIFFLIB::FiffDirNode>& node,
155 int kind);
156
157 //=========================================================================================================
173 std::unique_ptr<MNENamedMatrix> pick(const QStringList& pickrowlist,
174 int picknrow,
175 const QStringList& pickcollist,
176 int pickncol) const;
177
178public:
179 int nrow;
180 int ncol;
181 QStringList rowlist;
182 QStringList collist;
183 Eigen::MatrixXf data;
184};
185
186} // NAMESPACE MNELIB
187
188#endif // MNENAMEDMATRIX_H
MNELIB shared-library export/import macros and library build metadata.
#define MNESHARED_EXPORT
Definition mne_global.h:40
Core MNE data structures (source spaces, source estimates, hemispheres).
FIFF file I/O, in-memory data structures and high-level readers/writers.
Recursive FIFF block-tree node: block kind, block ID, directly contained directory entries and child ...
FIFF tag-stream reader/writer: wraps a QIODevice and exposes typed read_* / write_* methods for every...
MNENamedMatrix()
Default constructor.
static std::unique_ptr< MNENamedMatrix > read(QSharedPointer< FIFFLIB::FiffStream > &stream, const QSharedPointer< FIFFLIB::FiffDirNode > &node, int kind)
Factory: read a named matrix from a FIFF file.
QSharedPointer< MNENamedMatrix > SPtr
QSharedPointer< const MNENamedMatrix > ConstSPtr
static std::unique_ptr< MNENamedMatrix > build(int nrow, int ncol, const QStringList &rowlist, const QStringList &collist, const Eigen::MatrixXf &data)
Factory: build a named matrix from its constituent parts.
std::unique_ptr< MNENamedMatrix > pick(const QStringList &pickrowlist, int picknrow, const QStringList &pickcollist, int pickncol) const
Create a sub-matrix by picking named rows and columns.