USRP Hardware Driver and USRP Manual Version: 4.2.0.0
UHD and USRP Manual
wb_iface.hpp
Go to the documentation of this file.
1//
2// Copyright 2011-2013,2015 Ettus Research LLC
3// Copyright 2018 Ettus Research, a National Instruments Company
4//
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
7
8#pragma once
9
10#include <uhd/config.hpp>
12#include <stdint.h>
13#include <memory>
14
15namespace uhd {
16
18{
19public:
20 typedef std::shared_ptr<wb_iface> sptr;
21 typedef uint32_t wb_addr_type;
22
23 virtual ~wb_iface(void);
24
30 virtual void poke64(const wb_addr_type addr, const uint64_t data);
31
37 virtual uint64_t peek64(const wb_addr_type addr);
38
44 virtual void poke32(const wb_addr_type addr, const uint32_t data);
45
51 virtual uint32_t peek32(const wb_addr_type addr);
52
58 virtual void poke16(const wb_addr_type addr, const uint16_t data);
59
65 virtual uint16_t peek16(const wb_addr_type addr);
66};
67
69{
70public:
71 typedef std::shared_ptr<timed_wb_iface> sptr;
72
77 virtual time_spec_t get_time(void) = 0;
78
83 virtual void set_time(const time_spec_t& t) = 0;
84};
85
86} // namespace uhd
Definition: time_spec.hpp:31
Definition: wb_iface.hpp:69
virtual void set_time(const time_spec_t &t)=0
virtual time_spec_t get_time(void)=0
std::shared_ptr< timed_wb_iface > sptr
Definition: wb_iface.hpp:71
Definition: wb_iface.hpp:18
virtual uint16_t peek16(const wb_addr_type addr)
uint32_t wb_addr_type
Definition: wb_iface.hpp:21
virtual uint64_t peek64(const wb_addr_type addr)
virtual void poke64(const wb_addr_type addr, const uint64_t data)
virtual ~wb_iface(void)
virtual uint32_t peek32(const wb_addr_type addr)
virtual void poke32(const wb_addr_type addr, const uint32_t data)
std::shared_ptr< wb_iface > sptr
Definition: wb_iface.hpp:20
virtual void poke16(const wb_addr_type addr, const uint16_t data)
#define UHD_API
Definition: config.h:87
Definition: build_info.hpp:12