interface-winusb.h
Go to the documentation of this file.
1 // License: Apache 2.0. See LICENSE file in root directory.
2 // Copyright(c) 2015 Intel Corporation. All Rights Reserved.
3 
4 #pragma once
5 
6 #include "usb/usb-interface.h"
7 #include "endpoint-winusb.h"
8 
9 #include <windows.h>
10 #include <winusb.h>
11 #include <map>
12 
13 namespace librealsense
14 {
15  namespace platform
16  {
18  {
19  public:
20  usb_interface_winusb(WINUSB_INTERFACE_HANDLE handle, USB_INTERFACE_DESCRIPTOR info, const std::wstring& device_path);
21 
22  virtual ~usb_interface_winusb() {};
23 
24  virtual uint8_t get_number() const override { return _info.bInterfaceNumber; }
25  virtual uint8_t get_class() const override { return _info.bInterfaceClass; }
26  virtual uint8_t get_subclass() const override { return _info.bInterfaceSubClass; }
27  virtual const std::vector<std::shared_ptr<usb_endpoint>> get_endpoints() const override { return _endpoints; }
28 
30 
31  const std::wstring get_device_path() { return _device_path; }
32  private:
33  std::wstring _device_path;
34  USB_INTERFACE_DESCRIPTOR _info;
35  std::vector<std::shared_ptr<usb_endpoint>> _endpoints;
36  };
37  }
38 }
GLuint64 GLenum void * handle
Definition: glext.h:7785
unsigned char uint8_t
Definition: stdint.h:78
usb_interface_winusb(WINUSB_INTERFACE_HANDLE handle, USB_INTERFACE_DESCRIPTOR info, const std::wstring &device_path)
direction
Definition: rs-align.cpp:25
enum librealsense::platform::_endpoint_direction endpoint_direction
def info(name, value, persistent=False)
Definition: test.py:301
virtual uint8_t get_subclass() const override
std::shared_ptr< usb_endpoint > rs_usb_endpoint
Definition: usb-endpoint.h:24
virtual uint8_t get_class() const override
virtual uint8_t get_number() const override
virtual const rs_usb_endpoint first_endpoint(const endpoint_direction direction, const endpoint_type type=RS2_USB_ENDPOINT_BULK) const override
GLenum type
virtual const std::vector< std::shared_ptr< usb_endpoint > > get_endpoints() const override
enum librealsense::platform::_endpoint_type endpoint_type
std::vector< std::shared_ptr< usb_endpoint > > _endpoints


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:47:17