GNU Radio 3.7.2.1 C++ API
cpfsk_bc.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2008,2012 Free Software Foundation, Inc.
4
*
5
* GNU Radio is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 3, or (at your option)
8
* any later version.
9
*
10
* GNU Radio is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with GNU Radio; see the file COPYING. If not, write to
17
* the Free Software Foundation, Inc., 51 Franklin Street,
18
* Boston, MA 02110-1301, USA.
19
*/
20
21
#ifndef INCLUDED_ANALOG_CPFSK_BC_H
22
#define INCLUDED_ANALOG_CPFSK_BC_H
23
24
#include <
gnuradio/analog/api.h
>
25
#include <
gnuradio/sync_interpolator.h
>
26
27
namespace
gr {
28
namespace
analog {
29
30
/*!
31
* \brief Perform continuous phase 2-level frequency shift keying modulation
32
* on an input stream of unpacked bits.
33
* \ingroup modulators_blk
34
*/
35
class
ANALOG_API
cpfsk_bc
:
virtual
public
sync_interpolator
36
{
37
public
:
38
// gr::analog::cpfsk_bc::sptr
39
typedef
boost::shared_ptr<cpfsk_bc>
sptr
;
40
41
/*!
42
* \brief Make a CPFSK block.
43
*
44
* \param k modulation index
45
* \param ampl output amplitude
46
* \param samples_per_sym number of output samples per input bit
47
*/
48
static
sptr
make(
float
k,
float
ampl,
int
samples_per_sym);
49
50
virtual
void
set_amplitude(
float
amplitude) = 0;
51
virtual
float
amplitude() = 0;
52
virtual
float
freq() = 0;
53
virtual
float
phase() = 0;
54
};
55
56
}
/* namespace analog */
57
}
/* namespace gr */
58
59
#endif
/* INCLUDED_ANALOG_CPFSK_BC_H */
gnuradio
gr-analog
include
gnuradio
analog
cpfsk_bc.h
Generated by
1.8.1.1