MNE-CPP  0.1.9
A Framework for Electrophysiology
weightedphaselagindex.h
Go to the documentation of this file.
1 //=============================================================================================================
39 #ifndef WEIGHTEDPHASELAGINDEX_H
40 #define WEIGHTEDPHASELAGINDEX_H
41 
42 //=============================================================================================================
43 // INCLUDES
44 //=============================================================================================================
45 
46 #include "../connectivity_global.h"
47 
48 #include "abstractmetric.h"
49 #include "../connectivitysettings.h"
50 
51 //=============================================================================================================
52 // QT INCLUDES
53 //=============================================================================================================
54 
55 #include <QSharedPointer>
56 #include <QMutex>
57 
58 //=============================================================================================================
59 // EIGEN INCLUDES
60 //=============================================================================================================
61 
62 #include <Eigen/Core>
63 
64 //=============================================================================================================
65 // FORWARD DECLARATIONS
66 //=============================================================================================================
67 
68 //=============================================================================================================
69 // DEFINE NAMESPACE CONNECTIVITYLIB
70 //=============================================================================================================
71 
72 namespace CONNECTIVITYLIB {
73 
74 //=============================================================================================================
75 // CONNECTIVITYLIB FORWARD DECLARATIONS
76 //=============================================================================================================
77 
78 class Network;
79 
80 //=============================================================================================================
87 {
88 
89 public:
90  typedef QSharedPointer<WeightedPhaseLagIndex> SPtr;
91  typedef QSharedPointer<const WeightedPhaseLagIndex> ConstSPtr;
93  //=========================================================================================================
97  explicit WeightedPhaseLagIndex();
98 
99  //=========================================================================================================
107  static Network calculate(ConnectivitySettings& connectivitySettings);
108 
109 protected:
110  //=========================================================================================================
123  static void compute(ConnectivitySettings::IntermediateTrialData& inputData,
124  QVector<QPair<int,Eigen::MatrixXcd> >& vecPairCsdSum,
125  QVector<QPair<int,Eigen::MatrixXd> >& vecPairCsdImagAbsSum,
126  QMutex& mutex,
127  int iNRows,
128  int iNFreqs,
129  int iNfft,
130  const QPair<Eigen::MatrixXd, Eigen::VectorXd>& tapers);
131 
132  //=========================================================================================================
139  static void computeWPLI(ConnectivitySettings &connectivitySettings,
140  Network& finalNetwork);
141 };
142 
143 //=============================================================================================================
144 // INLINE DEFINITIONS
145 //=============================================================================================================
146 } // namespace CONNECTIVITYLIB
147 
148 #endif // WEIGHTEDPHASELAGINDEX_H
CONNECTIVITYLIB::ConnectivitySettings::IntermediateTrialData
Definition: connectivitysettings.h:98
CONNECTIVITYLIB::Network
This class holds information about a network, can compute a distance table and provide network metric...
Definition: network.h:88
CONNECTIVITYLIB::AbstractMetric
This class provides basic functionalities for all implemented metrics.
Definition: abstractmetric.h:77
CONNECTIVITYSHARED_EXPORT
#define CONNECTIVITYSHARED_EXPORT
Definition: connectivity_global.h:54
CONNECTIVITYLIB::WeightedPhaseLagIndex::ConstSPtr
QSharedPointer< const WeightedPhaseLagIndex > ConstSPtr
Definition: weightedphaselagindex.h:91
CONNECTIVITYLIB::ConnectivitySettings
This class is a container for connectivity settings.
Definition: connectivitysettings.h:91
CONNECTIVITYLIB::WeightedPhaseLagIndex
This class computes the phase lag index connectivity metric.
Definition: weightedphaselagindex.h:86
abstractmetric.h
AbstractMetric class declaration.
CONNECTIVITYLIB::WeightedPhaseLagIndex::SPtr
QSharedPointer< WeightedPhaseLagIndex > SPtr
Definition: weightedphaselagindex.h:90