#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.