IT++
4.3.1
Toggle main menu visibility
itpp
signal
source.h
Go to the documentation of this file.
1
28
29
#ifndef SOURCE_H
30
#define SOURCE_H
31
32
#include <
itpp/base/vec.h
>
33
#include <itpp/itexports.h>
34
35
namespace
itpp
36
{
37
39
44
class
ITPP_EXPORT
Sine_Source
45
{
46
public
:
48
Sine_Source
(
double
freq,
double
mean
= 0.0,
double
ampl = 1.0,
double
inphase = 0.0);
50
double
operator()
() {
return
sample(); }
52
vec operator()(
int
n);
54
mat operator()(
int
h,
int
w);
55
protected
:
56
private
:
57
double
sample();
58
double
m, A, theta, dtheta;
59
};
60
65
class
ITPP_EXPORT
Square_Source
66
{
67
public
:
69
Square_Source
(
double
freq,
double
mean
= 0.0,
double
ampl = 1.0,
double
inphase = 0.0);
71
double
operator()
() {
return
sample(); }
73
vec operator()(
int
n);
75
mat operator()(
int
h,
int
w);
76
protected
:
77
private
:
78
double
sample();
79
double
m, A, theta, dtheta;
80
};
81
86
class
ITPP_EXPORT
Triangle_Source
87
{
88
public
:
90
Triangle_Source
(
double
freq,
double
mean
= 0.0,
double
ampl = 1.0,
double
inphase = 0.0);
92
double
operator()
() {
return
sample(); }
94
vec operator()(
int
n);
96
mat operator()(
int
h,
int
w);
97
protected
:
98
private
:
99
double
sample();
100
double
m, A, theta, dtheta;
101
};
102
107
class
ITPP_EXPORT
Sawtooth_Source
108
{
109
public
:
111
Sawtooth_Source
(
double
freq,
double
mean
= 0.0,
double
ampl = 1.0,
double
inphase = 0.0);
113
double
operator()
() {
return
sample(); }
115
vec operator()(
int
n);
117
mat operator()(
int
h,
int
w);
118
protected
:
119
private
:
120
double
sample();
121
double
m, A, theta, dtheta;
122
};
123
128
class
ITPP_EXPORT
Impulse_Source
129
{
130
public
:
132
Impulse_Source
(
double
freq,
double
ampl = 1.0,
double
inphase = 0.0);
134
double
operator()
() {
return
sample(); }
136
vec operator()(
int
n);
138
mat operator()(
int
h,
int
w);
139
protected
:
140
private
:
141
double
sample();
142
double
A, pos, dtheta;
143
};
144
149
class
ITPP_EXPORT
Pattern_Source
150
{
151
public
:
153
Pattern_Source
(
const
vec &pattern,
int
start_pos = 0);
155
virtual
~Pattern_Source
() { }
157
double
operator()
() {
return
sample(); }
159
vec operator()(
int
n);
161
mat operator()(
int
h,
int
w);
162
protected
:
163
private
:
164
double
sample();
165
int
pos;
166
vec pat;
167
double
mean
, var;
168
};
169
170
}
//namespace itpp
171
172
#endif
// #ifndef SOURCE_H
itpp::Impulse_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:134
itpp::Impulse_Source::Impulse_Source
Impulse_Source(double freq, double ampl=1.0, double inphase=0.0)
Constructor. Set frequency, amplitude and start phase.
Definition
source.cpp:219
itpp::Pattern_Source::Pattern_Source
Pattern_Source(const vec &pattern, int start_pos=0)
Constructor. Set pattern and start position.
Definition
source.cpp:268
itpp::Pattern_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:157
itpp::Pattern_Source::~Pattern_Source
virtual ~Pattern_Source()
Destructor.
Definition
source.h:155
itpp::Sawtooth_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:113
itpp::Sawtooth_Source::Sawtooth_Source
Sawtooth_Source(double freq, double mean=0.0, double ampl=1.0, double inphase=0.0)
Constructor. Set frequency, mean, amplitude, and start phase.
Definition
source.cpp:174
itpp::Sine_Source::Sine_Source
Sine_Source(double freq, double mean=0.0, double ampl=1.0, double inphase=0.0)
Constructor. Set frequency, mean, amplitude, and start phase.
Definition
source.cpp:39
itpp::Sine_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:50
itpp::Square_Source::Square_Source
Square_Source(double freq, double mean=0.0, double ampl=1.0, double inphase=0.0)
Constructor. Set frequency, mean, amplitude, and start phase.
Definition
source.cpp:84
itpp::Square_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:71
itpp::Triangle_Source::operator()
double operator()()
Return a single sample.
Definition
source.h:92
itpp::Triangle_Source::Triangle_Source
Triangle_Source(double freq, double mean=0.0, double ampl=1.0, double inphase=0.0)
Constructor. Set frequency, mean, amplitude and start phase.
Definition
source.cpp:129
itpp::mean
double mean(const vec &v)
The mean value.
Definition
misc_stat.cpp:36
itpp
itpp namespace
Definition
itmex.h:37
vec.h
Templated Vector Class Definitions.
Generated by
1.17.0