23#ifndef EVOKEDSETMODEL_H
24#define EVOKEDSETMODEL_H
39#include <QAbstractTableModel>
40#include <QSharedPointer>
48#include <Eigen/SparseCore>
78typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor>
MatrixXdR;
97 typedef QSharedPointer<EvokedSetModel>
SPtr;
98 typedef QSharedPointer<const EvokedSetModel>
ConstSPtr;
134 virtual int rowCount(
const QModelIndex &parent = QModelIndex())
const ;
144 virtual int columnCount(
const QModelIndex &parent = QModelIndex())
const;
156 QVariant
data(
int row,
158 int role = Qt::DisplayRole)
const;
169 virtual QVariant
data(
const QModelIndex &index,
170 int role = Qt::DisplayRole)
const;
183 Qt::Orientation orientation,
184 int role = Qt::DisplayRole)
const;
194 void setEvokedSet(QSharedPointer<FIFFLIB::FiffEvokedSet> pEvokedSet);
227 void setAverageColor(
const QSharedPointer<QMap<QString, QColor> > qMapAverageColor);
245 FIFFLIB::fiff_int_t
getKind(qint32 row)
const;
265 FIFFLIB::fiff_int_t
getUnit(qint32 row)
const;
275 FIFFLIB::fiff_int_t
getCoil(qint32 row)
const;
331 void selectRows(
const QList<qint32> &selection);
376 QSharedPointer<FIFFLIB::FiffEvokedSet> m_pEvokedSet;
378 QMap<qint32,qint32> m_qMapIdxRowSelection;
379 QSharedPointer<QMap<QString, QColor> > m_qMapAverageColor;
380 QSharedPointer<QMap<QString, bool> > m_qMapAverageActivation;
381 QSharedPointer<QMap<QString, QColor> > m_qMapAverageColorOld;
382 QSharedPointer<QMap<QString, bool> > m_qMapAverageActivationOld;
384 QList<Eigen::MatrixXd> m_matData;
385 QList<Eigen::MatrixXd> m_matDataFreeze;
386 QStringList m_lAvrTypes;
388 Eigen::MatrixXd m_matProj;
389 Eigen::MatrixXd m_matComp;
390 Eigen::SparseMatrix<double> m_matSparseProjCompMult;
391 Eigen::SparseMatrix<double> m_matSparseProjMult;
392 Eigen::SparseMatrix<double> m_matSparseCompMult;
394 Eigen::RowVectorXi m_vecBadIdcs;
396 QPair<QVariant,QVariant> m_pairBaseline;
400 bool m_bProjActivated;
401 bool m_bCompActivated;
435#ifndef metatype_listrowvectorxd
436#define metatype_listrowvectorxd
440#ifndef metatype_listrowvectorpair
441#define metatype_listrowvectorpair
Q_DECLARE_METATYPE(DISPLIB::AvrTypeRowVector)
Export macros and build-info hooks for the DISPLIB shared library.
#define DISPSHARED_EXPORT
Primitive scalar typedefs and forward-compatible aliases backing the FIFF type system.
Linear-phase FIR filter kernel with overlap-add FFT convolution back-end.
FIFF file I/O, in-memory data structures and high-level readers/writers.
2-D display widgets and visualisation helpers (charts, topography, colour maps).
QPair< QString, DISPLIB::RowVectorPair > AvrTypeRowVectorPair
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > MatrixXdR
QPair< QString, Eigen::RowVectorXd > AvrTypeRowVector
QPair< const double *, qint32 > RowVectorPair
FIFFLIB::fiff_int_t getUnit(qint32 row) const
QSharedPointer< QMap< QString, bool > > getAverageActivation() const
void setAverageActivation(const QSharedPointer< QMap< QString, bool > > qMapAverageActivation)
QSharedPointer< const EvokedSetModel > ConstSPtr
QVariant data(int row, int column, int role=Qt::DisplayRole) const
virtual int columnCount(const QModelIndex &parent=QModelIndex()) const
void newSelection(QList< qint32 > selection)
qint32 getNumSamples() const
int getNumAverages() const
void newAverageActivationMap(const QSharedPointer< QMap< QString, bool > > qMapAverageActivation)
float getSamplingFrequency() const
QSharedPointer< EvokedSetModel > SPtr
void newAverageColorMap(const QSharedPointer< QMap< QString, QColor > > qMapAverageColor)
void selectRows(const QList< qint32 > &selection)
void updateProjection(const QList< FIFFLIB::FiffProj > &projs)
void setAverageColor(const QSharedPointer< QMap< QString, QColor > > qMapAverageColor)
const QMap< qint32, qint32 > & getIdxSelMap() const
qint32 getNumPreStimSamples() const
virtual QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
QPair< QVariant, QVariant > getBaselineInfo() const
QSharedPointer< QMap< QString, QColor > > getAverageColor() const
FIFFLIB::fiff_int_t getCoil(qint32 row) const
void updateCompensator(int to)
int getNumberOfTimeSpacers() const
bool getIsChannelBad(qint32 row) const
void setEvokedSet(QSharedPointer< FIFFLIB::FiffEvokedSet > pEvokedSet)
QSharedPointer< FIFFLIB::FiffEvokedSet > getEvokedSet()
EvokedSetModel(QObject *parent=0)
virtual int rowCount(const QModelIndex &parent=QModelIndex()) const
FIFFLIB::fiff_int_t getKind(qint32 row) const
Single SSP projection item: kind, active flag, desired flag and the named projection vector matrix.