v2.0.0
Loading...
Searching...
No Matches
dipole.h
Go to the documentation of this file.
1//=============================================================================================================
21
22#ifndef DIPOLE_H
23#define DIPOLE_H
24
25//=============================================================================================================
26// INCLUDES
27//=============================================================================================================
28
29//=============================================================================================================
30// EIGEN INCLUDES
31//=============================================================================================================
32
33#include <Eigen/Core>
34
35#include <iostream>
36
37//=============================================================================================================
38// DEFINE NAMESPACE INVERSELIB
39//=============================================================================================================
40
41namespace INVERSELIB
42{
43
44//=============================================================================================================
45// FORWARD DECLARATIONS
46//=============================================================================================================
47template<typename T>
48class Dipole;
49
50//=============================================================================================================
57template<typename T>
68
69//=============================================================================================================
75template<class T>
76class Dipole
77{
78//typedef Eigen::Matrix<T, 3, 1> Point3D;
79
80public:
81
82 //=========================================================================================================
87
88 //=========================================================================================================
94 /* Dipole();*/
95
96 //=========================================================================================================
101 virtual ~Dipole();
102
103 inline T& x() { return m_vecPosition[0] ; }
104 inline T& y() { return m_vecPosition[1] ; }
105 inline T& z() { return m_vecPosition[2] ; }
106 inline T x() const { return m_vecPosition[0] ; }
107 inline T y() const { return m_vecPosition[1] ; }
108 inline T z() const { return m_vecPosition[2] ; }
109
110 inline T& phi_x() { return m_vecDirection[0] ; }
111 inline T& phi_y() { return m_vecDirection[1] ; }
112 inline T& phi_z() { return m_vecDirection[2] ; }
113 inline T phi_x() const { return m_vecDirection[0] ; }
114 inline T phi_y() const { return m_vecDirection[1] ; }
115 inline T phi_z() const { return m_vecDirection[2] ; }
116
117 //=========================================================================================================
121 void clean();
122
123protected:
124
125private:
126
127 Eigen::Matrix<T, 3, 1> m_vecPosition;
128 Eigen::Matrix<T, 3, 1> m_vecDirection;
129
130 double m_dLength;
131 double m_dFrequency;
132
133 //TGreensFunction* green;
134};
135} // NAMESPACE
136
137//TypeDefs
141
142//Make the template definition visible to compiler in the first point of instantiation
143#include "dipole.cpp"
144
145#endif // DIPOLE_H
ToDo Documentation...
INVERSELIB::Dipole< int > Dipole_INT
Definition dipole.h:138
INVERSELIB::Dipole< float > Dipole_FLOAT
Definition dipole.h:139
INVERSELIB::Dipole< double > Dipole_DOUBLE
Definition dipole.h:140
Inverse source estimation (MNE, dSPM, sLORETA, dipole fitting).
Stores position, orientation, and correlation of a single current dipole estimated by RAP MUSIC.
Definition dipole.h:77
T phi_x() const
Definition dipole.h:113
T phi_z() const
Definition dipole.h:115
T x() const
Definition dipole.h:106
T y() const
Definition dipole.h:107
virtual ~Dipole()
Definition dipole.cpp:60
T z() const
Definition dipole.h:108
T phi_y() const
Definition dipole.h:114
Pair of correlated dipole indices and orientations found by the RAP MUSIC scanning step.
Definition dipole.h:59
Dipole< T > m_Dipole1
Definition dipole.h:61
Dipole< T > m_Dipole2
Definition dipole.h:64