GNU Radio Manual and C++ API Reference
3.9.1.0
The Free & Open Software Radio Ecosystem
complex_to_mag.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2005,2012 Free Software Foundation, Inc.
4
*
5
* This file is part of GNU Radio
6
*
7
* SPDX-License-Identifier: GPL-3.0-or-later
8
*
9
*/
10
11
#ifndef INCLUDED_BLOCKS_COMPLEX_TO_MAG_H
12
#define INCLUDED_BLOCKS_COMPLEX_TO_MAG_H
13
14
#include <
gnuradio/blocks/api.h
>
15
#include <
gnuradio/sync_block.h
>
16
17
namespace
gr
{
18
namespace
blocks {
19
20
/*!
21
* \brief complex in, magnitude out (float)
22
* \ingroup type_converters_blk
23
*
24
* \details
25
* Calculates the magnitude of the complex samples:
26
*
27
* \li output[0][m] = |input[0][m]|
28
*
29
* Or:
30
* \li output[0][m] = sqrt(Re{input[0][m]}^2 + Im{input[0][m]}^2)
31
*
32
* The input stream can be a vector of length \p vlen, and for
33
* each vector, each item is converted using the above
34
* function. So above, m is from 0 to noutput_items*vlen for each
35
* call to work.
36
*/
37
class
BLOCKS_API
complex_to_mag
:
virtual
public
sync_block
38
{
39
public
:
40
// gr::blocks::complex_to_mag_ff::sptr
41
typedef
std::shared_ptr<complex_to_mag>
sptr
;
42
43
/*!
44
* Build a complex to magnitude block.
45
*
46
* \param vlen vector len (default 1)
47
*/
48
static
sptr
make(
size_t
vlen = 1);
49
};
50
51
}
/* namespace blocks */
52
}
/* namespace gr */
53
54
#endif
/* INCLUDED_BLOCKS_COMPLEX_TO_MAG_H */
api.h
gr::blocks::complex_to_mag::sptr
std::shared_ptr< complex_to_mag > sptr
Definition:
complex_to_mag.h:41
BLOCKS_API
#define BLOCKS_API
Definition:
gr-blocks/include/gnuradio/blocks/api.h:18
gr::sync_block
synchronous 1:1 input to output with history
Definition:
sync_block.h:25
sync_block.h
gr::blocks::complex_to_mag
complex in, magnitude out (float)
Definition:
complex_to_mag.h:37
gr
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition:
basic_block.h:29
gr-blocks
include
gnuradio
blocks
complex_to_mag.h
Generated by
1.8.17