#include <uhd/property_tree.hpp>
#include <uhd/stream.hpp>
#include <uhd/types/sid.hpp>
#include <uhd/types/stream_cmd.hpp>
#include <uhd/types/wb_iface.hpp>
#include <uhd/utils/static.hpp>
#include <uhd/rfnoc/node_ctrl_base.hpp>
#include <uhd/rfnoc/block_id.hpp>
#include <uhd/rfnoc/stream_sig.hpp>
#include <uhd/rfnoc/blockdef.hpp>
#include <uhd/rfnoc/constants.hpp>
#include <boost/cstdint.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/lexical_cast.hpp>
#include <stdint.h>
Go to the source code of this file.
◆ UHD_RFNOC_BLOCK_CONSTRUCTOR
#define UHD_RFNOC_BLOCK_CONSTRUCTOR |
( |
|
CLASS_NAME | ) |
|
Value:CLASS_NAME##_impl( \
const make_args_t &make_args \
class UHD_RFNOC_API block_ctrl_base
Base class for all RFNoC block controller objects.
Definition: block_ctrl_base.hpp:105
Shorthand for block constructor.
◆ UHD_RFNOC_BLOCK_OBJECT
#define UHD_RFNOC_BLOCK_OBJECT |
( |
|
class_name | ) |
typedef boost::shared_ptr< class_name > sptr; |
This macro must be put in the public section of an RFNoC.
◆ UHD_RFNOC_BLOCK_REGISTER
#define UHD_RFNOC_BLOCK_REGISTER |
( |
|
CLASS_NAME, |
|
|
|
BLOCK_NAME |
|
) |
| |
Value:block_ctrl_base::sptr CLASS_NAME##_make( \
const make_args_t &make_args \
) { \
return block_ctrl_base::sptr(new CLASS_NAME##_impl(make_args)); \
} \
UHD_STATIC_BLOCK(register_rfnoc_##CLASS_NAME) \
}
static void register_block(const make_t &make, const std::string &name)
This macro must be placed inside a block implementation file.