MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
hpimodelparameters.h
Go to the documentation of this file.
1//=============================================================================================================
35#ifndef INVERSELIBE_HPIMODELPARAMETERS_H
36#define INVERSELIBE_HPIMODELPARAMETERS_H
37
38//=============================================================================================================
39// INCLUDES
40//=============================================================================================================
41#include "../inverse_global.h"
42
43//=============================================================================================================
44// QT INCLUDES
45//=============================================================================================================
46
47#include <QObject>
48#include <QVector>
49#include <QSharedPointer>
50
51//=============================================================================================================
52// EIGEN INCLUDES
53//=============================================================================================================
54
55//=============================================================================================================
56// FORWARD DECLARATIONS
57//=============================================================================================================
58
59//=============================================================================================================
60// DEFINE NAMESPACE INVERSELIBE
61//=============================================================================================================
62
63namespace INVERSELIB {
64
65//=============================================================================================================
66// INVERSELIBE FORWARD DECLARATIONS
67//=============================================================================================================
68
69//=============================================================================================================
76{
77public:
78 typedef QSharedPointer<HpiModelParameters> SPtr;
79 typedef QSharedPointer<const HpiModelParameters> ConstSPtr;
81 //=========================================================================================================
85 HpiModelParameters() = default;
86
87 //=========================================================================================================
96 explicit HpiModelParameters(const QVector<int> vecHpiFreqs,
97 const int iSampleFreq,
98 const int iLineFreq,
99 const bool bBasic);
100
101 //=========================================================================================================
107 HpiModelParameters(const HpiModelParameters &hpiModelParameter);
108
109 //=========================================================================================================
110
111 HpiModelParameters operator= (const HpiModelParameters& other);
112 inline bool operator== (const HpiModelParameters &b) const;
113 inline bool operator!= (const HpiModelParameters &b) const;
114
115 //=========================================================================================================
120 inline QVector<int> vecHpiFreqs() const;
121 inline int iNHpiCoils() const;
122 inline int iSampleFreq() const;
123 inline int iLineFreq() const;
124 inline bool bBasic() const;
125
126private:
127 //=========================================================================================================
131 void computeNumberOfCoils();
132
133 //=========================================================================================================
137 void checkForLineFreq();
138
139 QVector<int> m_vecHpiFreqs{QVector<int>()};
140 int m_iNHpiCoils{0};
141 int m_iSampleFreq{0};
142 int m_iLineFreq{0};
143 bool m_bBasic{true};
144};
145
146//=============================================================================================================
147// INLINE DEFINITIONS
148//=============================================================================================================
149
150inline QVector<int> HpiModelParameters::vecHpiFreqs() const
151{
152 return m_vecHpiFreqs;
153}
154
155//=============================================================================================================
156
157inline int HpiModelParameters::iNHpiCoils() const
158{
159 return m_iNHpiCoils;
160}
161
162//=============================================================================================================
163
164inline int HpiModelParameters::iSampleFreq() const
165{
166 return m_iSampleFreq;
167}
168
169//=============================================================================================================
170
171inline int HpiModelParameters::iLineFreq() const
172{
173 return m_iLineFreq;
174}
175
176//=============================================================================================================
177
178inline bool HpiModelParameters::bBasic() const
179{
180 return m_bBasic;
181}
182
183//=============================================================================================================
184
185inline bool HpiModelParameters::operator== (const HpiModelParameters &b) const
186{
187 return (this->vecHpiFreqs() == b.vecHpiFreqs() &&
188 this->iNHpiCoils() == b.iNHpiCoils() &&
189 this->iSampleFreq() == b.iSampleFreq() &&
190 this->iLineFreq() == b.iLineFreq() &&
191 this->bBasic() == b.bBasic());
192}
193
194//=============================================================================================================
195
196inline bool HpiModelParameters::operator!= (const HpiModelParameters &b) const
197{
198 return !(*this==b);
199}
200
201} // namespace INVERSELIBE
202
203#endif // INVERSELIBE_HPIMODELPARAMETERS_H
204
#define INVERSESHARED_EXPORT
Brief description of this class.
QSharedPointer< const HpiModelParameters > ConstSPtr
QVector< int > vecHpiFreqs() const
QSharedPointer< HpiModelParameters > SPtr