MNE-CPP  beta 1.0
babymeginfo.h
1 //=============================================================================================================
37 #ifndef BABYMEGINFO_H
38 #define BABYMEGINFO_H
39 
40 
41 //*************************************************************************************************************
42 //=============================================================================================================
43 // INCLUDES
44 //=============================================================================================================
45 
46 #include <fiff/fiff_info.h>
47 
48 
49 //*************************************************************************************************************
50 //=============================================================================================================
51 // QT INCLUDES
52 //=============================================================================================================
53 
54 #include <QObject>
55 #include <QQueue>
56 #include <QtCore>
57 
58 #include <QStringList>
59 
60 
61 using namespace FIFFLIB;
62 
63 
64 //=============================================================================================================
70 class BabyMEGInfo : public QObject
71 {
72  Q_OBJECT
73 public:
74  //=========================================================================================================
78  BabyMEGInfo();
79 public:
80  int chnNum;
81  int dataLength;
82  double sfreq;
83  QStringList lm_ch_names;
84 
85  //BB_QUEUE
86  QQueue<QByteArray> g_queue;
87  int g_maxlen;
88  QMutex g_mutex;
89  QWaitCondition g_queueNotFull;
90  QWaitCondition g_queueNotEmpty;
91 
92 
93 
94  inline FiffInfo getFiffInfo() const;
95 
96 
97 signals:
98  void fiffInfoAvailable(FIFFLIB::FiffInfo);
99  void SendDataPackage(QByteArray DATA);
100  void SendCMDPackage(QByteArray DATA);
101 
102 public:
103  //=========================================================================================================
110  QStringList MGH_LM_Exact_Single_Channel_Info(QByteArray cmdstr);
111  //=========================================================================================================
118  QByteArray MGH_LM_Get_Field(QByteArray cmdstr);
119  //=========================================================================================================
125  void MGH_LM_Get_Channel_Info(QByteArray cmdstr);
126  //=========================================================================================================
132  void MGH_LM_Parse_Para(QByteArray cmdstr);
133  //=========================================================================================================
139  void MGH_LM_Send_DataPackage(QByteArray DATA);
140  //=========================================================================================================
146  void MGH_LM_Send_CMDPackage(QByteArray DATA);
147  //=========================================================================================================
153  void EnQueue(QByteArray DataIn);
154  //=========================================================================================================
161  QByteArray DeQueue();
162 
163 
164 private:
165  FiffInfo m_FiffInfo;
166 
167 };
168 
169 
170 //*************************************************************************************************************
171 //=============================================================================================================
172 // INLINE DEFINITIONS
173 //=============================================================================================================
174 
175 inline FiffInfo BabyMEGInfo::getFiffInfo() const
176 {
177  return m_FiffInfo;
178 }
179 
180 #endif // BABYMEGINFO_H
FIFF measurement file information.
Definition: fiff_info.h:96
The BabyMEGClient class provides a TCP/IP communication between Qt and Labview.
Definition: babymeginfo.h:70
FiffInfo class declaration.
Definition: fiff.h:98