v2.0.0
Loading...
Searching...
No Matches
channelinfomodel.h
Go to the documentation of this file.
1//=============================================================================================================
35
36#ifndef CHANNELINFOMODEL_H
37#define CHANNELINFOMODEL_H
38
39//=============================================================================================================
40// INCLUDES
41//=============================================================================================================
42
43#include "../../disp_global.h"
44
45//=============================================================================================================
46// QT INCLUDES
47//=============================================================================================================
48
49#include <QAbstractTableModel>
50#include <QSharedPointer>
51#include <QPointF>
52#include <QMultiMap>
53
54//=============================================================================================================
55// EIGEN INCLUDES
56//=============================================================================================================
57
58#include <Eigen/Core>
59
60//=============================================================================================================
61// FORWARD DECLARATIONS
62//=============================================================================================================
63
64namespace FIFFLIB {
65 class FiffInfo;
66}
67
68//=============================================================================================================
69// DEFINE NAMESPACE DISPLIB
70//=============================================================================================================
71
72namespace DISPLIB
73{
74
75//=============================================================================================================
76// DISPLIB FORWARD DECLARATIONS
77//=============================================================================================================
78
79class MNEOperator;
80
82{
83 enum ItemRole{GetOrigChName = Qt::UserRole + 1009,
84 GetMappedLayoutChName = Qt::UserRole + 1010,
85 GetChNumber = Qt::UserRole + 1011,
86 GetChKind = Qt::UserRole + 1012,
87 GetMEGType = Qt::UserRole + 1013,
88 GetChUnit = Qt::UserRole + 1014,
89 GetChAlias = Qt::UserRole + 1015,
90 GetChPosition = Qt::UserRole + 1016,
91 GetChDigitizer = Qt::UserRole + 1017,
92 GetChActiveFilter = Qt::UserRole + 1018,
93 GetChCoilType = Qt::UserRole + 1019,
94 GetIsBad = Qt::UserRole + 1020};
95}
96
97//=============================================================================================================
103class DISPSHARED_EXPORT ChannelInfoModel : public QAbstractTableModel
104{
105 Q_OBJECT
106
107public:
108 typedef QSharedPointer<ChannelInfoModel> SPtr;
109 typedef QSharedPointer<const ChannelInfoModel> ConstSPtr;
110
111 ChannelInfoModel(QSharedPointer<FIFFLIB::FiffInfo>& pFiffInfo, QObject *parent = 0);
112 ChannelInfoModel(QObject *parent = 0);
113
114 //=========================================================================================================
118 virtual int rowCount(const QModelIndex & parent = QModelIndex()) const;
119 virtual int columnCount(const QModelIndex &parent = QModelIndex()) const;
120 virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
121 virtual QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const;
122 virtual bool setData(const QModelIndex & index, const QVariant & value, int role = Qt::EditRole);
123 virtual Qt::ItemFlags flags(const QModelIndex & index) const;
124 virtual bool insertRows(int position, int span, const QModelIndex & parent = QModelIndex());
125 virtual bool removeRows(int position, int span, const QModelIndex & parent = QModelIndex());
126
127 //=========================================================================================================
133 void setFiffInfo(QSharedPointer<FIFFLIB::FiffInfo>& pFiffInfo);
134
135 //=========================================================================================================
141 void assignedOperatorsChanged(const QMultiMap<int,QSharedPointer<MNEOperator> > &assignedOperators);
142
143 //=========================================================================================================
149 void layoutChanged(const QMap<QString,QPointF> &layoutMap);
150
151 //=========================================================================================================
157 const QStringList & getMappedChannelsList();
158
159 //=========================================================================================================
166 int getIndexFromOrigChName(QString chName);
167
168 //=========================================================================================================
175 int getIndexFromMappedChName(QString chName);
176
177 //=========================================================================================================
183 QStringList getBadChannelList();
184
185 //=========================================================================================================
189 void clearModel();
190
191protected:
192
193 //=========================================================================================================
197 void mapLayoutToChannels();
198
199 QSharedPointer<FIFFLIB::FiffInfo> m_pFiffInfo;
200
201 QMultiMap<int,QSharedPointer<MNEOperator> > m_assignedOperators;
202 QMap<QString,QPointF> m_layoutMap;
203
204 QStringList m_aliasNames;
206
207signals:
208 //=========================================================================================================
213 void channelsMappedToLayout(const QStringList &mappedLayoutChNames);
214};
215} // NAMESPACE DISPLIB
216
217#endif // CHANNELINFOMODEL_H
disp library export/import macros.
#define DISPSHARED_EXPORT
Definition disp_global.h:51
FIFF file I/O and data structures (raw, epochs, evoked, covariance, forward).
2-D display widgets and visualisation helpers (charts, topography, colour maps).
void channelsMappedToLayout(const QStringList &mappedLayoutChNames)
ChannelInfoModel(QSharedPointer< FIFFLIB::FiffInfo > &pFiffInfo, QObject *parent=0)
virtual QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
void setFiffInfo(QSharedPointer< FIFFLIB::FiffInfo > &pFiffInfo)
void assignedOperatorsChanged(const QMultiMap< int, QSharedPointer< MNEOperator > > &assignedOperators)
QMultiMap< int, QSharedPointer< MNEOperator > > m_assignedOperators
virtual bool insertRows(int position, int span, const QModelIndex &parent=QModelIndex())
QSharedPointer< const ChannelInfoModel > ConstSPtr
QSharedPointer< FIFFLIB::FiffInfo > m_pFiffInfo
QSharedPointer< ChannelInfoModel > SPtr
int getIndexFromMappedChName(QString chName)
virtual QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
void layoutChanged(const QMap< QString, QPointF > &layoutMap)
virtual bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
int getIndexFromOrigChName(QString chName)
const QStringList & getMappedChannelsList()
QMap< QString, QPointF > m_layoutMap
virtual Qt::ItemFlags flags(const QModelIndex &index) const
virtual int rowCount(const QModelIndex &parent=QModelIndex()) const
virtual bool removeRows(int position, int span, const QModelIndex &parent=QModelIndex())
virtual int columnCount(const QModelIndex &parent=QModelIndex()) const
MNEOperator class represents the base class of an arbitrary MNEOperator, e.g. FILTER,...
Definition mneoperator.h:79
FIFF measurement file information.
Definition fiff_info.h:85