CSL
5.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
OscillatorBL.h
Go to the documentation of this file.
1
//
2
// OscillatorBL.h -- Band-limited oscillators -- these can use on-demand sine summation, or store their wavetables
3
// (the latter choice might be dangerous with dynamic frequency control, of course)
4
// See the copyright notice and acknowledgment of authors in the file COPYRIGHT
5
//
6
7
#ifndef INCLUDE_OscillatorBL_H
8
#define INCLUDE_OscillatorBL_H
9
10
#include "
Oscillator.h
"
11
12
namespace
csl {
13
14
///
15
/// Band-limited square, impulse, and triangle waveform oscillators
16
///
17
18
class
SquareBL
:
public
SumOfSines
{
19
public
:
20
SquareBL
();
21
SquareBL
(
float
frequency);
22
SquareBL
(
float
frequency,
float
phase);
23
24
// void nextBuffer(Buffer & outputBuffer, unsigned outBufNum) throw (CException);
25
void
nextWaveInto
(
sample
* dest,
unsigned
count,
bool
oneHz);
26
27
};
28
29
/*
30
class ImpulseBL : public SumOfSines {
31
protected:
32
void nextWaveInto(sample * dest, unsigned count, bool oneHz);
33
34
public:
35
ImpulseBL();
36
ImpulseBL(float frequency);
37
ImpulseBL(float frequency, float phase);
38
};
39
40
class TriangleBL : public SumOfSines {
41
protected:
42
void nextWaveInto(sample * dest, unsigned count, bool oneHz);
43
44
public:
45
TriangleBL();
46
TriangleBL(float frequency);
47
TriangleBL(float frequency, float phase);
48
};
49
50
class SawtoothBL : public SumOfSines {
51
protected:
52
void nextWaveInto(sample * dest, unsigned count, bool oneHz);
53
54
public:
55
SawtoothBL();
56
SawtoothBL(float frequency);
57
SawtoothBL(float frequency, float phase);
58
};
59
60
*/
61
62
}
63
64
#endif
CSL
Sources
OscillatorBL.h
Generated on Thu Nov 15 2012 22:01:10 for CSL by
1.8.1.1