GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
msg_producer.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2012,2013 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_MSG_PRODUCER_H
12#define INCLUDED_MSG_PRODUCER_H
13
14#include <gnuradio/api.h>
15#include <pmt/pmt.h>
16#include <memory>
17
18namespace gr {
19namespace messages {
20
21/*!
22 * \brief Virtual base class that produces messages
23 */
25{
26public:
28 virtual ~msg_producer();
29
30 /*!
31 * \brief send \p msg to \p msg_producer
32 */
33 virtual pmt::pmt_t retrieve() = 0;
34};
35
36typedef std::shared_ptr<msg_producer> msg_producer_sptr;
37
38} /* namespace messages */
39} /* namespace gr */
40
41#endif /* INCLUDED_MSG_PRODUCER_H */
Virtual base class that produces messages.
Definition: msg_producer.h:25
virtual pmt::pmt_t retrieve()=0
send msg to msg_producer
msg_producer()
Definition: msg_producer.h:27
#define GR_RUNTIME_API
Definition: gnuradio-runtime/include/gnuradio/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29
std::shared_ptr< pmt_base > pmt_t
typedef for shared pointer (transparent reference counting).
Definition: pmt.h:83