summaryrefslogtreecommitdiff
path: root/gnuradio-core/src/lib
diff options
context:
space:
mode:
authorn4hy2008-10-03 22:30:56 +0000
committern4hy2008-10-03 22:30:56 +0000
commit640f3127479990181f7ec7381c6d67a5d1d689ac (patch)
tree41dfbf983d692305932188fc29b8f52fc6f413c3 /gnuradio-core/src/lib
parent6b3ee8f7a9831e2229d1ee7a05fc4a3a7be8fd56 (diff)
downloadgnuradio-640f3127479990181f7ec7381c6d67a5d1d689ac.tar.gz
gnuradio-640f3127479990181f7ec7381c6d67a5d1d689ac.tar.bz2
gnuradio-640f3127479990181f7ec7381c6d67a5d1d689ac.zip
more cleanup of comments and adding left our functions to swig. Not yet complete
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@9707 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gnuradio-core/src/lib')
-rw-r--r--gnuradio-core/src/lib/general/gr_firdes.h78
-rw-r--r--gnuradio-core/src/lib/general/gr_firdes.i1
2 files changed, 73 insertions, 6 deletions
diff --git a/gnuradio-core/src/lib/general/gr_firdes.h b/gnuradio-core/src/lib/general/gr_firdes.h
index 7b30084d9..11752ddae 100644
--- a/gnuradio-core/src/lib/general/gr_firdes.h
+++ b/gnuradio-core/src/lib/general/gr_firdes.h
@@ -88,7 +88,7 @@ class gr_firdes {
double sampling_freq,
double cutoff_freq, // Hz beginning transition band
double transition_width, // Hz width of transition band
- double attenuation_dB, // attenuation dB
+ double attenuation_dB, // out of band attenuation dB
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
@@ -106,6 +106,7 @@ class gr_firdes {
* maximum attenuation and passband ripple.
* \p beta: parameter for Kaiser window
*/
+
static std::vector<float>
high_pass (double gain,
double sampling_freq,
@@ -114,12 +115,28 @@ class gr_firdes {
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
+ /*!
+ * \brief use "window method" to design a high-pass FIR filter
+ *
+ * \p gain: overall gain of filter (typically 1.0)
+ * \p sampling_freq: sampling freq (Hz)
+ * \p cutoff_freq: center of transition band (Hz)
+ * \p transition_width: width of transition band (Hz).
+ * \p attenuation_dB out of band attenuation
+ * The normalized width of the transition
+ * band is what sets the number of taps
+ * required. Narrow --> more taps
+ * \p window_type: What kind of window to use. Determines
+ * maximum attenuation and passband ripple.
+ * \p beta: parameter for Kaiser window
+ */
+
static std::vector<float>
high_pass_2 (double gain,
double sampling_freq,
double cutoff_freq, // Hz center of transition band
double transition_width, // Hz width of transition band
- double attenuation_dB, // attenuation dB
+ double attenuation_dB, // out of band attenuation dB
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
@@ -147,13 +164,29 @@ class gr_firdes {
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
+ /*!
+ * \brief use "window method" to design a band-pass FIR filter
+ *
+ * \p gain: overall gain of filter (typically 1.0)
+ * \p sampling_freq: sampling freq (Hz)
+ * \p low_cutoff_freq: center of transition band (Hz)
+ * \p high_cutoff_freq: center of transition band (Hz)
+ * \p transition_width: width of transition band (Hz).
+ * \p attenuation_dB out of band attenuation
+ * The normalized width of the transition
+ * band is what sets the number of taps
+ * required. Narrow --> more taps
+ * \p window_type: What kind of window to use. Determines
+ * maximum attenuation and passband ripple.
+ * \p beta: parameter for Kaiser window
+ */
static std::vector<float>
band_pass_2 (double gain,
double sampling_freq,
double low_cutoff_freq, // Hz beginning transition band
double high_cutoff_freq, // Hz beginning transition band
double transition_width, // Hz width of transition band
- double attenuation_dB, // attenuation dB
+ double attenuation_dB, // out of band attenuation dB
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
@@ -182,17 +215,33 @@ class gr_firdes {
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
+ /*!
+ * \brief use "window method" to design a complex band-pass FIR filter
+ *
+ * \p gain: overall gain of filter (typically 1.0)
+ * \p sampling_freq: sampling freq (Hz)
+ * \p low_cutoff_freq: center of transition band (Hz)
+ * \p high_cutoff_freq: center of transition band (Hz)
+ * \p transition_width: width of transition band (Hz).
+ * \p attenuation_dB out of band attenuation
+ * The normalized width of the transition
+ * band is what sets the number of taps
+ * required. Narrow --> more taps
+ * \p window_type: What kind of window to use. Determines
+ * maximum attenuation and passband ripple.
+ * \p beta: parameter for Kaiser window
+ */
+
static std::vector<gr_complex>
complex_band_pass_2 (double gain,
double sampling_freq,
double low_cutoff_freq, // Hz beginning transition band
double high_cutoff_freq, // Hz beginning transition band
double transition_width, // Hz width of transition band
- double attenuation_dB, // attenuation dB
+ double attenuation_dB, // out of band attenuation dB
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
-
/*!
* \brief use "window method" to design a band-reject FIR filter
*
@@ -218,13 +267,30 @@ class gr_firdes {
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
+ /*!
+ * \brief use "window method" to design a band-reject FIR filter
+ *
+ * \p gain: overall gain of filter (typically 1.0)
+ * \p sampling_freq: sampling freq (Hz)
+ * \p low_cutoff_freq: center of transition band (Hz)
+ * \p high_cutoff_freq: center of transition band (Hz)
+ * \p transition_width: width of transition band (Hz).
+ * \p attenuation_dB out of band attenuation
+ * The normalized width of the transition
+ * band is what sets the number of taps
+ * required. Narrow --> more taps
+ * \p window_type: What kind of window to use. Determines
+ * maximum attenuation and passband ripple.
+ * \p beta: parameter for Kaiser window
+ */
+
static std::vector<float>
band_reject_2 (double gain,
double sampling_freq,
double low_cutoff_freq, // Hz beginning transition band
double high_cutoff_freq, // Hz beginning transition band
double transition_width, // Hz width of transition band
- double attenuation_dB, // attenuation dB
+ double attenuation_dB, // out of band attenuation dB
win_type window = WIN_HAMMING,
double beta = 6.76); // used only with Kaiser
diff --git a/gnuradio-core/src/lib/general/gr_firdes.i b/gnuradio-core/src/lib/general/gr_firdes.i
index 4ac9855d2..73becadba 100644
--- a/gnuradio-core/src/lib/general/gr_firdes.i
+++ b/gnuradio-core/src/lib/general/gr_firdes.i
@@ -49,6 +49,7 @@ class gr_firdes {
* \p sampling_freq: sampling freq (Hz)
* \p cutoff_freq: center of transition band (Hz)
* \p transition_width: width of transition band (Hz).
+ * \p attenuation_dB out of band attenuation
* The normalized width of the transition
* band is what sets the number of taps
* required. Narrow --> more taps