#ifndef DEVICE_D002_H #define DEVICE_D002_H #include #include #include "usbdask64.h" #include "hw/gtl_hw_device.h" class device_d002 : public gtl::hw::device { Q_OBJECT public: device_d002(QObject *parent); ~device_d002(); virtual QString type() const override; virtual bool start(QString id, qreal rate); virtual bool stop(); virtual int channels() { return 4 * (int)_modules.size(); } virtual qreal max_amplitude() const { return 10; } private: std::map _ids; std::vector _modules; std::vector> _buffer; std::vector _buffer_send; std::vector> _buffer_read; private: void run(); void send_data(); U16 get_channel_config(int channel) const; }; #endif // ADLINK2405_H