GNU Radio Manual and C++ API Reference 3.8.5.0
The Free & Open Software Radio Ecosystem
 
Loading...
Searching...
No Matches
max_blk.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2014,2015,2018 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * GNU Radio is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 3, or (at your option)
10 * any later version.
11 *
12 * GNU Radio is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with GNU Radio; see the file COPYING. If not, write to
19 * the Free Software Foundation, Inc., 51 Franklin Street,
20 * Boston, MA 02110-1301, USA.
21 */
22
23
24#ifndef MAX_BLK_H
25#define MAX_BLK_H
26
27#include <gnuradio/blocks/api.h>
28#include <gnuradio/sync_block.h>
29#include <cstdint>
30
31namespace gr {
32namespace blocks {
33
34/*!
35 * \brief Compares vectors from multiple streams and determines
36 * the maximum value from each vector over all streams.
37 * \ingroup math_operators_blk
38 *
39 * \details
40 * Data is passed in as a vector of length \p vlen from multiple
41 * input sources. If vlen_out == 1 then
42 * It will look through these streams of \p vlen
43 * data items and the output stream will contain the maximum value
44 * in the vector.
45 * If vlen_out == vlen and not equal to 1 then
46 * output will be a vector with individual items selected from
47 * the maximum corresponding input vector items.
48 */
49template <class T>
50class BLOCKS_API max_blk : virtual public sync_block
51{
52public:
53 // gr::blocks::max_blk::sptr
54 typedef boost::shared_ptr<max_blk<T>> sptr;
55
56 static sptr make(size_t vlen, size_t vlen_out = 1);
57};
58
62} /* namespace blocks */
63} /* namespace gr */
64
65#endif /* MAX_BLK_H */
Compares vectors from multiple streams and determines the maximum value from each vector over all str...
Definition max_blk.h:51
boost::shared_ptr< max_blk< T > > sptr
Definition max_blk.h:54
static sptr make(size_t vlen, size_t vlen_out=1)
synchronous 1:1 input to output with history
Definition sync_block.h:38
#define BLOCKS_API
Definition gr-blocks/include/gnuradio/blocks/api.h:30
max_blk< std::int16_t > max_ss
Definition max_blk.h:59
max_blk< std::int32_t > max_ii
Definition max_blk.h:60
max_blk< float > max_ff
Definition max_blk.h:61
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition basic_block.h:46