v2.0.0
Loading...
Searching...
No Matches
inv_hpi_model_parameters.h
Go to the documentation of this file.
1//=============================================================================================================
22
23#ifndef INV_HPI_MODEL_PARAMETERS_H
24#define INV_HPI_MODEL_PARAMETERS_H
25
26//=============================================================================================================
27// INCLUDES
28//=============================================================================================================
29#include "../inv_global.h"
30
31//=============================================================================================================
32// QT INCLUDES
33//=============================================================================================================
34
35#include <QObject>
36#include <QVector>
37#include <QSharedPointer>
38
39//=============================================================================================================
40// EIGEN INCLUDES
41//=============================================================================================================
42
43//=============================================================================================================
44// FORWARD DECLARATIONS
45//=============================================================================================================
46
47//=============================================================================================================
48// DEFINE NAMESPACE HPILIBE
49//=============================================================================================================
50
51namespace INVLIB
52{
53
54//=============================================================================================================
55// HPILIBE FORWARD DECLARATIONS
56//=============================================================================================================
57
58//=============================================================================================================
67{
68public:
69 typedef QSharedPointer<InvHpiModelParameters> SPtr;
70 typedef QSharedPointer<const InvHpiModelParameters> ConstSPtr;
71
72 //=========================================================================================================
77
78 //=========================================================================================================
87 explicit InvHpiModelParameters(const QVector<int> vecHpiFreqs,
88 const int iSampleFreq,
89 const int iLineFreq,
90 const bool bBasic);
91
92 //=========================================================================================================
98 InvHpiModelParameters(const InvHpiModelParameters& hpiModelParameter);
99
100 //=========================================================================================================
101
103 inline bool operator==(const InvHpiModelParameters& b) const;
104 inline bool operator!=(const InvHpiModelParameters& b) const;
105
106 //=========================================================================================================
112
113 inline QVector<int> vecHpiFreqs() const;
114 inline int iNHpiCoils() const;
115 inline int iSampleFreq() const;
116 inline int iLineFreq() const;
117 inline bool bBasic() const;
118
119private:
120 //=========================================================================================================
124 void computeNumberOfCoils();
125
126 //=========================================================================================================
130 void checkForLineFreq();
131
132 QVector<int> m_vecHpiFreqs{QVector<int>()};
133 int m_iNHpiCoils{0};
134 int m_iSampleFreq{0};
135 int m_iLineFreq{0};
136 bool m_bBasic{true};
137};
138
139//=============================================================================================================
140// INLINE DEFINITIONS
141//=============================================================================================================
142
143inline QVector<int> InvHpiModelParameters::vecHpiFreqs() const
144{
145 return m_vecHpiFreqs;
146}
147
148//=============================================================================================================
149
151{
152 return m_iNHpiCoils;
153}
154
155//=============================================================================================================
156
158{
159 return m_iSampleFreq;
160}
161
162//=============================================================================================================
163
165{
166 return m_iLineFreq;
167}
168
169//=============================================================================================================
170
172{
173 return m_bBasic;
174}
175
176//=============================================================================================================
177
179{
180 return (this->vecHpiFreqs() == b.vecHpiFreqs() &&
181 this->iNHpiCoils() == b.iNHpiCoils() &&
182 this->iSampleFreq() == b.iSampleFreq() &&
183 this->iLineFreq() == b.iLineFreq() &&
184 this->bBasic() == b.bBasic());
185}
186
187//=============================================================================================================
188
190{
191 return !(*this == b);
192}
193
194} // namespace INVLIBE
195
196#endif // INV_HPI_MODEL_PARAMETERS_H
INVLIB library export/import macros, build-info accessors, and namespace docstring for the inverse-so...
#define INVSHARED_EXPORT
Definition inv_global.h:38
Inverse source estimation (MNE, dSPM, sLORETA, dipole fitting).
InvHpiModelParameters operator=(const InvHpiModelParameters &other)
bool operator!=(const InvHpiModelParameters &b) const
QSharedPointer< const InvHpiModelParameters > ConstSPtr
QSharedPointer< InvHpiModelParameters > SPtr
bool operator==(const InvHpiModelParameters &b) const