OpenHantek
bulkStructs.h
1 // SPDX-License-Identifier: GPL-2.0+
2 
3 #pragma once
4 
5 #include <list>
6 #include <string>
7 
8 #include <QString>
9 
10 #include "types.h"
11 #include "definitions.h"
12 #include "states.h"
13 #include "bulkcommand.h"
14 
15 namespace Hantek {
16 
18 class BulkSetFilter : public BulkCommand {
19  public:
20  BulkSetFilter();
21  BulkSetFilter(bool channel1, bool channel2, bool trigger);
22 
23  bool getChannel(ChannelID channel);
24  void setChannel(ChannelID channel, bool filtered);
25  bool getTrigger();
26  void setTrigger(bool filtered);
27 
28  private:
29  void init();
30 };
31 
34  public:
36  BulkSetTriggerAndSamplerate(uint16_t downsampler, uint32_t triggerPosition, uint8_t triggerSource = 0,
37  uint8_t recordLength = 0, uint8_t samplerateId = 0, bool downsamplingMode = true,
38  uint8_t usedChannels = 0, bool fastRate = false, uint8_t triggerSlope = 0);
39 
40  uint8_t getTriggerSource();
41  void setTriggerSource(uint8_t value);
42  uint8_t getRecordLength();
43  void setRecordLength(uint8_t value);
44  uint8_t getSamplerateId();
45  void setSamplerateId(uint8_t value);
46  bool getDownsamplingMode();
47  void setDownsamplingMode(bool downsampling);
48  uint8_t getUsedChannels();
49  void setUsedChannels(uint8_t value);
50  bool getFastRate();
51  void setFastRate(bool fastRate);
52  uint8_t getTriggerSlope();
53  void setTriggerSlope(uint8_t slope);
54  uint16_t getDownsampler();
55  void setDownsampler(uint16_t downsampler);
56  uint32_t getTriggerPosition();
57  void setTriggerPosition(uint32_t position);
58 
59  private:
60  void init();
61 };
62 
64 class BulkForceTrigger : public BulkCommand {
65  public:
67 };
68 
70 class BulkCaptureStart : public BulkCommand {
71  public:
73 };
74 
77  public:
79 };
80 
82 class BulkGetData : public BulkCommand {
83  public:
84  BulkGetData();
85 };
86 
89  public:
91 };
92 
95  public:
97 
98  CaptureState getCaptureState();
99  unsigned int getTriggerPoint();
100 };
101 
103 class BulkSetGain : public BulkCommand {
104  public:
105  BulkSetGain();
106  BulkSetGain(uint8_t channel1, uint8_t channel2);
107 
108  uint8_t getGain(ChannelID channel);
109  void setGain(ChannelID channel, uint8_t value);
110 
111  private:
112  void init();
113 };
114 
117  public:
119  BulkSetLogicalData(uint8_t data);
120 
121  uint8_t getData();
122  void setData(uint8_t data);
123 
124  private:
125  void init();
126 };
127 
130  public:
132 };
133 
136  public:
138  BulkSetChannels2250(uint8_t usedChannels);
139 
140  uint8_t getUsedChannels();
141  void setUsedChannels(uint8_t value);
142 
143  private:
144  void init();
145 };
146 
149  public:
151  BulkSetTrigger2250(uint8_t triggerSource, uint8_t triggerSlope);
152 
153  uint8_t getTriggerSource();
154  void setTriggerSource(uint8_t value);
155  uint8_t getTriggerSlope();
156  void setTriggerSlope(uint8_t slope);
157 
158  private:
159  void init();
160 };
161 
164  public:
166  BulkSetSamplerate5200(uint16_t samplerateSlow, uint8_t samplerateFast);
167 
168  uint8_t getSamplerateFast();
169  void setSamplerateFast(uint8_t value);
170  uint16_t getSamplerateSlow();
171  void setSamplerateSlow(uint16_t samplerate);
172 
173  private:
174  void init();
175 };
176 
179  public:
181  BulkSetRecordLength2250(uint8_t recordLength);
182 
183  uint8_t getRecordLength();
184  void setRecordLength(uint8_t value);
185 
186  private:
187  void init();
188 };
189 
192  public:
194  BulkSetBuffer5200(uint16_t triggerPositionPre, uint16_t triggerPositionPost, DTriggerPositionUsed usedPre = DTriggerPositionUsed::OFF,
195  DTriggerPositionUsed usedPost = DTriggerPositionUsed::OFF, uint8_t recordLength = 0);
196 
197  uint16_t getTriggerPositionPre();
198  void setTriggerPositionPre(uint16_t value);
199  uint16_t getTriggerPositionPost();
200  void setTriggerPositionPost(uint16_t value);
201  uint8_t getUsedPre();
202  void setUsedPre(DTriggerPositionUsed value);
203  DTriggerPositionUsed getUsedPost();
204  void setUsedPost(DTriggerPositionUsed value);
205  uint8_t getRecordLength();
206  void setRecordLength(uint8_t value);
207 
208  private:
209  void init();
210 };
211 
214  public:
216  BulkSetSamplerate2250(bool fastRate, bool downsampling = false, uint16_t samplerate = 0);
217 
218  bool getFastRate();
219  void setFastRate(bool fastRate);
220  bool getDownsampling();
221  void setDownsampling(bool downsampling);
222  uint16_t getSamplerate();
223  void setSamplerate(uint16_t samplerate);
224 
225  private:
226  void init();
227 };
228 
231  public:
233  BulkSetTrigger5200(uint8_t triggerSource, uint8_t usedChannels, bool fastRate = false, uint8_t triggerSlope = 0,
234  uint8_t triggerPulse = 0);
235 
236  uint8_t getTriggerSource();
237  void setTriggerSource(uint8_t value);
238  uint8_t getUsedChannels();
239  void setUsedChannels(uint8_t value);
240  bool getFastRate();
241  void setFastRate(bool fastRate);
242  uint8_t getTriggerSlope();
243  void setTriggerSlope(uint8_t slope);
244  bool getTriggerPulse();
245  void setTriggerPulse(bool pulse);
246 
247  private:
248  void init();
249 };
250 
253  public:
255  BulkSetBuffer2250(uint32_t triggerPositionPre, uint32_t triggerPositionPost);
256 
257  uint32_t getTriggerPositionPost();
258  void setTriggerPositionPost(uint32_t value);
259  uint32_t getTriggerPositionPre();
260  void setTriggerPositionPre(uint32_t value);
261 
262  private:
263  void init();
264 };
265 }
bool getFastRate()
Get the fastRate state in ETsrBits.
Definition: bulkStructs.cpp:604
BulkSetBuffer5200()
Sets the data array to the default values.
Definition: bulkStructs.cpp:434
The BulkCode::SETLOGICALDATA builder.
Definition: bulkStructs.h:116
BulkGetLogicalData()
Sets the data array to needed values.
Definition: bulkStructs.cpp:308
void setRecordLength(uint8_t value)
Set the recordLength in Tsr1Bits to the given value.
Definition: bulkStructs.cpp:115
void setTriggerPositionPre(uint32_t value)
Set the TriggerPositionPre to the given value.
Definition: bulkStructs.cpp:671
void setGain(ChannelID channel, uint8_t value)
Set the gain for the given channel.
Definition: bulkStructs.cpp:270
Definition: bulkcommand.h:12
BulkSetSamplerate2250()
Sets the data array to the default values.
Definition: bulkStructs.cpp:514
The BulkCode::GETDATA builder.
Definition: bulkStructs.h:82
The BulkCode::SETGAIN builder.
Definition: bulkStructs.h:103
DTriggerPositionUsed getUsedPost()
Get the TriggerPositionUsedPost value.
Definition: bulkStructs.cpp:490
void setTriggerPositionPost(uint32_t value)
Set the TriggerPositionPost to the given value.
Definition: bulkStructs.cpp:657
void setDownsampler(uint16_t downsampler)
Set the Downsampler to the given value.
Definition: bulkStructs.cpp:179
void setUsedChannels(uint8_t value)
Set the usedChannels in Tsr2Bits to the given value.
Definition: bulkStructs.cpp:147
The DSO-5200/DSO-5200A BulkCode::DSETBUFFER builder.
Definition: bulkStructs.h:191
void setSamplerateId(uint8_t value)
Set the samplerateId in Tsr1Bits to the given value.
Definition: bulkStructs.cpp:125
uint8_t getData()
Gets the data.
Definition: bulkStructs.cpp:296
The BULK::SETFILTER builder.
Definition: bulkStructs.h:18
void setTriggerPosition(uint32_t position)
Set the TriggerPosition to the given value.
Definition: bulkStructs.cpp:192
uint8_t getTriggerSlope()
Get the triggerSlope value in Tsr2Bits.
Definition: bulkStructs.cpp:163
The BULK_TRIGGERENABLED builder.
Definition: bulkStructs.h:76
The BulkCode::GETLOGICALDATA builder.
Definition: bulkStructs.h:129
uint8_t getSamplerateFast()
Get the SamplerateFast value.
Definition: bulkStructs.cpp:385
void setUsedChannels(uint8_t value)
Set the usedChannels in ETsrBits to the given value.
Definition: bulkStructs.cpp:600
uint16_t getTriggerPositionPre()
Get the TriggerPositionPre value.
Definition: bulkStructs.cpp:456
void setSamplerateFast(uint8_t value)
Set the SamplerateFast to the given value.
Definition: bulkStructs.cpp:389
Definition: controlsettings.h:8
uint8_t getUsedChannels()
Get the UsedChannels value.
Definition: bulkStructs.cpp:325
void setChannel(ChannelID channel, bool filtered)
Enables/disables filtering of one channel.
Definition: bulkStructs.cpp:40
BulkSetTriggerAndSamplerate()
Sets the data array to the default values.
Definition: bulkStructs.cpp:69
unsigned int getTriggerPoint()
Gets the trigger point.
Definition: bulkStructs.cpp:237
void setTriggerPulse(bool pulse)
Set the triggerPulse in ETsrBits to the given state.
Definition: bulkStructs.cpp:624
void setTriggerSlope(uint8_t slope)
Set the triggerSlope in ETsrBits to the given value.
Definition: bulkStructs.cpp:616
uint8_t getTriggerSource()
Get the triggerSource value in ETsrBits.
Definition: bulkStructs.cpp:588
BulkResponseGetCaptureState()
Initializes the array.
Definition: bulkStructs.cpp:229
uint16_t getDownsampler()
Get the Downsampler value.
Definition: bulkStructs.cpp:173
BulkSetFilter()
Sets the data array to the default values.
Definition: bulkStructs.cpp:12
void setData(uint8_t data)
Sets the data to the given value.
Definition: bulkStructs.cpp:300
uint8_t getTriggerSource()
Get the triggerSource value in CTriggerBits.
Definition: bulkStructs.cpp:351
uint8_t getUsedChannels()
Get the usedChannels value in Tsr2Bits.
Definition: bulkStructs.cpp:143
The DSO-5200/DSO-5200A BulkCode::ESETTRIGGERORSAMPLERATE builder.
Definition: bulkStructs.h:230
bool getTriggerPulse()
Get the triggerPulse state in ETsrBits.
Definition: bulkStructs.cpp:620
bool getFastRate()
Get the fastRate state in Tsr2Bits.
Definition: bulkStructs.cpp:153
uint8_t getTriggerSlope()
Get the triggerSlope value in ETsrBits.
Definition: bulkStructs.cpp:612
BulkSetLogicalData()
Sets the data array to needed values.
Definition: bulkStructs.cpp:284
void setSamplerateSlow(uint16_t samplerate)
Set the SamplerateSlow to the given value.
Definition: bulkStructs.cpp:399
uint8_t getUsedPre()
Get the TriggerPositionUsedPre value.
Definition: bulkStructs.cpp:482
BulkSetRecordLength2250()
Sets the data array to the default values.
Definition: bulkStructs.cpp:410
void setTriggerSource(uint8_t value)
Set the triggerSource in Tsr1Bits to the given value.
Definition: bulkStructs.cpp:105
The BULK_CAPTURESTART builder.
Definition: bulkStructs.h:70
uint16_t getSamplerateSlow()
Get the SamplerateSlow value.
Definition: bulkStructs.cpp:393
The DSO-2250 BulkCode::DSETBUFFER builder.
Definition: bulkStructs.h:178
uint8_t getGain(ChannelID channel)
Get the gain for the given channel.
Definition: bulkStructs.cpp:259
uint32_t getTriggerPosition()
Get the TriggerPosition value.
Definition: bulkStructs.cpp:186
BulkTriggerEnabled()
Sets the data array to needed values.
Definition: bulkStructs.cpp:214
The BulkCode::SETTRIGGERANDSAMPLERATE builder.
Definition: bulkStructs.h:33
void setSamplerate(uint16_t samplerate)
Set the Samplerate to the given value.
Definition: bulkStructs.cpp:555
CaptureState getCaptureState()
Gets the capture state.
Definition: bulkStructs.cpp:233
void setDownsamplingMode(bool downsampling)
Set the downsamplerMode in Tsr1Bits to the given value.
Definition: bulkStructs.cpp:137
BulkForceTrigger()
Sets the data array to needed values.
Definition: bulkStructs.cpp:204
The DSO-2250 BulkCode::CSETTRIGGERORSAMPLERATE builder.
Definition: bulkStructs.h:148
bool getChannel(ChannelID channel)
Gets the filtering state of one channel.
Definition: bulkStructs.cpp:29
The parser for the BulkCode::GETCAPTURESTATE response.
Definition: bulkStructs.h:94
bool getDownsamplingMode()
Get the downsamplerMode value in Tsr1Bits.
Definition: bulkStructs.cpp:131
void setDownsampling(bool downsampling)
Set the downsampling in ESamplerateBits to the given state.
Definition: bulkStructs.cpp:545
void setTriggerPositionPre(uint16_t value)
Set the TriggerPositionPre to the given value.
Definition: bulkStructs.cpp:462
void setFastRate(bool fastRate)
Set the fastRate in Tsr2Bits to the given state.
Definition: bulkStructs.cpp:157
uint8_t getRecordLength()
Get the ::RecordLengthId value.
Definition: bulkStructs.cpp:422
void setFastRate(bool fastRate)
Set the fastRate in ESamplerateBits to the given state.
Definition: bulkStructs.cpp:535
void setFastRate(bool fastRate)
Set the fastRate in ETsrBits to the given state.
Definition: bulkStructs.cpp:608
void setTriggerSource(uint8_t value)
Set the triggerSource in CTriggerBits to the given value.
Definition: bulkStructs.cpp:355
uint32_t getTriggerPositionPre()
Get the TriggerPositionPre value.
Definition: bulkStructs.cpp:665
BulkSetSamplerate5200()
Sets the data array to the default values.
Definition: bulkStructs.cpp:371
void setUsedChannels(uint8_t value)
Set the UsedChannels to the given value.
Definition: bulkStructs.cpp:329
void setTriggerSlope(uint8_t slope)
Set the triggerSlope in Tsr2Bits to the given value.
Definition: bulkStructs.cpp:167
The DSO-2250 BulkCode::ESETTRIGGERORSAMPLERATE builder.
Definition: bulkStructs.h:213
void setRecordLength(uint8_t value)
Set the ::RecordLengthId to the given value.
Definition: bulkStructs.cpp:426
The BulkCode::FORCETRIGGER builder.
Definition: bulkStructs.h:64
void setTriggerPositionPost(uint16_t value)
Set the TriggerPositionPost to the given value.
Definition: bulkStructs.cpp:475
void setTrigger(bool filtered)
Enables/disables filtering for the trigger.
Definition: bulkStructs.cpp:54
The DSO-2250 BulkCode::FSETBUFFER builder.
Definition: bulkStructs.h:252
void setTriggerSlope(uint8_t slope)
Set the triggerSlope in CTriggerBits to the given value.
Definition: bulkStructs.cpp:363
uint8_t getTriggerSource()
Get the triggerSource value in Tsr1Bits.
Definition: bulkStructs.cpp:101
BulkGetData()
Sets the data array to needed values.
Definition: bulkStructs.cpp:219
BulkSetChannels2250()
Sets the data array to needed values.
Definition: bulkStructs.cpp:313
uint32_t getTriggerPositionPost()
Get the TriggerPositionPost value.
Definition: bulkStructs.cpp:651
void setUsedPost(DTriggerPositionUsed value)
Set the TriggerPositionUsedPost to the given value.
Definition: bulkStructs.cpp:494
BulkSetTrigger2250()
Sets the data array to needed values.
Definition: bulkStructs.cpp:337
void setUsedPre(DTriggerPositionUsed value)
Set the TriggerPositionUsedPre to the given value.
Definition: bulkStructs.cpp:486
bool getTrigger()
Gets the filtering state for the trigger.
Definition: bulkStructs.cpp:50
BulkGetCaptureState()
Sets the data array to needed values.
Definition: bulkStructs.cpp:224
uint8_t getRecordLength()
Get the recordLength value in Tsr1Bits.
Definition: bulkStructs.cpp:111
uint16_t getSamplerate()
Get the Samplerate value.
Definition: bulkStructs.cpp:551
The DSO-2250 BULK_BSETFILTER builder.
Definition: bulkStructs.h:135
void setRecordLength(uint8_t value)
Set the recordLength in DBufferBits to the given value.
Definition: bulkStructs.cpp:502
bool getDownsampling()
Get the downsampling state in ESamplerateBits.
Definition: bulkStructs.cpp:541
uint8_t getSamplerateId()
Get the samplerateId value in Tsr1Bits.
Definition: bulkStructs.cpp:121
uint8_t getTriggerSlope()
Get the triggerSlope value in CTriggerBits.
Definition: bulkStructs.cpp:359
BulkCaptureStart()
Sets the data array to needed values.
Definition: bulkStructs.cpp:209
void setTriggerSource(uint8_t value)
Set the triggerSource in ETsrBits to the given value.
Definition: bulkStructs.cpp:592
The BulkCode::GETCAPTURESTATE builder.
Definition: bulkStructs.h:88
bool getFastRate()
Get the fastRate state in ESamplerateBits.
Definition: bulkStructs.cpp:531
uint16_t getTriggerPositionPost()
Get the TriggerPositionPost value.
Definition: bulkStructs.cpp:469
uint8_t getRecordLength()
Get the recordLength value in DBufferBits.
Definition: bulkStructs.cpp:498
The DSO-5200/DSO-5200A BulkCode::CSETTRIGGERORSAMPLERATE builder.
Definition: bulkStructs.h:163
BulkSetTrigger5200()
Sets the data array to the default values.
Definition: bulkStructs.cpp:566
uint8_t getUsedChannels()
Get the usedChannels value in ETsrBits.
Definition: bulkStructs.cpp:596
BulkSetGain()
Sets the data array to needed values.
Definition: bulkStructs.cpp:244