87 QList<QIODevice*>::iterator i;
88 for(i = p_qlistIODevices.begin(); i != p_qlistIODevices.end(); ++i) {
101 QString t_sFileName = p_pStream->streamName();
103 qInfo(
"Opening fiff data %s...\n",t_sFileName.toUtf8().constData());
105 if(!p_pStream->open())
109 if(!p_pStream->read_meas_info(p_pStream->dirtree(), info, dirTree))
123 bool hasEvoked =
false;
129 qWarning() <<
"[FiffIO::read] Dir tree could not be read";
152 QSharedPointer<FiffRawData> p_fiffRawData(
new FiffRawData(pIODevice));
158 qInfo(
"Finished reading raw data!\n");
159 }
catch (
const std::exception& e) {
160 qWarning() <<
"[FiffIO::read] Could not read raw data:" << e.what();
172 for(qint32 i=0; i < p_fiffEvokedSet.
evoked.size(); ++i) {
175 }
catch (
const std::exception& e) {
176 qWarning() <<
"[FiffIO::read] Could not read evoked data:" << e.what();
203 qDebug() <<
"Finished writing single raw data with index" << idx <<
".";
218 qInfo(
"------------------------ Writing fiff data ------------------------");
222 QString t_nameoftype =
"raw";
228 qint32 p = p_QFile.fileName().indexOf(
".fif");
229 t_fname = p_QFile.fileName().insert(p,QString(
"_"+t_nameoftype+
"-"+QString::number(i)));
232 qInfo(
"\nWriting set with index %i to file %s ...\n",i,t_fname.toUtf8().constData());
233 QFile t_file(t_fname);
241 qInfo(
"\nFinished Writing %lli raw data sets!\n",
m_qlistRaw.size());
258 SparseMatrix<double> mult;
265 float quantum_sec = 30.0f;
272 bool first_buffer =
true;
278 for(first = from; first < to; first+=quantum) {
279 last = first+quantum-1;
283 if (!
m_qlistRaw[idx]->read_raw_segment(data, times, mult, first, last, sel)) {
284 qWarning(
"error during read_raw_segment\n");
292 first_buffer =
false;
294 outfid->write_raw_buffer(data, cals);
298 outfid->finish_writing_raw();
Definition of a generic Fiff IO interface.
FiffEvokedSet class declaration.
#define FIFF_FIRST_SAMPLE
#define FIFFB_SMSH_RAW_DATA
#define FIFFB_PROCESSED_DATA
#define FIFFB_CONTINUOUS_DATA
FiffStream class declaration.
FIFF class declaration, which provides static wrapper functions to stay consistent with mne matlab to...
FIFF file I/O and data structures (raw, epochs, evoked, covariance, forward).
QSharedPointer< FiffDirNode > SPtr
QList< FiffEvoked > evoked
FIFF measurement file information.
QList< QSharedPointer< FiffRawData > > m_qlistRaw
bool write(QIODevice &pIODevice, const fiff_int_t type, const fiff_int_t idx) const
bool read(QIODevice &pIODevice)
bool write_raw(QIODevice &pIODevice, const fiff_int_t idx) const
QList< QSharedPointer< FiffEvoked > > m_qlistEvoked
static bool setup_read(QIODevice &pIODevice, FiffInfo &info, FiffDirNode::SPtr &dirTree)
FIFF raw measurement data.
QSharedPointer< FiffStream > SPtr
static FiffStream::SPtr start_writing_raw(QIODevice &p_IODevice, const FiffInfo &info, Eigen::RowVectorXd &cals, Eigen::MatrixXi sel=defaultMatrixXi, bool bResetRange=true)