GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
add_blk.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2004,2009,2012,2018 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
12#ifndef ADD_BLK_H
13#define ADD_BLK_H
14
15#include <gnuradio/blocks/api.h>
16#include <gnuradio/sync_block.h>
17#include <cstdint>
18
19namespace gr {
20namespace blocks {
21
22/*!
23 * \brief output = sum(input[0], input[1], ..., input[M-1])
24 * \ingroup math_operators_blk
25 *
26 * \details
27 * Add samples across all input streams. For all \f$n\f$ samples
28 * on all \f$M\f$ input streams \f$x_m\f$:
29 *
30 * \f[
31 * y[n] = \sum_{m=0}^{M-1} x_m[n]
32 * \f]
33 */
34template <class T>
35class BLOCKS_API add_blk : virtual public sync_block
36{
37public:
38 // gr::blocks::add_blk::sptr
39 typedef std::shared_ptr<add_blk<T>> sptr;
40
41 static sptr make(size_t vlen = 1);
42};
43
48} /* namespace blocks */
49} /* namespace gr */
50
51#endif /* ADD_BLK_H */
output = sum(input[0], input[1], ..., input[M-1])
Definition: add_blk.h:36
static sptr make(size_t vlen=1)
std::shared_ptr< add_blk< T > > sptr
Definition: add_blk.h:39
synchronous 1:1 input to output with history
Definition: sync_block.h:26
#define BLOCKS_API
Definition: gr-blocks/include/gnuradio/blocks/api.h:18
add_blk< std::int16_t > add_ss
Definition: add_blk.h:44
add_blk< float > add_ff
Definition: add_blk.h:47
add_blk< std::int32_t > add_ii
Definition: add_blk.h:45
add_blk< gr_complex > add_cc
Definition: add_blk.h:46
GNU Radio logging wrapper.
Definition: basic_block.h:29