MNE-CPP
beta 1.0
|
FIFF File I/O routines. More...
#include <fiff_stream.h>
Public Types | |
typedef QSharedPointer< FiffStream > | SPtr |
typedef QSharedPointer< const FiffStream > | ConstSPtr |
Public Member Functions | |
FiffStream (QIODevice *p_pIODevice) | |
FiffStream (QByteArray *a, QIODevice::OpenMode mode) | |
~FiffStream () | |
void | end_block (fiff_int_t kind) |
void | end_file () |
void | finish_writing_raw () |
bool | get_evoked_entries (const QList< FiffDirTree > &evoked_node, QStringList &comments, QList< fiff_int_t > &aspect_kinds, QString &t) |
bool | open (FiffDirTree &p_Tree, QList< FiffDirEntry > &p_Dir) |
QStringList | read_bad_channels (const FiffDirTree &p_Node) |
bool | read_cov (const FiffDirTree &p_Node, fiff_int_t cov_kind, FiffCov &p_covData) |
QList< FiffCtfComp > | read_ctf_comp (const FiffDirTree &p_Node, const QList< FiffChInfo > &p_Chs) |
bool | read_meas_info (const FiffDirTree &p_Node, FiffInfo &p_Info, FiffDirTree &p_NodeInfo) |
bool | read_meas_info_base (const FiffDirTree &p_Node, FiffInfoBase &p_InfoForward) |
bool | read_named_matrix (const FiffDirTree &p_Node, fiff_int_t matkind, FiffNamedMatrix &mat) |
QList< FiffProj > | read_proj (const FiffDirTree &p_Node) |
void | start_block (fiff_int_t kind) |
QString | streamName () |
void | write_ch_info (FiffChInfo *ch) |
void | write_coord_trans (const FiffCoordTrans &trans) |
void | write_cov (const FiffCov &p_FiffCov) |
void | write_ctf_comp (const QList< FiffCtfComp > &comps) |
void | write_dig_point (const FiffDigPoint &dig) |
void | write_double (fiff_int_t kind, const double *data, fiff_int_t nel=1) |
void | write_id (fiff_int_t kind, const FiffId &id=defaultFiffId) |
void | write_info_base (const FiffInfoBase &p_FiffInfoBase) |
void | write_int (fiff_int_t kind, const fiff_int_t *data, fiff_int_t nel=1) |
void | write_int_matrix (fiff_int_t kind, const MatrixXi &mat) |
void | write_float (fiff_int_t kind, const float *data, fiff_int_t nel=1) |
void | write_float_matrix (fiff_int_t kind, const MatrixXf &mat) |
void | write_float_sparse_ccs (fiff_int_t kind, const SparseMatrix< float > &mat) |
void | write_float_sparse_rcs (fiff_int_t kind, const SparseMatrix< float > &mat) |
void | write_name_list (fiff_int_t kind, const QStringList &data) |
void | write_named_matrix (fiff_int_t kind, const FiffNamedMatrix &mat) |
void | write_proj (const QList< FiffProj > &projs) |
bool | write_raw_buffer (const MatrixXd &buf, const RowVectorXd &cals) |
bool | write_raw_buffer (const MatrixXd &buf, const SparseMatrix< double > &mult) |
bool | write_raw_buffer (const MatrixXd &buf) |
void | write_string (fiff_int_t kind, const QString &data) |
void | write_rt_command (fiff_int_t command, const QString &data) |
Static Public Member Functions | |
static bool | setup_read_raw (QIODevice &p_IODevice, FiffRawData &data, bool allow_maxshield=false) |
static QStringList | split_name_list (QString p_sNameList) |
static FiffStream::SPtr | start_file (QIODevice &p_IODevice) |
static FiffStream::SPtr | start_writing_raw (QIODevice &p_IODevice, const FiffInfo &info, RowVectorXd &cals, MatrixXi sel=defaultMatrixXi) |
FIFF File I/O routines.
FiffStream provides an interface for reading from and writing to fiff files
Definition at line 129 of file fiff_stream.h.
typedef QSharedPointer<const FiffStream> FIFFLIB::FiffStream::ConstSPtr |
Const shared pointer type for FiffStream.
Definition at line 133 of file fiff_stream.h.
typedef QSharedPointer<FiffStream> FIFFLIB::FiffStream::SPtr |
Shared pointer type for FiffStream.
Definition at line 132 of file fiff_stream.h.
|
explicit |
Constructs a fiff stream that uses the I/O device p_pIODevice.
[in] | p_pIODevice | A fiff IO device like a fiff QFile or QTCPSocket |
Definition at line 75 of file fiff_stream.cpp.
|
explicit |
Constructs a fiff stream that operates on a byte array, a. The mode describes how the device is to be used.
[in] | a | The byte array |
[in] | mode | The open mode |
Definition at line 86 of file fiff_stream.cpp.
FiffStream::~FiffStream | ( | ) |
Destroys the FiffInfo.
Definition at line 97 of file fiff_stream.cpp.
void FiffStream::end_block | ( | fiff_int_t | kind | ) |
Writes a FIFF_BLOCK_END tag
[in] | kind | The block kind to end |
Definition at line 112 of file fiff_stream.cpp.
void FiffStream::end_file | ( | ) |
Writes the closing tags to a fif file and closes the file
Definition at line 120 of file fiff_stream.cpp.
void FiffStream::finish_writing_raw | ( | ) |
Finishes a raw file by writing all necessary end tags.
Definition at line 133 of file fiff_stream.cpp.
bool FiffStream::get_evoked_entries | ( | const QList< FiffDirTree > & | evoked_node, |
QStringList & | comments, | ||
QList< fiff_int_t > & | aspect_kinds, | ||
QString & | t | ||
) |
Helper to get all evoked entries
[in] | evoked_node | evoked tree nodes |
[out] | comments | found comments |
[out] | aspect_kinds | found aspect_kinds |
[out] | t | text formatted found information |
Definition at line 144 of file fiff_stream.cpp.
bool FiffStream::open | ( | FiffDirTree & | p_Tree, |
QList< FiffDirEntry > & | p_Dir | ||
) |
QFile::open
unmask base class open function fiff_open
Opens a fif file and provides the directory of tags
[out] | p_Tree | tag directory organized into a tree |
[out] | p_Dir | the sequential tag directory |
Definition at line 202 of file fiff_stream.cpp.
QStringList FiffStream::read_bad_channels | ( | const FiffDirTree & | p_Node | ) |
fiff_read_bad_channels
Reads the bad channel list from a node if it exists Note: In difference to mne-matlab this is not a static function. This is a method of the FiffDirTree class, that's why a tree object doesn't need to be handed to the function.
[in] | p_Node | The node of interest |
Definition at line 286 of file fiff_stream.cpp.
bool FiffStream::read_cov | ( | const FiffDirTree & | p_Node, |
fiff_int_t | cov_kind, | ||
FiffCov & | p_covData | ||
) |
mne_read_cov - also for mne_read_noise_cov
Reads a covariance matrix from a fiff file
[in] | p_Node | look for the matrix in here |
[in] | cov_kind | what kind of a covariance matrix do we want? |
[out] | p_covData | the read covariance matrix |
Definition at line 303 of file fiff_stream.cpp.
QList< FiffCtfComp > FiffStream::read_ctf_comp | ( | const FiffDirTree & | p_Node, |
const QList< FiffChInfo > & | p_Chs | ||
) |
fiff_read_ctf_comp
Read the CTF software compensation data from the given node
[in] | p_Node | The node of interest |
[in] | p_Chs | channels with the calibration info |
Definition at line 523 of file fiff_stream.cpp.
bool FiffStream::read_meas_info | ( | const FiffDirTree & | p_Node, |
FiffInfo & | p_Info, | ||
FiffDirTree & | p_NodeInfo | ||
) |
fiff_read_meas_info
Read the measurement info Source is assumed to be an open fiff file.
[in] | p_Node | The node of interest |
[out] | p_Info | The read measurement info |
[out] | p_NodeInfo | The to measurement corresponding fiff_dir_tree. |
Definition at line 746 of file fiff_stream.cpp.
bool FiffStream::read_meas_info_base | ( | const FiffDirTree & | p_Node, |
FiffInfoBase & | p_InfoForward | ||
) |
python read_forward_meas_info
Read light measurement info from forward operator -> ToDo base class of FiffInfo
[in] | p_Node | The node of interest |
[out] | p_InfoForward | The read light measurement info |
Definition at line 676 of file fiff_stream.cpp.
bool FiffStream::read_named_matrix | ( | const FiffDirTree & | p_Node, |
fiff_int_t | matkind, | ||
FiffNamedMatrix & | mat | ||
) |
fiff_read_named_matrix
Reads a named matrix.
[in] | p_Node | The node of interest |
[in] | matkind | The matrix kind to look for |
[out] | mat | The named matrix |
Definition at line 1059 of file fiff_stream.cpp.
QList< FiffProj > FiffStream::read_proj | ( | const FiffDirTree & | p_Node | ) |
fiff_read_proj
[ projdata ] = fiff_read_proj(fid,node)
Read the SSP data under a given directory node
[in] | p_Node | The node of interest |
Definition at line 1152 of file fiff_stream.cpp.
|
static |
fiff_setup_read_raw
Read information about raw data file
[in] | p_IODevice | An fiff IO device like a fiff QFile or QTCPSocket |
[out] | data | The raw data information - contains the opened fiff file |
[in] | allow_maxshield | Accept unprocessed MaxShield data |
Definition at line 1302 of file fiff_stream.cpp.
|
static |
fiff_split_name_list
Splits a string by looking for seperator ":"
[in] | p_sNameList | string to split |
Definition at line 1500 of file fiff_stream.cpp.
void FiffStream::start_block | ( | fiff_int_t | kind | ) |
fiff_start_block
Wrapper for the FiffStream start_block member function
Writes a FIFF_BLOCK_START tag
[in] | kind | The block kind to start |
Definition at line 1507 of file fiff_stream.cpp.
|
static |
fiff_start_file
Opens a fiff file for writing and writes the compulsory header tags
[in] | p_IODevice | The IODevice (like QFile or QTCPSocket) to open. It is recommended that the name ends with .fif |
Definition at line 1515 of file fiff_stream.cpp.
|
static |
fiff_start_writing_raw
function [fid,cals] = fiff_start_writing_raw(name,info,sel)
[in] | p_IODevice | A fiff IO device like a fiff QFile or QTCPSocket |
[in] | info | The measurement info block of the source file |
[out] | cals | Thecalibration matrix |
[in] | sel | Which channels will be included in the output file (optional) |
Definition at line 1543 of file fiff_stream.cpp.
QString FiffStream::streamName | ( | ) |
Get the stream name
Definition at line 1701 of file fiff_stream.cpp.
void FiffStream::write_ch_info | ( | FiffChInfo * | ch | ) |
fiff_write_ch_info
Writes a channel information record to a fif file The type, cal, unit, and pos members are explained in Table 9.5 of the MNE manual
[in] | ch | The channel information structure to write |
Definition at line 1716 of file fiff_stream.cpp.
void FiffStream::write_coord_trans | ( | const FiffCoordTrans & | trans | ) |
fiff_write_coord_trans
Writes a coordinate transformation structure
[in] | trans | The coordinate transfomation structure |
Definition at line 1794 of file fiff_stream.cpp.
void FiffStream::write_cov | ( | const FiffCov & | p_FiffCov | ) |
Write a noise covariance matrix
[in] | p_FiffCov | The noise covariance matrix to write |
Definition at line 1840 of file fiff_stream.cpp.
void FiffStream::write_ctf_comp | ( | const QList< FiffCtfComp > & | comps | ) |
fiff_write_ctf_comp
Writes the CTF compensation data into a fif file
[in] | comps | The compensation data to write |
Definition at line 1910 of file fiff_stream.cpp.
void FiffStream::write_dig_point | ( | const FiffDigPoint & | dig | ) |
fiff_write_dig_point
Writes a digitizer data point into a fif file
[in] | dig | The point to write |
Definition at line 1943 of file fiff_stream.cpp.
void FiffStream::write_double | ( | fiff_int_t | kind, |
const double * | data, | ||
fiff_int_t | nel = 1 |
||
) |
fiff_write_double
Writes a double-precision floating point tag to a fif file
[in] | kind | Tag kind |
[in] | data | The float data pointer |
[in] | nel | Number of doubles to write (default = 1) |
Definition at line 1971 of file fiff_stream.cpp.
void FiffStream::write_float | ( | fiff_int_t | kind, |
const float * | data, | ||
fiff_int_t | nel = 1 |
||
) |
fiff_write_float
Writes a single-precision floating point tag to a fif file
[in] | kind | Tag kind |
[in] | data | The float data pointer |
[in] | nel | Number of floats to write (default = 1) |
Definition at line 1989 of file fiff_stream.cpp.
void FiffStream::write_float_matrix | ( | fiff_int_t | kind, |
const MatrixXf & | mat | ||
) |
fiff_write_float_matrix
Writes a single-precision floating-point matrix tag
[in] | kind | The tag kind |
[in] | mat | The data matrix |
Definition at line 2007 of file fiff_stream.cpp.
void FiffStream::write_float_sparse_ccs | ( | fiff_int_t | kind, |
const SparseMatrix< float > & | mat | ||
) |
fiff_write_float_sparse_ccs
Writes a single-precision sparse (ccs) floating-point matrix tag
[in] | kind | The tag kind |
[in] | mat | The data matrix |
Definition at line 2037 of file fiff_stream.cpp.
void FiffStream::write_float_sparse_rcs | ( | fiff_int_t | kind, |
const SparseMatrix< float > & | mat | ||
) |
fiff_write_float_sparse_rcs
Writes a single-precision sparse (RCS) floating-point matrix tag
[in] | kind | The tag kind |
[in] | mat | The data matrix |
Definition at line 2130 of file fiff_stream.cpp.
void FiffStream::write_id | ( | fiff_int_t | kind, |
const FiffId & | id = defaultFiffId |
||
) |
fiff_write_id
Wrapper for the FiffStream write_id member function
Writes fiff id If the id argument is missing it will be generated here
[in] | kind | The tag kind |
[in] | id | The id to write |
Definition at line 2226 of file fiff_stream.cpp.
void FiffStream::write_info_base | ( | const FiffInfoBase & | p_FiffInfoBase | ) |
Write measurement info stored in forward solution
[in] | p_FiffInfoBase | The measurement info. |
Definition at line 2272 of file fiff_stream.cpp.
void FiffStream::write_int | ( | fiff_int_t | kind, |
const fiff_int_t * | data, | ||
fiff_int_t | nel = 1 |
||
) |
fiff_write_int
Writes a 32-bit integer tag to a fif file
[in] | kind | Tag kind |
[in] | data | The integer data pointer |
[in] | nel | Number of integers to write (default = 1) |
Definition at line 2337 of file fiff_stream.cpp.
void FiffStream::write_int_matrix | ( | fiff_int_t | kind, |
const MatrixXi & | mat | ||
) |
fiff_write_int_matrix
Writes a integer matrix tag
[in] | kind | The tag kind |
[in] | mat | The data matrix |
Definition at line 2353 of file fiff_stream.cpp.
void FiffStream::write_name_list | ( | fiff_int_t | kind, |
const QStringList & | data | ||
) |
fiff_write_name_list
Writes a colon-separated list of names
[in] | kind | The tag kind |
[in] | data | An array of names to create the list from |
Definition at line 2383 of file fiff_stream.cpp.
void FiffStream::write_named_matrix | ( | fiff_int_t | kind, |
const FiffNamedMatrix & | mat | ||
) |
fiff_write_named_matrix
Writes a named single-precision floating-point matrix
[in] | kind | The tag kind to use for the data |
[in] | mat | The data matrix |
Definition at line 2392 of file fiff_stream.cpp.
void FiffStream::write_proj | ( | const QList< FiffProj > & | projs | ) |
fiff_write_proj
Writes the projection data into a fif stream (file)
[in] | projs | The compensation data to write |
Definition at line 2408 of file fiff_stream.cpp.
bool FiffStream::write_raw_buffer | ( | const MatrixXd & | buf, |
const RowVectorXd & | cals | ||
) |
fiff_write_raw_buffer
Writes a raw buffer.
[in] | buf | the buffer to write |
[in] | cals | calibration factors |
Definition at line 2440 of file fiff_stream.cpp.
bool FiffStream::write_raw_buffer | ( | const MatrixXd & | buf, |
const SparseMatrix< double > & | mult | ||
) |
fiff_write_raw_buffer
Writes a raw buffer.
[in] | buf | the buffer to write |
[in] | mult | the used multiplication matrix consisting out of projection,calibration and compensation |
Definition at line 2465 of file fiff_stream.cpp.
bool FiffStream::write_raw_buffer | ( | const MatrixXd & | buf | ) |
fiff_write_raw_buffer
Writes a raw buffer without calibrations.
[in] | buf | the buffer to write |
Definition at line 2485 of file fiff_stream.cpp.
void FiffStream::write_rt_command | ( | fiff_int_t | command, |
const QString & | data | ||
) |
Writes a real-time command
[in] | command | The real time command |
[in] | data | The string data to write |
Definition at line 2509 of file fiff_stream.cpp.
void FiffStream::write_string | ( | fiff_int_t | kind, |
const QString & | data | ||
) |
fiff_write_string
Writes a string tag
[in] | kind | The tag kind |
[in] | data | The string data to write |
Definition at line 2495 of file fiff_stream.cpp.