USRP Hardware Driver and USRP Manual  Version: 3.11.0.HEAD-0-gdca39145
UHD and USRP Manual
usb_device_handle.hpp
Go to the documentation of this file.
1 //
2 // Copyright 2010-2013 Ettus Research LLC
3 //
4 // SPDX-License-Identifier: GPL-3.0
5 //
6 
7 #ifndef INCLUDED_UHD_TRANSPORT_USB_DEVICE_HANDLE_HPP
8 #define INCLUDED_UHD_TRANSPORT_USB_DEVICE_HANDLE_HPP
9 
10 #include <uhd/config.hpp>
11 #include <boost/utility.hpp>
12 #include <boost/shared_ptr.hpp>
13 #include <stdint.h>
14 #include <vector>
15 
16 namespace uhd { namespace transport {
17 
30 class UHD_API usb_device_handle : boost::noncopyable {
31 public:
32  typedef boost::shared_ptr<usb_device_handle> sptr;
33  typedef std::pair<uint16_t, uint16_t> vid_pid_pair_t;
34 
35  virtual ~usb_device_handle(void);
36 
41  virtual std::string get_serial() const = 0;
42 
47  virtual std::string get_manufacturer() const = 0;
48 
53  virtual std::string get_product() const = 0;
54 
59  virtual uint16_t get_vendor_id() const = 0;
60 
65  virtual uint16_t get_product_id() const = 0;
66 
71  virtual bool firmware_loaded() = 0;
72 
77  static std::vector<usb_device_handle::sptr> get_device_list(uint16_t vid, uint16_t pid);
78  static std::vector<usb_device_handle::sptr> get_device_list(const std::vector<usb_device_handle::vid_pid_pair_t>& vid_pid_pair_list);
79 
80 
81 }; //namespace usb
82 
83 }} //namespace
84 
85 #endif /* INCLUDED_UHD_TRANSPORT_USB_DEVICE_HANDLE_HPP */
Definition: usb_device_handle.hpp:30
boost::shared_ptr< usb_device_handle > sptr
Definition: usb_device_handle.hpp:32
Definition: build_info.hpp:14
std::pair< uint16_t, uint16_t > vid_pid_pair_t
Definition: usb_device_handle.hpp:33
#define UHD_API
Definition: config.h:62