MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
fiff_raw_data.h
Go to the documentation of this file.
1//=============================================================================================================
37#ifndef FIFF_RAW_DATA_H
38#define FIFF_RAW_DATA_H
39
40//=============================================================================================================
41// INCLUDES
42//=============================================================================================================
43
44#include "fiff_global.h"
45#include "fiff_info.h"
46#include "fiff_raw_dir.h"
47#include "fiff_stream.h"
48
49//=============================================================================================================
50// EIGEN INCLUDES
51//=============================================================================================================
52
53#include <Eigen/Core>
54#include <Eigen/SparseCore>
55
56//=============================================================================================================
57// QT INCLUDES
58//=============================================================================================================
59
60#include <QList>
61#include <QSharedPointer>
62
63//=============================================================================================================
64// DEFINE NAMESPACE FIFFLIB
65//=============================================================================================================
66
67namespace FIFFLIB
68{
69
70class FiffRawData;
71
72//=============================================================================================================
79{
80public:
81 typedef QSharedPointer<FiffRawData> SPtr;
82 typedef QSharedPointer<const FiffRawData> ConstSPtr;
84 //=========================================================================================================
89
90 //=========================================================================================================
96 FiffRawData(const FiffRawData &p_FiffRawData);
97
98 //=========================================================================================================
104 FiffRawData(QIODevice &p_IODevice);
105
106 FiffRawData(QIODevice &p_IODevice, bool b_littleEndian);
107
108 //=========================================================================================================
112 ~FiffRawData();
113
114 //=========================================================================================================
118 void clear();
119
120 //=========================================================================================================
126 inline bool isEmpty() const
127 {
128 return first_samp == -1 && info.isEmpty();
129 }
130
131 //=========================================================================================================
145 bool read_raw_segment(Eigen::MatrixXd& data,
146 Eigen::MatrixXd& times,
147 fiff_int_t from = -1,
148 fiff_int_t to = -1,
149 const Eigen::RowVectorXi& sel = defaultRowVectorXi,
150 bool do_debug = false) const;
151
152 //=========================================================================================================
167 bool read_raw_segment(Eigen::MatrixXd& data,
168 Eigen::MatrixXd& times,
169 Eigen::SparseMatrix<double>& multSegment,
170 fiff_int_t from = -1,
171 fiff_int_t to = -1,
172 const Eigen::RowVectorXi& sel = defaultRowVectorXi,
173 bool do_debug = false) const;
174
175 //=========================================================================================================
189 bool read_raw_segment_times(Eigen::MatrixXd& data,
190 Eigen::MatrixXd& times,
191 float from,
192 float to,
193 const Eigen::RowVectorXi& sel = defaultRowVectorXi) const;
194
195public:
198 fiff_int_t first_samp;
199 fiff_int_t last_samp;
200 Eigen::RowVectorXd cals;
201 QList<FiffRawDir> rawdir;
202 Eigen::MatrixXd proj;
205};
206} // NAMESPACE
207
208#endif // FIFF_RAW_DATA_H
FiffInfo class declaration.
Fiff library export/import macros.
#define FIFFSHARED_EXPORT
Definition fiff_global.h:56
FiffStream class declaration.
FiffRawDir class declaration.
CTF software compensation data.
FIFF measurement file information.
Definition fiff_info.h:85
FIFF raw measurement data.
Eigen::RowVectorXd cals
QSharedPointer< FiffRawData > SPtr
bool read_raw_segment(Eigen::MatrixXd &data, Eigen::MatrixXd &times, fiff_int_t from=-1, fiff_int_t to=-1, const Eigen::RowVectorXi &sel=defaultRowVectorXi, bool do_debug=false) const
FiffStream::SPtr file
Eigen::MatrixXd proj
QList< FiffRawDir > rawdir
bool read_raw_segment(Eigen::MatrixXd &data, Eigen::MatrixXd &times, Eigen::SparseMatrix< double > &multSegment, fiff_int_t from=-1, fiff_int_t to=-1, const Eigen::RowVectorXi &sel=defaultRowVectorXi, bool do_debug=false) const
QSharedPointer< const FiffRawData > ConstSPtr
QSharedPointer< FiffStream > SPtr