MNE-CPP  0.1.9
A Framework for Electrophysiology
rtconnectivity.h
Go to the documentation of this file.
1 //=============================================================================================================
35 #ifndef RTCONNECTIVITY_RTPROCESSING_H
36 #define RTCONNECTIVITY_RTPROCESSING_H
37 
38 //=============================================================================================================
39 // INCLUDES
40 //=============================================================================================================
41 
42 #include "rtprocessing_global.h"
44 
45 //=============================================================================================================
46 // EIGEN INCLUDES
47 //=============================================================================================================
48 
49 //=============================================================================================================
50 // QT INCLUDES
51 //=============================================================================================================
52 
53 #include <QObject>
54 #include <QThread>
55 
56 //=============================================================================================================
57 // FORWARD DECLARATIONS
58 //=============================================================================================================
59 
60 namespace FIFFLIB {
61  class FiffInfo;
62 }
63 
64 namespace CONNECTIVITYLIB {
65  class ConnectivitySettings;
66 }
67 
68 //=============================================================================================================
69 // DEFINE NAMESPACE RTPROCESSINGLIB
70 //=============================================================================================================
71 
72 namespace RTPROCESSINGLIB
73 {
74 
75 //=============================================================================================================
76 // CONNECTIVITYLIB FORWARD DECLARATIONS
77 //=============================================================================================================
78 
79 //=============================================================================================================
86 {
87  Q_OBJECT
88 
89 public:
90  //=========================================================================================================
96  void doWork(const CONNECTIVITYLIB::ConnectivitySettings& connectivitySettings);
97 
98 signals:
99  void resultReady(const QList<CONNECTIVITYLIB::Network>& connectivityResults, const CONNECTIVITYLIB::ConnectivitySettings& connectivitySettings);
100 };
101 
102 //=============================================================================================================
109 {
110  Q_OBJECT
111 
112 public:
113  typedef QSharedPointer<RtConnectivity> SPtr;
114  typedef QSharedPointer<const RtConnectivity> ConstSPtr;
116  //=========================================================================================================
122  explicit RtConnectivity(QObject *parent = 0);
123 
124  //=========================================================================================================
128  ~RtConnectivity();
129 
130  //=========================================================================================================
136  void append(const CONNECTIVITYLIB::ConnectivitySettings& connectivitySettings);
137 
138  //=========================================================================================================
142  void restart();
143 
144  //=========================================================================================================
148  void stop();
149 
150 protected:
151  QThread m_workerThread;
153 signals:
154  void newConnectivityResultAvailable(const QList<CONNECTIVITYLIB::Network>& connectivityResults, const CONNECTIVITYLIB::ConnectivitySettings& connectivitySettings);
155 
156  void operate(const CONNECTIVITYLIB::ConnectivitySettings& connectivitySettings);
157 };
158 
159 //=============================================================================================================
160 // INLINE DEFINITIONS
161 //=============================================================================================================
162 } // NAMESPACE
163 
164 #endif // RTCONNECTIVITY_RTPROCESSING_H
RTPROCESSINGLIB::RtConnectivity
Real-time connectivity estimation.
Definition: rtconnectivity.h:108
network.h
Network class declaration.
RTPROCESSINGLIB::RtConnectivityWorker
Real-time connectivity worker.
Definition: rtconnectivity.h:85
rtprocessing_global.h
realtime library export/import macros.
CONNECTIVITYLIB::ConnectivitySettings
This class is a container for connectivity settings.
Definition: connectivitysettings.h:91
RTPROCESSINGLIB::RtConnectivity::ConstSPtr
QSharedPointer< const RtConnectivity > ConstSPtr
Definition: rtconnectivity.h:114
RTPROCESSINGLIB::RtConnectivity::m_workerThread
QThread m_workerThread
Definition: rtconnectivity.h:151
RTPROCESSINGLIB::RtConnectivity::SPtr
QSharedPointer< RtConnectivity > SPtr
Definition: rtconnectivity.h:113
RTPROCESINGSHARED_EXPORT
#define RTPROCESINGSHARED_EXPORT
Definition: rtprocessing_global.h:55