18 #ifndef INCLUDED_UHD_TRANSPORT_NIRIO_NIRIO_PROXY_IMPL_V1_H    19 #define INCLUDED_UHD_TRANSPORT_NIRIO_NIRIO_PROXY_IMPL_V1_H    21 #include <boost/smart_ptr.hpp>    22 #include <boost/noncopyable.hpp>    27 namespace uhd { 
namespace niusrprio
    45             static const uint32_t GET32             = 0x00000001;
    46             static const uint32_t SET32             = 0x00000002;
    47             static const uint32_t SET_DRIVER_CONFIG = 0x00000007;
    48             static const uint32_t FIFO              = 0x00000008;
    49             static const uint32_t IO                = 0x0000000A;
    50             static const uint32_t FIFO_STOP_ALL     = 0x0000000C;
    51             static const uint32_t ADD_RESOURCE      = 0x0000000D;
    52             static const uint32_t GET_STRING        = 0x0000000E;
    53             static const uint32_t SET_STRING        = 0x0000000F;
    54             static const uint32_t DOWNLOAD          = 0x00000013;
    55             static const uint32_t RESET             = 0x00000014;
    66             static const uint32_t CONFIGURE = 0x80000001;
    67             static const uint32_t START     = 0x80000002;
    68             static const uint32_t STOP      = 0x80000003;
    69             static const uint32_t READ      = 0x80000004;
    70             static const uint32_t WRITE     = 0x80000005;
    71             static const uint32_t WAIT      = 0x80000006;
    72             static const uint32_t GRANT     = 0x80000007;
    77             static const uint32_t POKE64             = 0xA0000005;
    78             static const uint32_t POKE32             = 0xA0000006;
    79             static const uint32_t POKE16             = 0xA0000007;
    80             static const uint32_t POKE8              = 0xA0000008;
    81             static const uint32_t PEEK64             = 0xA0000009;
    82             static const uint32_t PEEK32             = 0xA000000A;
    83             static const uint32_t PEEK16             = 0xA000000B;
    84             static const uint32_t PEEK8              = 0xA000000C;
    85             static const uint32_t READ_BLOCK         = 0xA000000D;
    86             static const uint32_t WRITE_BLOCK        = 0xA000000E;
    87             static const uint32_t GET_IO_WINDOW      = 0xA000000F;
    88             static const uint32_t GET_IO_WINDOW_SIZE = 0xA0000010;
   125                   } reserved_field_0_0;
   130                   } reserved_field_0_1;
   134                   } reserved_field_0_2;
   149                      uint32_t baseAddress;
   150                      uint32_t depthInSamples;
   229                   } memoryMappedIoWindow;
   309                         uint32_t numberRemaining;
   336                         uint64_t _64BitField;
   337                      } memoryMappedIoWindow;
   341                      } memoryMappedIoWindowSize;
   359                uint64_t _64BitField;
   375         virtual nirio_status open(
const std::string& interface_path);
   376         virtual void close(
void);
   387             uint32_t& maintenance,
   393             uint32_t& attrValue);
   397             const uint32_t value);
   399         virtual nirio_status peek(uint32_t offset, uint32_t& value);
   401         virtual nirio_status peek(uint32_t offset, uint64_t& value);
   403         virtual nirio_status poke(uint32_t offset, 
const uint32_t& value);
   405         virtual nirio_status poke(uint32_t offset, 
const uint64_t& value);
   408             uint32_t fifo_instance,
   429             uint32_t requested_depth,
   430             uint8_t requires_actuals,
   431             uint32_t& actual_depth,
   432             uint32_t& actual_size);
   436             uint32_t elements_requested,
   437             uint32_t scalar_type,
   442             uint32_t& elements_acquired,
   443             uint32_t& elements_remaining);
   447             uint32_t elements_to_grant);
   451             uint32_t elements_to_read,
   453             uint32_t buffer_datatype_width,
   454             uint32_t scalar_type,
   457             uint32_t& number_read,
   458             uint32_t& number_remaining);
   462             uint32_t elements_to_write,
   464             uint32_t buffer_datatype_width,
   465             uint32_t scalar_type,
   468             uint32_t& number_remaining);
   472             virtual void _close();
   476                 const void *writeBuffer,
   477                 size_t writeBufferLength,
   479                 size_t readBufferLength);
 
uint32_t outbufByteLen
Definition: niriok_proxy_impl_v1.h:354
 
Definition: niriok_proxy.h:109
 
uint8_t value8
Definition: niriok_proxy_impl_v1.h:224
 
void * memoryMappedAddress
Definition: niriok_proxy_impl_v1.h:335
 
uint32_t reserved_field_0_1_0
Definition: niriok_proxy_impl_v1.h:128
 
uint32_t requestedDepth
Definition: niriok_proxy_impl_v1.h:171
 
uint32_t reserved_field_1_0
Definition: niriok_proxy_impl_v1.h:349
 
uint32_t value32
Definition: niriok_proxy_impl_v1.h:222
 
uint32_t subfunction
Definition: niriok_proxy_impl_v1.h:94
 
uint32_t attribute
Definition: niriok_proxy_impl_v1.h:100
 
uint32_t version
Definition: niriok_proxy_impl_v1.h:144
 
nirio_version_t
Definition: niriok_proxy.h:54
 
Definition: niriok_proxy_impl_v1.h:36
 
uint32_t reserved_field_2_1
Definition: niriok_proxy_impl_v1.h:235
 
