test_sdk/hw/ni/device_ni.h

66 lines
969 B
C
Raw Permalink Normal View History

#ifndef DEVICE_NI_H
#define DEVICE_NI_H
#include <QDateTime>
#include <QDebug>
#include "hw/gtl_hw_device.h"
#include <set>
#include <NIDAQmx.h>
class device_ni : public gtl::hw::device
{
Q_OBJECT
public:
device_ni(QObject *parent);
~device_ni();
virtual QString type() const override;
virtual bool start(QString id, qreal rate);
virtual bool stop();
virtual qreal max_amplitude() const { return _max_amplitude; }
virtual void set_config(const QJsonValue& config) override;
private:
QString _name;
TaskHandle _task;
std::vector<qreal> _buffer_send;
std::vector<float64> _buffer_read;
QDateTime _time_send;
bool _is_full_restarting;
qreal _max_amplitude;
bool _is_support_iepe;
bool _is_running;
private:
virtual void run();
void send_data();
QString get_error_message(int32 code);
private slots:
virtual void ai_iepe_changed();
virtual void ai_coupling_changed();
};
#endif // NI9234_H