MNE-CPP 0.1.9
A Framework for Electrophysiology
Loading...
Searching...
No Matches
networkedge.h
Go to the documentation of this file.
1//=============================================================================================================
35#ifndef NETWORKEDGE_H
36#define NETWORKEDGE_H
37
38//=============================================================================================================
39// INCLUDES
40//=============================================================================================================
41
42#include "../connectivity_global.h"
43
44//=============================================================================================================
45// QT INCLUDES
46//=============================================================================================================
47
48#include <QSharedPointer>
49
50//=============================================================================================================
51// EIGEN INCLUDES
52//=============================================================================================================
53
54#include<Eigen/Core>
55
56//=============================================================================================================
57// FORWARD DECLARATIONS
58//=============================================================================================================
59
60//=============================================================================================================
61// DEFINE NAMESPACE CONNECTIVITYLIB
62//=============================================================================================================
63
64namespace CONNECTIVITYLIB {
65
66//=============================================================================================================
67// CONNECTIVITYLIB FORWARD DECLARATIONS
68//=============================================================================================================
69
70class NetworkNode;
71
72//=============================================================================================================
80{
81
82public:
83 typedef QSharedPointer<NetworkEdge> SPtr;
84 typedef QSharedPointer<const NetworkEdge> ConstSPtr;
86 //=========================================================================================================
97 explicit NetworkEdge(int iStartNodeID,
98 int iEndNodeID,
99 const Eigen::MatrixXd& matWeight,
100 bool bIsActive = true,
101 int iStartWeightBin = -1,
102 int iEndWeightBin = -1);
103
104 //=========================================================================================================
110 int getStartNodeID();
111
112 //=========================================================================================================
118 int getEndNodeID();
119
120 //=========================================================================================================
126 void setActive(bool bActiveFlag);
127
128 //=========================================================================================================
134 bool isActive();
135
136 //=========================================================================================================
142 double getWeight() const;
143
144 //=========================================================================================================
150 Eigen::MatrixXd getMatrixWeight() const;
151
152 //=========================================================================================================
158 void setWeight(double dAveragedWeight);
159
160 //=========================================================================================================
164 void calculateAveragedWeight();
165
166 //=========================================================================================================
172 void setFrequencyBins(const QPair<int, int> &minMaxFreqBins);
173
174 //=========================================================================================================
180 const QPair<int,int>& getFrequencyBins();
181
182protected:
188 QPair<int,int> m_iMinMaxFreqBins;
190 Eigen::MatrixXd m_matWeight;
193};
194
195//=============================================================================================================
196// INLINE DEFINITIONS
197//=============================================================================================================
198
199} // namespace CONNECTIVITYLIB
200
201#endif // NETWORKEDGE_H
#define CONNECTIVITYSHARED_EXPORT
This class holds an object to describe the edge of a network.
Definition networkedge.h:80
QSharedPointer< const NetworkEdge > ConstSPtr
Definition networkedge.h:84
QSharedPointer< NetworkEdge > SPtr
Definition networkedge.h:83
QPair< int, int > m_iMinMaxFreqBins