31#ifndef FIFF_INFO_BASE_H
32#define FIFF_INFO_BASE_H
54#include <QSharedPointer>
79 using SPtr = QSharedPointer<FiffInfoBase>;
80 using ConstSPtr = QSharedPointer<const FiffInfoBase>;
81 using UPtr = std::unique_ptr<FiffInfoBase>;
82 using ConstUPtr = std::unique_ptr<const FiffInfoBase>;
152 static Eigen::RowVectorXi pick_channels_regexp(
const QStringList& ch_names,
const QString& regexp);
160 inline bool isEmpty()
const;
174 static Eigen::RowVectorXi pick_channels(
const QStringList& ch_names,
175 const QStringList& include = defaultQStringList,
176 const QStringList& exclude = defaultQStringList);
188 FiffInfoBase pick_info(
const Eigen::RowVectorXi* sel =
nullptr)
const;
204 Eigen::RowVectorXi pick_types(
const QString meg,
207 const QStringList& include = defaultQStringList,
208 const QStringList& exclude = defaultQStringList)
const;
225 Eigen::RowVectorXi pick_types(
bool meg,
228 const QStringList& include = defaultQStringList,
229 const QStringList& exclude = defaultQStringList)
const;
256 void mne_read_meg_comp_eeg_ch_info(QList<FiffChInfo>& megp,
258 QList<FiffChInfo>& meg_compp,
260 QList<FiffChInfo>& eegp,
270 QStringList get_channel_types();
280 static bool readBadChannelsFromFile(
const QString& name, QStringList& listOut);
300 return this->
nchan <= 0;
FIFF channel descriptor record (FIFF_CH_INFO): per-channel logical/scanner numbers,...
4x4 affine FIFF coordinate transform (FIFF_COORD_TRANS) annotated with source/destination coordinate-...
Export/import macros and build-info accessors for the FIFFLIB shared library.
#define FIFFSHARED_EXPORT
Single digitization point (FIFF_DIG_POINT) with kind (cardinal/HPI/EEG/extra), identifier and 3D coor...
SSP projection item: a named projection vector set with active/desired flags, parsed from FIFFB_PROJ_...
128-bit FIFF identifier record (machine ID + creation time) used to stamp files, blocks and parent re...
CTF / 4D Neuroimaging software gradient-compensation matrix block (FIFFB_MNE_CTF_COMP_DATA).
Primitive scalar typedefs and forward-compatible aliases backing the FIFF type system.
FIFF file I/O, in-memory data structures and high-level readers/writers.
bool operator==(const FiffChInfo &a, const FiffChInfo &b)
Labelled 4x4 FIFF affine: source frame, destination frame, rotation, translation and cached inverse.
128-bit FIFF identifier: hardware machine ID plus creation time, stamped on every file and block.
Stripped FIFF measurement info: channel list, sampling rate, device→head transform and bad-channel li...
QSharedPointer< const FiffInfoBase > ConstSPtr
QList< FiffCoordTrans > all_coord_trans
QSharedPointer< FiffInfoBase > SPtr
std::unique_ptr< FiffInfoBase > UPtr
QMap< QString, QList< int > > channel_indices_by_type(const QList< int > &picks={}) const
QString channel_type(qint32 idx) const
FiffCoordTrans ctf_head_t
std::unique_ptr< const FiffInfoBase > ConstUPtr
FiffInfoBase & operator=(const FiffInfoBase &other)=default
FiffCoordTrans dev_head_t