MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
fiff_io.h
Go to the documentation of this file.
1//=============================================================================================================
38#ifndef FIFF_IO_H
39#define FIFF_IO_H
40
41//=============================================================================================================
42// INCLUDES
43//=============================================================================================================
44
45#include "fiff_global.h"
46#include "fiff_info.h"
47#include "fiff_types.h"
48
49#include "fiff_raw_data.h"
50#include "fiff_evoked.h"
51
52#include "fiff_stream.h"
53
54//=============================================================================================================
55// QT INCLUDES
56//=============================================================================================================
57
58#include <QList>
59#include <QFile>
60#include <QIODevice>
61#include <QSharedPointer>
62#include <QDebug>
63
64//=============================================================================================================
65// FORWARD DECLARATIONS
66//=============================================================================================================
67
68namespace RTPROCESSINGLIB
69{
70 class FilterKernel;
71}
72
73//=============================================================================================================
74// DEFINE NAMESPACE FIFFLIB
75//=============================================================================================================
76
77namespace FIFFLIB
78{
79
80class FIFFSHARED_EXPORT FiffIO : public QObject
81{
82public:
83// enum Type {
84// _RAW = FIFFB_RAW_DATA, //102
85// _EVOKED = FIFFB_EVOKED, //104
86// _PROJ = FIFFB_PROJ, //313
87// _FWD = FIFFB_MNE_FORWARD_SOLUTION, //352
88// _COV = FIFFB_MNE_COV, //355
89// _NAMED_MATRIX = FIFFB_MNE_NAMED_MATRIX //357
90// };
91
92 //=========================================================================================================
97 FiffIO();
98
99 //=========================================================================================================
103 ~FiffIO();
104
105 //=========================================================================================================
111 FiffIO(QIODevice& pIODevice);
112
113 //=========================================================================================================
119 FiffIO(QList<QIODevice*>& p_qlistIODevices);
120
121 //=========================================================================================================
127 FiffIO(const FiffIO& p_FiffIO);
128
129 //=========================================================================================================
139 static bool setup_read(QIODevice& pIODevice,
140 FiffInfo& info,
141 FiffDirNode::SPtr& dirTree);
142
143 //=========================================================================================================
149 bool read(QIODevice& pIODevice);
150
151 //=========================================================================================================
157 bool read(QList<QIODevice>& p_qlistIODevices);
158
159 //=========================================================================================================
168 bool write(QIODevice& pIODevice,
169 const fiff_int_t type,
170 const fiff_int_t idx) const;
171
172 //=========================================================================================================
180 bool write(QFile& p_QFile,
181 const fiff_int_t type,
182 const fiff_int_t idx) const;
183
184 //=========================================================================================================
192 bool write_raw(QIODevice& pIODevice,
193 const fiff_int_t idx) const;
194
195 //=========================================================================================================
202 friend std::ostream& operator<<(std::ostream& out,
203 const FiffIO &p_fiffIO) {
204 out << "\n\n---------------------- Fiff data read summary ---------------------- " << std::endl;
205 out << "fiff data contains" << std::endl;
206 out << p_fiffIO.m_qlistRaw.size() << " raw data sets" << std::endl;
207 out << p_fiffIO.m_qlistEvoked.size() << " evoked sets" << std::endl;
208// out << p_fiffIO.m_qlistFwd.size() << " forward solutions" << std::endl;
209 return out;
210 }
211
212public:
213 QList<QSharedPointer<FiffRawData> > m_qlistRaw;
214 QList<QSharedPointer<FiffEvoked> > m_qlistEvoked;
215// QList<QSharedPointer<MNEForwardSolution> > m_qlistFwd;
216 //FiffCov, MNEInverseOperator, AnnotationSet,
217};
218
219//=============================================================================================================
220// INLINE DEFINITIONS
221//=============================================================================================================
222
223} // NAMESPACE
224
225#endif // FIFF_IO_H
FiffInfo class declaration.
Fiff library export/import macros.
#define FIFFSHARED_EXPORT
Definition fiff_global.h:56
FiffStream class declaration.
FiffRawData class declaration.
FiffEvoked class declaration.
Definitions for describing the objects in a FIFF file.
QSharedPointer< FiffDirNode > SPtr
FIFF measurement file information.
Definition fiff_info.h:85
FiffIO(const FiffIO &p_FiffIO)
bool read(QList< QIODevice > &p_qlistIODevices)
friend std::ostream & operator<<(std::ostream &out, const FiffIO &p_fiffIO)
Definition fiff_io.h:202