On Thu, Aug 06, 2009 at 12:39:15PM -0700, Milo W. wrote:
I was browsing the GNU radio C++ API. Here I have a couple of questions
about the class reference of gr_sig_source_f. (Signal generator)
- For the type of public member function waveform(), i.e. gr_waveform_t
waveform () const. Where can I refer to the definition of “gr_waveform_t”?
You can find it in gnuradio-core/src/lib/gengen/gr_sig_source_waveform.h
(Given that there were only 3 includes in gr_sig_source_f, it didn’t
take long to find it… grep would have worked too)
Is there any description of how waveforms(sine wave) are generated?
Use the source Luke!
- I am going to generate a set of sine waves at different frequencies. If
these sine waves are obtained from the iteration equations of harmonious
oscillators: v(t+dt)=v(t) - omega^2 * x(t)dt ; x(t+dt)=x(t) + v(t)dt, is
that different from the way of sine wave generation in gnu radio. Do I need
to create a new sine wave generation block instead of the defaut one? (x(t)
- displacement, v(t) - velocity)
No, there’s no reason to reimplement the sine generator unless
you enjoy that kind of thing. First thing to remember is that the
block does what it says: it generates a sine wave of the specified
frequency and amplitude.
We also have blocks to generate sinusoids with frequency a function
of its input stream. See e.g, gr_frequency_modulator_fc or gr_vco_f