GNU Radio Manual and C++ API Reference 3.8.5.0
The Free & Open Software Radio Ecosystem
 
Loading...
Searching...
No Matches
min_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 MIN_BLK_H
25#define MIN_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 minimum 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 minimum 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 minimum corresponding input vector items.
48 */
49template <class T>
50class BLOCKS_API min_blk : virtual public sync_block
51{
52public:
53 typedef boost::shared_ptr<min_blk<T>> sptr;
54
55 static sptr make(size_t vlen, size_t vlen_out = 1);
56};
57
61} /* namespace blocks */
62} /* namespace gr */
63
64#endif /* MIN_BLK_H */
Compares vectors from multiple streams and determines the minimum value from each vector over all str...
Definition min_blk.h:51
static sptr make(size_t vlen, size_t vlen_out=1)
boost::shared_ptr< min_blk< T > > sptr
Definition min_blk.h:53
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
min_blk< std::int32_t > min_ii
Definition min_blk.h:59
min_blk< float > min_ff
Definition min_blk.h:60
min_blk< std::int16_t > min_ss
Definition min_blk.h:58
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition basic_block.h:46