14namespace uhd {
namespace rfnoc {
50 virtual void set_enable(
const bool enable,
const size_t port) = 0;
99 virtual void set_amplitude(
const double amplitude,
const size_t port) = 0;
126 virtual void set_constant(
const std::complex<double> constant,
const size_t port) = 0;
137 virtual std::complex<double>
get_constant(
const size_t port)
const = 0;
193 const double frequency,
const double sample_rate,
const size_t port)
195 if (sample_rate <= 0.0) {
198 const double phase_inc = (frequency / sample_rate) * 2.0 * uhd::math::PI;
199 if (phase_inc < -uhd::math::PI || phase_inc > uhd::math::PI) {
202 set_sine_phase_increment(phase_inc, port);
Definition: noc_block_base.hpp:43
Definition: siggen_block_control.hpp:29
virtual void set_enable(const bool enable, const size_t port)=0
static const uint32_t REG_BLOCK_SIZE
Definition: siggen_block_control.hpp:33
static const uint32_t REG_PHASE_INC_OFFSET
Definition: siggen_block_control.hpp:39
void set_sine_frequency(const double frequency, const double sample_rate, const size_t port)
Definition: siggen_block_control.hpp:192
virtual size_t get_samples_per_packet(const size_t port) const =0
virtual std::complex< double > get_constant(const size_t port) const =0
virtual void set_amplitude(const double amplitude, const size_t port)=0
static const uint32_t REG_SPP_OFFSET
Definition: siggen_block_control.hpp:35
virtual double get_sine_phase_increment(const size_t port) const =0
static const uint32_t REG_CARTESIAN_OFFSET
Definition: siggen_block_control.hpp:40
static const uint32_t REG_GAIN_OFFSET
Definition: siggen_block_control.hpp:37
static const uint32_t REG_WAVEFORM_OFFSET
Definition: siggen_block_control.hpp:36
virtual double get_amplitude(const size_t port) const =0
virtual siggen_waveform get_waveform(const size_t port) const =0
virtual void set_constant(const std::complex< double > constant, const size_t port)=0
virtual bool get_enable(const size_t port) const =0
virtual void set_samples_per_packet(const size_t spp, const size_t port)=0
virtual void set_sine_phase_increment(const double phase_inc, const size_t port)=0
static const uint32_t REG_ENABLE_OFFSET
Definition: siggen_block_control.hpp:34
RFNOC_DECLARE_BLOCK(siggen_block_control)
static const uint32_t REG_CONSTANT_OFFSET
Definition: siggen_block_control.hpp:38
virtual void set_waveform(const siggen_waveform type, const size_t port)=0
#define UHD_API
Definition: config.h:87
siggen_waveform
Definition: siggen_block_control.hpp:16
Definition: build_info.hpp:12
Definition: exception.hpp:108