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// HPILIBE FORWARD DECLARATIONS
55//=============================================================================================================
56
57//=============================================================================================================
64{
65public:
66 typedef QSharedPointer<InvHpiModelParameters> SPtr;
67 typedef QSharedPointer<const InvHpiModelParameters> ConstSPtr;
68
69 //=========================================================================================================
74
75 //=========================================================================================================
84 explicit InvHpiModelParameters(const QVector<int> vecHpiFreqs,
85 const int iSampleFreq,
86 const int iLineFreq,
87 const bool bBasic);
88
89 //=========================================================================================================
95 InvHpiModelParameters(const InvHpiModelParameters &hpiModelParameter);
96
97 //=========================================================================================================
98
99 InvHpiModelParameters operator= (const InvHpiModelParameters& other);
100 inline bool operator== (const InvHpiModelParameters &b) const;
101 inline bool operator!= (const InvHpiModelParameters &b) const;
102
103 //=========================================================================================================
107
108 inline QVector<int> vecHpiFreqs() const;
109 inline int iNHpiCoils() const;
110 inline int iSampleFreq() const;
111 inline int iLineFreq() const;
112 inline bool bBasic() const;
113
114private:
115 //=========================================================================================================
119 void computeNumberOfCoils();
120
121 //=========================================================================================================
125 void checkForLineFreq();
126
127 QVector<int> m_vecHpiFreqs{QVector<int>()};
128 int m_iNHpiCoils{0};
129 int m_iSampleFreq{0};
130 int m_iLineFreq{0};
131 bool m_bBasic{true};
132};
133
134//=============================================================================================================
135// INLINE DEFINITIONS
136//=============================================================================================================
137
138inline QVector<int> InvHpiModelParameters::vecHpiFreqs() const
139{
140 return m_vecHpiFreqs;
141}
142
143//=============================================================================================================
144
146{
147 return m_iNHpiCoils;
148}
149
150//=============================================================================================================
151
153{
154 return m_iSampleFreq;
155}
156
157//=============================================================================================================
158
160{
161 return m_iLineFreq;
162}
163
164//=============================================================================================================
165
167{
168 return m_bBasic;
169}
170
171//=============================================================================================================
172
174{
175 return (this->vecHpiFreqs() == b.vecHpiFreqs() &&
176 this->iNHpiCoils() == b.iNHpiCoils() &&
177 this->iSampleFreq() == b.iSampleFreq() &&
178 this->iLineFreq() == b.iLineFreq() &&
179 this->bBasic() == b.bBasic());
180}
181
182//=============================================================================================================
183
185{
186 return !(*this==b);
187}
188
189} // namespace INVLIBE
190
191#endif // INV_HPI_MODEL_PARAMETERS_H
192
bool operator==(const BIDSPath &a, const BIDSPath &b)
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).
bool operator!=(const InvHpiModelParameters &b) const
QSharedPointer< const InvHpiModelParameters > ConstSPtr
QSharedPointer< InvHpiModelParameters > SPtr
bool operator==(const InvHpiModelParameters &b) const