uint32_t rangeAttribute
Definition: niriok_proxy_impl_v1.h:159
 
uint32_t rangeSizeInBytes
Definition: niriok_proxy_impl_v1.h:158
 
uint32_t bitWidth
Definition: niriok_proxy_impl_v1.h:153
 
uint64_t value
Definition: niriok_proxy_impl_v1.h:107
 
uint32_t stringLength
Definition: niriok_proxy_impl_v1.h:345
 
uint32_t sizeToMap
Definition: niriok_proxy_impl_v1.h:228
 
union uhd::niusrprio::niriok_proxy_impl_v1::nirio_syncop_in_params_t::@3 inbuf
 
uint32_t numberRemaining
Definition: niriok_proxy_impl_v1.h:305
 
uint32_t size
Definition: niriok_proxy_impl_v1.h:340
 
void * pointer
Definition: niriok_proxy_impl_v1.h:315
 
uint32_t depthInSamples
Definition: niriok_proxy_impl_v1.h:143
 
Definition: niriok_proxy.h:113
 
Definition: niriok_proxy_impl_v1.h:64
 
#define UHD_API
Definition: config.hpp:79
 
uint64_t rangeBaseAddress
Definition: niriok_proxy_impl_v1.h:157
 
uint32_t inbufByteLen
Definition: niriok_proxy_impl_v1.h:254
 
Definition: convert.hpp:28
 
Definition: niriok_proxy_impl_v1.h:75
 
uint8_t output
Definition: niriok_proxy_impl_v1.h:200
 
uint32_t elementsRequested
Definition: niriok_proxy_impl_v1.h:196
 
uint32_t elements
Definition: niriok_proxy_impl_v1.h:204
 
uint32_t scalarType
Definition: niriok_proxy_impl_v1.h:152
 
uint64_t reserved_field_1_0
Definition: niriok_proxy_impl_v1.h:211
 
Definition: niriok_proxy_impl_v1.h:91
 
static void init_syncop_in_params(nirio_syncop_in_params_t ¶m, const void *const buf, const uint32_t len)
Definition: niriok_proxy_impl_v1.h:263
 
Definition: nirio_driver_iface.h:130
 
int32_t nirio_status
Definition: status.h:30
 
uint32_t numberRead
Definition: niriok_proxy_impl_v1.h:304
 
uint32_t channel
Definition: niriok_proxy_impl_v1.h:141
 
Definition: niriok_proxy_impl_v1.h:43
 
uint32_t reserved_field_3_0
Definition: niriok_proxy_impl_v1.h:240
 
uint32_t value
Definition: niriok_proxy_impl_v1.h:101
 
uint32_t actualSize
Definition: niriok_proxy_impl_v1.h:300
 
Definition: niriok_proxy.h:146
 
union uhd::niusrprio::niriok_proxy_impl_v1::nirio_syncop_out_params_t::@34 outbuf
 
uint32_t value32
Definition: niriok_proxy_impl_v1.h:329
 
uint32_t actualDepth
Definition: niriok_proxy_impl_v1.h:299
 
uint32_t reserved_field_0_0_0
Definition: niriok_proxy_impl_v1.h:124
 
const void * pointer
Definition: niriok_proxy_impl_v1.h:258
 
uint32_t reserved_field_0_1_1
Definition: niriok_proxy_impl_v1.h:129
 
Definition: niriok_proxy_impl_v1.h:58
 
int32_t reserved_field_4_1
Definition: niriok_proxy_impl_v1.h:248
 
uint64_t value64
Definition: niriok_proxy_impl_v1.h:328
 
uint16_t value16
Definition: niriok_proxy_impl_v1.h:223
 
uint8_t value8
Definition: niriok_proxy_impl_v1.h:331
 
uint64_t _64BitField
Definition: niriok_proxy_impl_v1.h:259
 
uint64_t value
Definition: niriok_proxy_impl_v1.h:282
 
uint32_t offset
Definition: niriok_proxy_impl_v1.h:218
 
uint32_t reserved_field_4_0
Definition: niriok_proxy_impl_v1.h:247
 
uint16_t value16
Definition: niriok_proxy_impl_v1.h:330
 
uint32_t reserved_field_1_1
Definition: niriok_proxy_impl_v1.h:212
 
Definition: niriok_proxy_impl_v1.h:271
 
uint32_t timeout
Definition: niriok_proxy_impl_v1.h:176
 
uint32_t baseAddress
Definition: niriok_proxy_impl_v1.h:142
 
Definition: niriok_proxy.h:110
 
uint64_t value64
Definition: niriok_proxy_impl_v1.h:221
 
uint8_t requiresActuals
Definition: niriok_proxy_impl_v1.h:172
 
static void init_syncop_out_params(nirio_syncop_out_params_t ¶m, void *buf, uint32_t len)
Definition: niriok_proxy_impl_v1.h:364
 
uint32_t reserved_field_0_2_0
Definition: niriok_proxy_impl_v1.h:133
 
uint64_t _64BitField
Definition: niriok_proxy_impl_v1.h:316
 
uint32_t reserved_field_1_2
Definition: niriok_proxy_impl_v1.h:213
 
uint32_t reserved_field_0_0
Definition: niriok_proxy_impl_v1.h:289
 
nirio_device_attribute32_t
Definition: niriok_proxy.h:69
 
uint32_t reserved_field_2_0
Definition: niriok_proxy_impl_v1.h:234
 
uint32_t value
Definition: niriok_proxy_impl_v1.h:277