#ifndef GENERATOR_ANALOG_INPUT_H #define GENERATOR_ANALOG_INPUT_H #include "hw_global.h" #include "hw/gtl_analog_input.h" namespace gtl { namespace hw { class HW_EXPORT generator_analog_input : public gtl::hw::analog_input { Q_OBJECT Q_PROPERTY(qreal freq READ freq WRITE set_freq NOTIFY freq_changed) Q_PROPERTY(qreal ampl READ ampl WRITE set_ampl NOTIFY ampl_changed) Q_PROPERTY(qreal phase READ phase WRITE set_phase NOTIFY phase_changed) public: generator_analog_input(qreal rate, QString name, gtl::device *parent); qreal get_value(qreal t); qreal freq() const; qreal ampl() const; qreal phase() const; virtual void save(QDomElement& root_element); virtual void load(const QDomElement& root_element); private: qreal _freq; qreal _ampl; qreal _phase; public slots: void set_freq(qreal value); void set_ampl(qreal value); void set_phase(qreal value); signals: void freq_changed(); void ampl_changed(); void phase_changed(); }; } } #endif // GENERATOR_ANALOG_INPUT_H