MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
mne_sourceestimate.h
Go to the documentation of this file.
1
2//=============================================================================================================
38#ifndef MNESOURCEESTIMATE_H
39#define MNESOURCEESTIMATE_H
40
41//=============================================================================================================
42// INCLUDES
43//=============================================================================================================
44
45#include "mne_global.h"
46
47#include <fs/label.h>
48
49//=============================================================================================================
50// EIGEN INCLUDES
51//=============================================================================================================
52
53#include <Eigen/Core>
54
55//=============================================================================================================
56// QT INCLUDES
57//=============================================================================================================
58
59#include <QSharedPointer>
60#include <QList>
61#include <QIODevice>
62
63//=============================================================================================================
64// FORWARD DECLARATIONS
65//=============================================================================================================
66
67//=============================================================================================================
68// DEFINE NAMESPACE MNELIB
69//=============================================================================================================
70
71namespace MNELIB
72{
73
74//=============================================================================================================
75// MNELIB FORWARD DECLARATIONS
76//=============================================================================================================
77
78//=============================================================================================================
85{
86public:
87 typedef QSharedPointer<MNESourceEstimate> SPtr;
88 typedef QSharedPointer<const MNESourceEstimate> ConstSPtr;
90 //=========================================================================================================
95
96 //=========================================================================================================
105 MNESourceEstimate(const Eigen::MatrixXd &p_sol, const Eigen::VectorXi &p_vertices, float p_tmin, float p_tstep);
106
107 //=========================================================================================================
113 MNESourceEstimate(const MNESourceEstimate& p_SourceEstimate);
114
115 //=========================================================================================================
122 MNESourceEstimate(QIODevice &p_IODevice);
123
124 //=========================================================================================================
128 void clear();
129
130 //=========================================================================================================
137 MNESourceEstimate reduce(qint32 start, qint32 n);
138
139 //=========================================================================================================
150 static bool read(QIODevice &p_IODevice, MNESourceEstimate& p_stc);
151
152 //=========================================================================================================
160 bool write(QIODevice &p_IODevice);
161
162 //=========================================================================================================
168 inline bool isEmpty() const;
169
170 //=========================================================================================================
178 MNESourceEstimate& operator= (const MNESourceEstimate &rhs);
179
180 //=========================================================================================================
186 int samples() const;
187
188 //=========================================================================================================
197 Eigen::VectorXi getIndicesByLabel(const QList<FSLIB::Label> &lPickedLabels, bool bIsClustered) const;
198
199public:
200 Eigen::MatrixXd data;
201 Eigen::VectorXi vertices; //ToDo define is_clustered_result; in clustered case vertices holds the ROI idcs
202 Eigen::RowVectorXf times;
203 float tmin;
204 float tstep;
206private:
207 //=========================================================================================================
211 void update_times();
212};
213
214//=============================================================================================================
215// INLINE DEFINITIONS
216//=============================================================================================================
217
218inline bool MNESourceEstimate::isEmpty() const
219{
220 return tstep == -1;
221}
222} //NAMESPACE
223
224#endif // MNESOURCEESTIMATE_H
mne library export/import macros.
#define MNESHARED_EXPORT
Definition mne_global.h:56
Label class declaration.
QSharedPointer< const MNESourceEstimate > ConstSPtr
QSharedPointer< MNESourceEstimate > SPtr
MNESourceEstimate(const Eigen::MatrixXd &p_sol, const Eigen::VectorXi &p_vertices, float p_tmin, float p_tstep)