fresh audaspace from trunk
[blender.git] / intern / audaspace / fftw / AUD_BandPassFactory.cpp
1 /*
2  * $Id$
3  *
4  * ***** BEGIN LGPL LICENSE BLOCK *****
5  *
6  * Copyright 2009 Jörg Hermann Müller
7  *
8  * This file is part of AudaSpace.
9  *
10  * AudaSpace is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU Lesser General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * AudaSpace is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * along with AudaSpace.  If not, see <http://www.gnu.org/licenses/>.
22  *
23  * ***** END LGPL LICENSE BLOCK *****
24  */
25
26 #include "AUD_BandPassFactory.h"
27 #include "AUD_BandPassReader.h"
28
29 AUD_BandPassFactory::AUD_BandPassFactory(AUD_IFactory* factory, float low,
30                                                                                  float high) :
31                 AUD_EffectFactory(factory),
32                 m_low(low),
33                 m_high(high) {}
34
35 AUD_BandPassFactory::AUD_BandPassFactory(float low, float high) :
36                 AUD_EffectFactory(0),
37                 m_low(low),
38                 m_high(high) {}
39
40 float AUD_BandPassFactory::getLow()
41 {
42         return m_low;
43 }
44
45 float AUD_BandPassFactory::getHigh()
46 {
47         return m_high;
48 }
49
50 void AUD_BandPassFactory::setLow(float low)
51 {
52         m_low = low;
53 }
54
55 void AUD_BandPassFactory::setHigh(float high)
56 {
57         m_high = high;
58 }
59
60 AUD_IReader* AUD_BandPassFactory::createReader()
61 {
62         AUD_IReader* reader = getReader();
63
64         if(reader != 0)
65         {
66                 reader = new AUD_BandPassReader(reader, m_low, m_high);
67                 AUD_NEW("reader")
68         }
69
70         return reader;
71 }