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  // parameters of single channel
85  QStringList lm_ch_scales;
86  QStringList lm_ch_pos1;
87  QStringList lm_ch_pos2;
88  QStringList lm_ch_pos3;
89  QStringList lm_ch_pos4;
90  QStringList lm_ch_pos5;
91  QStringList lm_ch_pos6;
92  QStringList lm_ch_pos7;
93  QStringList lm_ch_pos8;
94  QStringList lm_ch_pos9;
95  QStringList lm_ch_pos10;
96  QStringList lm_ch_pos11;
97  QStringList lm_ch_pos12;
98  QStringList lm_ch_coiltype;
99  QStringList lm_ch_calicoef;
100  QStringList lm_ch_gain;
101 
102  //BB_QUEUE
103  QQueue<QByteArray> g_queue;
104  int g_maxlen;
105  QMutex g_mutex;
106  QWaitCondition g_queueNotFull;
107  QWaitCondition g_queueNotEmpty;
108 
109 
110 
111  inline FiffInfo getFiffInfo() const;
112 
113 
114 signals:
115  void fiffInfoAvailable(FIFFLIB::FiffInfo);
116  void SendDataPackage(QByteArray DATA);
117  void SendCMDPackage(QByteArray DATA);
118  void GainInfoUpdate(QStringList);
119 
120 public:
121  //=========================================================================================================
128  QStringList MGH_LM_Exact_Single_Channel_Info(QByteArray cmdstr);
129  //=========================================================================================================
136  QByteArray MGH_LM_Get_Field(QByteArray cmdstr);
137  //=========================================================================================================
143  void MGH_LM_Get_Channel_Info(QByteArray cmdstr);
144  //=========================================================================================================
150  void MGH_LM_Parse_Para(QByteArray cmdstr);
151  //=========================================================================================================
157  void MGH_LM_Send_DataPackage(QByteArray DATA);
158  //=========================================================================================================
164  void MGH_LM_Send_CMDPackage(QByteArray DATA);
165 
166  //=========================================================================================================
172  void MGH_LM_Parse_Para_Infg(QByteArray cmdstr);
173  //=========================================================================================================
179  void MGH_LM_Get_Channel_Infg(QByteArray cmdstr);
180 
181 
182 private:
183  FiffInfo m_FiffInfo;
184 
185 };
186 
187 
188 //*************************************************************************************************************
189 //=============================================================================================================
190 // INLINE DEFINITIONS
191 //=============================================================================================================
192 
193 inline FiffInfo BabyMEGInfo::getFiffInfo() const
194 {
195  return m_FiffInfo;
196 }
197 
198 #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