v2.0.0
Loading...
Searching...
No Matches
inv_ecd_set.h
Go to the documentation of this file.
1//=============================================================================================================
19
20#ifndef INV_ECD_SET_H
21#define INV_ECD_SET_H
22
23//=============================================================================================================
24// INCLUDES
25//=============================================================================================================
26
27#include "../inv_global.h"
28#include "inv_ecd.h"
29
30//=============================================================================================================
31// QT INCLUDES
32//=============================================================================================================
33
34#include <QSharedPointer>
35#include <QList>
36#include <QString>
37
38//=============================================================================================================
39// EIGEN INCLUDES
40//=============================================================================================================
41
42//=============================================================================================================
43// FORWARD DECLARATIONS
44//=============================================================================================================
45
46//=============================================================================================================
47// DEFINE NAMESPACE INVLIB
48//=============================================================================================================
49
50namespace INVLIB
51{
52
53//=============================================================================================================
54// FIFFLIB FORWARD DECLARATIONS
55//=============================================================================================================
56
57//=============================================================================================================
65
67{
68public:
69 typedef QSharedPointer<InvEcdSet> SPtr;
70 typedef QSharedPointer<const InvEcdSet> ConstSPtr;
71
72 //=========================================================================================================
76 InvEcdSet();
77
78 //=========================================================================================================
84 InvEcdSet(const InvEcdSet& p_ECDSet);
85
86 //=========================================================================================================
97 InvEcdSet& operator=(const InvEcdSet& other) = default;
98
99 //=========================================================================================================
103 ~InvEcdSet();
104
105 //=========================================================================================================
111 void addEcd(const InvEcd& p_ecd);
112
113 //=========================================================================================================
121 static InvEcdSet read_dipoles_dip(const QString& fileName);
122
123 //=========================================================================================================
131 bool save_dipoles_bdip(const QString& fileName);
132
133 //=========================================================================================================
141 bool save_dipoles_dip(const QString& fileName) const;
142
143 //=========================================================================================================
149 inline qint32 size() const;
150
151 //=========================================================================================================
159 const InvEcd& operator[](int idx) const;
160
161 //=========================================================================================================
169 InvEcd& operator[](int idx);
170
171 //=========================================================================================================
179 InvEcdSet& operator<<(const InvEcd& p_ecd);
180
181public:
182 QString dataname;
183
184private:
185 QList<InvEcd> m_qListDips;
186};
187
188//=============================================================================================================
189// INLINE DEFINITIONS
190//=============================================================================================================
191
192inline qint32 InvEcdSet::size() const
193{
194 return m_qListDips.size();
195}
196} // NAMESPACE INVLIB
197
198#ifndef metatype_ecdset
199#define metatype_ecdset
201#endif
202
203#endif // INV_ECD_SET_H
Q_DECLARE_METATYPE(INVLIB::InvEcdSet)
Single equivalent current dipole (ECD) with position, moment and per-fit goodness/χ² metrics.
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).
Single equivalent current dipole with position, orientation, amplitude, and goodness-of-fit.
Definition inv_ecd.h:58
Holds a set of Electric Current Dipoles.
Definition inv_ecd_set.h:67
qint32 size() const
InvEcdSet & operator<<(const InvEcd &p_ecd)
QSharedPointer< InvEcdSet > SPtr
Definition inv_ecd_set.h:69
void addEcd(const InvEcd &p_ecd)
InvEcdSet & operator=(const InvEcdSet &other)=default
bool save_dipoles_dip(const QString &fileName) const
bool save_dipoles_bdip(const QString &fileName)
const InvEcd & operator[](int idx) const
static InvEcdSet read_dipoles_dip(const QString &fileName)
QSharedPointer< const InvEcdSet > ConstSPtr
Definition inv_ecd_set.h:70