GNU Radio's IRIDIUM Package
fft_channelizer.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2022 gr-iridium author.
4 *
5 * SPDX-License-Identifier: GPL-3.0-or-later
6 */
7
8#ifndef INCLUDED_IRIDIUM_FFT_CHANNELIZER_H
9#define INCLUDED_IRIDIUM_FFT_CHANNELIZER_H
10
11#include <gnuradio/sync_decimator.h>
12#include <iridium/api.h>
13
14namespace gr {
15namespace iridium {
16
17/*!
18 * \brief <+description of block+>
19 * \ingroup iridium
20 *
21 */
22class IRIDIUM_API fft_channelizer : virtual public gr::sync_decimator
23{
24public:
25 typedef std::shared_ptr<fft_channelizer> sptr;
26
27 /*!
28 * \brief Return a shared_ptr to a new instance of iridium::fft_channelizer.
29 *
30 * To avoid accidental use of raw pointers, iridium::fft_channelizer's
31 * constructor is in a private implementation
32 * class. iridium::fft_channelizer::make is the public interface for
33 * creating new instances.
34 */
35 static sptr make(int fft_size,
36 int decimation,
37 bool activate_streams,
38 int pdu_ports,
39 int max_burst_size,
40 int outstanding_limit,
41 bool drop_overflow);
42
43 virtual uint64_t get_n_dropped_bursts() = 0;
44 virtual int get_output_queue_size() = 0;
45 virtual int get_output_max_queue_size() = 0;
46};
47} // namespace iridium
48} // namespace gr
49
50#endif /* INCLUDED_IRIDIUM_FFT_CHANNELIZER_H */
#define IRIDIUM_API
Definition api.h:19
<+description of block+>
Definition fft_channelizer.h:23
virtual uint64_t get_n_dropped_bursts()=0
virtual int get_output_max_queue_size()=0
static sptr make(int fft_size, int decimation, bool activate_streams, int pdu_ports, int max_burst_size, int outstanding_limit, bool drop_overflow)
Return a shared_ptr to a new instance of iridium::fft_channelizer.
std::shared_ptr< fft_channelizer > sptr
Definition fft_channelizer.h:25
virtual int get_output_queue_size()=0
Definition burst_downmix.h:28
Definition burst_downmix.h:27