#include <uhd/config.hpp>
#include <uhd/rfnoc/defaults.hpp>
#include <uhd/rfnoc/noc_block_base.hpp>
#include <uhd/utils/static.hpp>
#include <functional>
#include <string>
Go to the source code of this file.
|
#define | UHD_RFNOC_BLOCK_REGISTER_FOR_DEVICE_DIRECT( CLASS_NAME, NOC_ID, DEVICE_ID, BLOCK_NAME, MB_ACCESS, TB_CLOCK, CTRL_CLOCK) |
| This macro must be placed inside a block implementation file.
|
|
#define | UHD_RFNOC_BLOCK_REGISTER_DIRECT( CLASS_NAME, NOC_ID, BLOCK_NAME, TB_CLOCK, CTRL_CLOCK) |
|
#define | UHD_RFNOC_BLOCK_REGISTER_DIRECT_MB_ACCESS( CLASS_NAME, NOC_ID, BLOCK_NAME, TB_CLOCK, CTRL_CLOCK) |
|
◆ UHD_RFNOC_BLOCK_REGISTER_DIRECT
#define UHD_RFNOC_BLOCK_REGISTER_DIRECT |
( |
| CLASS_NAME, |
|
|
| NOC_ID, |
|
|
| BLOCK_NAME, |
|
|
| TB_CLOCK, |
|
|
| CTRL_CLOCK ) |
Value:
CLASS_NAME, NOC_ID, ANY_DEVICE, BLOCK_NAME, false, TB_CLOCK, CTRL_CLOCK)
#define UHD_RFNOC_BLOCK_REGISTER_FOR_DEVICE_DIRECT( CLASS_NAME, NOC_ID, DEVICE_ID, BLOCK_NAME, MB_ACCESS, TB_CLOCK, CTRL_CLOCK)
This macro must be placed inside a block implementation file.
Definition registry.hpp:18
◆ UHD_RFNOC_BLOCK_REGISTER_DIRECT_MB_ACCESS
#define UHD_RFNOC_BLOCK_REGISTER_DIRECT_MB_ACCESS |
( |
| CLASS_NAME, |
|
|
| NOC_ID, |
|
|
| BLOCK_NAME, |
|
|
| TB_CLOCK, |
|
|
| CTRL_CLOCK ) |
Value:
CLASS_NAME, NOC_ID, ANY_DEVICE, BLOCK_NAME, true, TB_CLOCK, CTRL_CLOCK)
◆ UHD_RFNOC_BLOCK_REGISTER_FOR_DEVICE_DIRECT
#define UHD_RFNOC_BLOCK_REGISTER_FOR_DEVICE_DIRECT |
( |
| CLASS_NAME, |
|
|
| NOC_ID, |
|
|
| DEVICE_ID, |
|
|
| BLOCK_NAME, |
|
|
| MB_ACCESS, |
|
|
| TB_CLOCK, |
|
|
| CTRL_CLOCK ) |
Value:
{ \
return std::make_shared<CLASS_NAME##_impl>(std::move(make_args)); \
} \
UHD_STATIC_BLOCK(register_rfnoc_##CLASS_NAME) \
{ \
uhd::rfnoc::registry::register_block_direct(NOC_ID, \
DEVICE_ID, \
BLOCK_NAME, \
MB_ACCESS, \
TB_CLOCK, \
CTRL_CLOCK, \
&CLASS_NAME##_make); \
}
std::unique_ptr< make_args_t > make_args_ptr
Opaque pointer to the constructor arguments.
Definition noc_block_base.hpp:54
std::shared_ptr< noc_block_base > sptr
Definition noc_block_base.hpp:48
This macro must be placed inside a block implementation file.