28 #include <QStringList>
53 enum ChannelType {EEG = 0, SEEG = 1, MEG = 2, EMG = 3, ECG = 4, Reference = 5, Trigger = 6, Other = 7};
54 enum SourceType { Real, Virtual };
67 static QStringList
types();
77 inline float gain() {
return m_gain; }
81 inline QString&
name() {
return m_name; }
83 inline int ID() {
return m_ID; }
89 inline float *
data() {
return m_data; }
92 inline QString&
unit() {
return m_unit; }
95 inline double x() {
return m_x; }
97 inline double y() {
return m_y; }
99 inline double z() {
return m_z; }
102 inline double ox() {
return m_ox; }
104 inline double oy() {
return m_oy; }
106 inline double oz() {
return m_oz; }
109 void xyz(
double *
x,
double *
y,
double *
z);
115 inline bool isBad() {
return m_bad; }
118 inline int type() {
return m_type; }
125 inline QList<AwChannel *>&
references() {
return m_references; }
131 inline QString&
color() {
return m_color; }
137 inline float notch() {
return m_notch; }
145 inline AwChannel *parent() {
return m_parent; }
147 inline QString& displayPluginName() {
return m_registeredDisplayPlugin; }
153 inline bool isEEG() {
return m_type == AwChannel::EEG; }
155 inline bool isMEG() {
return m_type == AwChannel::MEG; }
157 inline bool isReference() {
return m_type == AwChannel::Reference; }
159 inline bool isECG() {
return m_type == AwChannel::ECG; }
161 inline bool isTrigger() {
return m_type == AwChannel::Trigger; }
163 inline bool isOther() {
return m_type == AwChannel::Other; }
165 inline bool isEMG() {
return m_type == AwChannel::EMG; }
167 inline bool isSEEG() {
return m_type == AwChannel::SEEG; }
169 inline bool isVirtual() {
return m_sourceType == AwChannel::Virtual; }
173 inline bool isSelected() {
return m_isSelected; }
175 inline QVariantList& customData() {
return m_customData; }
180 void clearRefChannels();
193 void setUnit(
const QString& u);
200 void setName(
const QString& Name);
204 void setID(quint32
id);
207 void setXYZ(
double x,
double y,
double z);
215 void setVisible(
bool flag);
225 void setNotch(
float val);
226 void setCustomData(
const QVariantList&
data) { m_customData =
data; }
231 void addProcess(AwProcess *process);
250 float m_samplingRate;
268 bool m_hasCoordinates;
269 SourceType m_sourceType;
270 QString m_registeredDisplayPlugin;
273 QString m_referenceName;
274 QList<AwChannel *> m_references;
280 QList<AwProcess *> m_processes;
281 QVariantList m_customData;
284 typedef QList<AwChannel *> AwChannelList;
285 Q_DECLARE_METATYPE(AwChannelList)
295 AwChannelList& connectedChannels() {
return m_connectedChannels; }
296 void connectChannels(
const AwChannelList& channels);
299 void setDataReady(
bool f =
true) { m_dataReady = f; update(); }
301 virtual void compute() {}
302 virtual void update() {}
305 AwChannelList m_connectedChannels;
bool isOther()
Definition: AwChannel.h:163
float * data()
Definition: AwChannel.h:89
void xyz(double *x, double *y, double *z)
Definition: AwChannel.cpp:108
void setOrientationXYZ(double ox, double oy, double oz)
Definition: AwChannel.cpp:223
void setDataReady(bool flag=true)
Definition: AwChannel.cpp:279
void setBad(bool flag)
Definition: AwChannel.cpp:230
bool isVirtual()
Definition: AwChannel.h:169
float notch()
Definition: AwChannel.h:137
AwChannel()
Definition: AwChannel.cpp:39
bool isVisible()
Definition: AwChannel.h:128
bool isBad()
Definition: AwChannel.h:115
void setSamplingRate(float rate)
Definition: AwChannel.cpp:203
int type()
Definition: AwChannel.h:118
static QStringList types()
Definition: AwChannel.cpp:29
bool isReference()
Definition: AwChannel.h:157
double y()
Definition: AwChannel.h:97
void setDisplayPluginName(const QString &name)
Definition: AwChannel.cpp:183
void setName(const QString &Name)
Definition: AwChannel.cpp:208
bool hasReferences()
Definition: AwChannel.h:140
double x()
Definition: AwChannel.h:95
bool isECG()
Definition: AwChannel.h:159
void setUnit(const char *u)
Definition: AwChannel.cpp:188
void setReferenceName(const QString &ref)
Definition: AwChannel.cpp:240
void clearData()
Definition: AwChannel.cpp:269
float lowFilter()
Definition: AwChannel.h:143
double oy()
Definition: AwChannel.h:104
static int stringToType(const QString &s)
Definition: AwChannel.cpp:290
void setXYZ(double x, double y, double z)
Definition: AwChannel.cpp:124
SourceType sourceType()
Definition: AwChannel.h:75
virtual AwChannel * duplicate()
Definition: AwChannel.cpp:95
void setLowFilter(float val)
Definition: AwChannel.cpp:252
AwVirtualChannel(AwChannel *chan)
Definition: AwChannel.h:292
static QString typeToString(int t)
Definition: AwChannel.cpp:311
Definition: AwChannel.h:287
void setType(int t)
Changing the type will clear the reference channel.
Definition: AwChannel.cpp:132
double ox()
Definition: AwChannel.h:102
bool isEMG()
Definition: AwChannel.h:165
float gain()
Definition: AwChannel.h:77
void setColor(const QString &col)
Definition: AwChannel.cpp:213
QString & color()
Definition: AwChannel.h:131
virtual AwVirtualChannel * duplicate()
Definition: AwChannel.h:303
QString & name()
Definition: AwChannel.h:81
bool isEEG()
Definition: AwChannel.h:153
void setSourceType(SourceType stype)
Definition: AwChannel.cpp:259
double oz()
Definition: AwChannel.h:106
bool isMEG()
Definition: AwChannel.h:155
double z()
Definition: AwChannel.h:99
void orientationXyz(double *ox, double *oy, double *oz)
Definition: AwChannel.cpp:115
bool isSEEG()
Definition: AwChannel.h:167
void setGain(float factor)
Definition: AwChannel.cpp:198
This class defines the AwChannel object.
Definition: AwChannel.h:50
float highFilter()
Definition: AwChannel.h:134
void setSelected(bool flag)
Definition: AwChannel.cpp:264
bool hasCoordinates()
Definition: AwChannel.h:150
QList< AwChannel * > & references()
Definition: AwChannel.h:125
float samplingRate()
Definition: AwChannel.h:79
QString & referenceName()
Definition: AwChannel.h:121
int dataSize()
Definition: AwChannel.h:86
bool isTrigger()
Definition: AwChannel.h:161
virtual ~AwChannel()
Definition: AwChannel.cpp:337
void setHighFilter(float val)
Definition: AwChannel.cpp:245
QString & unit()
Definition: AwChannel.h:92
float * newData(int length)
Definition: AwChannel.cpp:147