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{
53class FiffStream;
54class FiffDirNode;
55}
56
57//=============================================================================================================
58// DEFINE NAMESPACE MNELIB
59//=============================================================================================================
60
61namespace MNELIB
62{
63
64//=============================================================================================================
86{
87public:
88 typedef QSharedPointer<MNENamedMatrix> SPtr;
89 typedef QSharedPointer<const MNENamedMatrix> ConstSPtr;
90
91 //=========================================================================================================
99
100 //=========================================================================================================
108 MNENamedMatrix(const MNENamedMatrix& p_MneNamedMatrix);
109
110 //=========================================================================================================
118
119 //=========================================================================================================
134 static std::unique_ptr<MNENamedMatrix> build(int nrow,
135 int ncol,
136 const QStringList& rowlist,
137 const QStringList& collist,
138 const Eigen::MatrixXf& data);
139
140 //=========================================================================================================
155 static std::unique_ptr<MNENamedMatrix> read(QSharedPointer<FIFFLIB::FiffStream>& stream,
156 const QSharedPointer<FIFFLIB::FiffDirNode>& node,
157 int kind);
158
159 //=========================================================================================================
175 std::unique_ptr<MNENamedMatrix> pick(const QStringList& pickrowlist,
176 int picknrow,
177 const QStringList& pickcollist,
178 int pickncol) const;
179
180public:
181 int nrow;
182 int ncol;
183 QStringList rowlist;
184 QStringList collist;
185 Eigen::MatrixXf data;
186};
187
188} // NAMESPACE MNELIB
189
190#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.