37template <
class o_type,
class i_type>
60 if (fabs(
phase) > M_PI) {
72 if (fabs(
phase) > M_PI) {
86 void sincos(
float* sinx,
float* cosx)
const;
93 void sin(
float* output,
int noutput_items,
double ampl = 1.0);
94 void cos(
float* output,
int noutput_items,
double ampl = 1.0);
96 void sin(
short* output,
int noutput_items,
double ampl = 1.0);
97 void cos(
short* output,
int noutput_items,
double ampl = 1.0);
98 void sin(
int* output,
int noutput_items,
double ampl = 1.0);
99 void cos(
int* output,
int noutput_items,
double ampl = 1.0);
106template <
class o_type,
class i_type>
112template <
class o_type,
class i_type>
115 for (
int i = 0; i < noutput_items; i++) {
116 output[i] = (float)(sin() * ampl);
121template <
class o_type,
class i_type>
124 for (
int i = 0; i < noutput_items; i++) {
125 output[i] = (float)(cos() * ampl);
130template <
class o_type,
class i_type>
133 for (
int i = 0; i < noutput_items; i++) {
134 output[i] = (short)(sin() * ampl);
139template <
class o_type,
class i_type>
142 for (
int i = 0; i < noutput_items; i++) {
143 output[i] = (short)(cos() * ampl);
148template <
class o_type,
class i_type>
151 for (
int i = 0; i < noutput_items; i++) {
152 output[i] = (int)(sin() * ampl);
157template <
class o_type,
class i_type>
160 for (
int i = 0; i < noutput_items; i++) {
161 output[i] = (int)(cos() * ampl);
166template <
class o_type,
class i_type>
169 for (
int i = 0; i < noutput_items; i++) {
172 output[i] =
gr_complex(cosx * ampl, sinx * ampl);
base class template for Numerically Controlled Oscillator (NCO)
Definition: nco.h:39
void sin(int *output, int noutput_items, double ampl=1.0)
Definition: nco.h:149
double phase_inc
Definition: nco.h:103
void sincos(float *sinx, float *cosx) const
Definition: nco.h:107
void sincos(gr_complex *output, int noutput_items, double ampl=1.0)
Definition: nco.h:167
float sin() const
Definition: nco.h:90
void set_freq(double angle_rate)
Definition: nco.h:51
void adjust_phase(double delta_phase)
Definition: nco.h:48
virtual ~nco()
Definition: nco.h:43
double phase
Definition: nco.h:102
void sin(float *output, int noutput_items, double ampl=1.0)
Definition: nco.h:113
void sin(short *output, int noutput_items, double ampl=1.0)
Definition: nco.h:131
void adjust_freq(double delta_angle_rate)
Definition: nco.h:54
void cos(int *output, int noutput_items, double ampl=1.0)
Definition: nco.h:158
void cos(float *output, int noutput_items, double ampl=1.0)
Definition: nco.h:122
void set_phase(double angle)
Definition: nco.h:46
float cos() const
Definition: nco.h:89
double get_phase() const
Definition: nco.h:82
void step()
Definition: nco.h:57
void cos(short *output, int noutput_items, double ampl=1.0)
Definition: nco.h:140
double get_freq() const
Definition: nco.h:83
nco()
Definition: nco.h:41
void step(int n)
Definition: nco.h:69
std::complex< float > gr_complex
Definition: gr_complex.h:27
Include this header to use the message passing features.
Definition: basic_block.h:45
GR_RUNTIME_API void sincosf(float x, float *sin, float *cos)