HARDT - The Ham Radio DSP Toolkit
hardt
libhardt
include
hbaseband.h
1
#ifndef __HBASEBAND_H
2
#define __HBASEBAND_H
3
4
#include "hfilter.h"
5
#include "hreader.h"
6
#include "hwriter.h"
7
#include "hwriterconsumer.h"
8
#include "hprobe.h"
9
#include "hsoundcard.h"
10
#include "hfft.h"
11
12
#include <complex>
13
18
template
<
class
T>
19
class
HBaseband
:
public
HFilter
<T>
20
{
21
private
:
22
23
int
_blocksize;
24
25
int
_center;
26
int
_width;
27
int
_rate;
28
29
std::complex<T>* _translated;
30
std::complex<double>* _spectrum;
31
HFft<T>
* _fft;
32
33
double
* _cos;
34
double
* _sin;
35
36
void
Init();
37
void
PreCalculate();
38
39
public
:
40
42
HBaseband
(
HWriter<T>
* writer, H_SAMPLE_RATE rate,
int
center,
int
width,
size_t
blocksize,
HProbe<T>
* probe = NULL);
43
45
HBaseband
(
HWriterConsumer<T>
* consumer, H_SAMPLE_RATE rate,
int
center,
int
width,
size_t
blocksize,
HProbe<T>
* probe = NULL);
46
48
HBaseband
(
HReader<T>
* reader, H_SAMPLE_RATE rate,
int
center,
int
width,
size_t
blocksize,
HProbe<T>
* probe = NULL);
49
51
~HBaseband
();
52
54
virtual
void
Filter
(T* src, T* dest,
size_t
blocksize);
55
57
void
SetSegment
(
int
center,
int
width);
58
};
59
60
#endif
HBaseband::HBaseband
HBaseband(HWriter< T > *writer, H_SAMPLE_RATE rate, int center, int width, size_t blocksize, HProbe< T > *probe=NULL)
Definition:
hbaseband.cpp:7
HBaseband::~HBaseband
~HBaseband()
Definition:
hbaseband.cpp:47
HWriter
Definition:
hwriter.h:10
HFilter
Definition:
hfilter.h:14
HBaseband::Filter
virtual void Filter(T *src, T *dest, size_t blocksize)
Definition:
hbaseband.cpp:60
HBaseband
Definition:
hbaseband.h:19
HReader
Definition:
hreader.h:24
HProbe
Definition:
hprobe.h:10
HBaseband::SetSegment
void SetSegment(int center, int width)
Definition:
hbaseband.cpp:112
HFft
Definition:
hfft.h:12
HWriterConsumer
Definition:
hwriterconsumer.h:8
Generated by
1.8.17