Nsound  0.9.4
FilterHighPassIIR.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 //
3 // $Id: FilterHighPassIIR.h 874 2014-09-08 02:21:29Z weegreenblobbie $
4 //
5 // Copyright (c) 2007 Nick Hilton
6 //
7 // weegreenblobbie_yahoo_com (replace '_' with '@' and '.')
8 //
9 //-----------------------------------------------------------------------------
10 
11 //-----------------------------------------------------------------------------
12 //
13 // This program is free software; you can redistribute it and/or modify
14 // it under the terms of the GNU General Public License as published by
15 // the Free Software Foundation; either version 2 of the License, or
16 // (at your option) any later version.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 // GNU Library General Public License for more details.
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program; if not, write to the Free Software
25 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26 //
27 //-----------------------------------------------------------------------------
28 #ifndef _NSOUND_FILTER_HIGH_PASS_IIR_H_
29 #define _NSOUND_FILTER_HIGH_PASS_IIR_H_
30 
31 #include <Nsound/FilterStageIIR.h>
32 
33 namespace Nsound
34 {
35 
36 // Forward class declarations
37 class AudioStream;
38 class Buffer;
39 
40 //-----------------------------------------------------------------------------
43 {
44  public:
45 
47  const float64 & sample_rate,
48  uint32 n_poles,
49  const float64 & frequency,
50  const float64 & percent_ripple = 0.0);
51 
53  filter(const AudioStream & x);
54 
56  filter(const AudioStream & x, const float64 & f);
57 
59  filter(const AudioStream & x, const Buffer & frequencies);
60 
61  Buffer
62  filter(const Buffer & x);
63 
64  Buffer
65  filter(const Buffer & x, const float64 & f);
66 
67  Buffer
68  filter(const Buffer & x, const Buffer & frequencies);
69 
70  float64
71  filter(const float64 & x);
72 
73  float64
74  filter(const float64 & x, const float64 & frequency);
75 
76  float64
77  getFrequency() const {return frequency_;};
78 
79  void
80  makeKernel(const float64 & frequency);
81 
82  void
83  plot(boolean show_fc = true, boolean show_phase = false);
84 
85  void
86  reset();
87 
88 };
89 
90 };
91 
92 // :mode=c++: jEdit modeline
93 #endif
unsigned int uint32
Definition: Nsound.h:153
FilterHighPassIIR(const float64 &sample_rate, uint32 n_poles, const float64 &frequency, const float64 &percent_ripple=0.0)
float64 getFrequency() const
void plot(boolean show_fc=true, boolean show_phase=false)
A class for filtering audio in the frequecy domain.
double float64
Definition: Nsound.h:146
A class for filtering audio in the frequecy domain.
void makeKernel(const float64 &frequency)
A Buffer for storing audio samples.
Definition: Buffer.h:60
AudioStream filter(const AudioStream &x)