Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
src
winusb
device-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-types.h
"
7
#include "
usb/usb-device.h
"
8
9
#include "
device-winusb.h
"
10
#include "
win/win-helpers.h
"
11
#include "
messenger-winusb.h
"
12
13
#include <winusb.h>
14
#include <atlstr.h>
15
#include <Windows.h>
16
#include <Sddl.h>
17
#include <string>
18
#include <regex>
19
#include <sstream>
20
#include <mutex>
21
22
#include <SetupAPI.h>
23
#include <string>
24
25
namespace
librealsense
26
{
27
namespace
platform
28
{
29
class
usb_device_winusb
:
public
usb_device
,
public
std::enable_shared_from_this<usb_device_winusb>
30
{
31
public
:
32
usb_device_winusb
(
const
usb_device_info
&
info
, std::vector<std::wstring> devices_path);
33
virtual
~usb_device_winusb
() {}
34
35
virtual
const
usb_device_info
get_info
()
const override
{
return
_info
; }
36
virtual
const
std::vector<rs_usb_interface>
get_interfaces
()
const override
{
return
_interfaces
; }
37
virtual
const
rs_usb_interface
get_interface
(
uint8_t
interface_number)
const override
;
38
virtual
const
rs_usb_messenger
open
(
uint8_t
interface_number)
override
;
39
virtual
const
std::vector<usb_descriptor>
get_descriptors
()
const override
{
return
_descriptors
; }
40
41
private
:
42
usb_device_info
_info
;
43
std::vector<rs_usb_interface>
_interfaces
;
44
std::vector<usb_descriptor>
_descriptors
;
45
46
void
parse_descriptor
(WINUSB_INTERFACE_HANDLE
handle
);
47
std::vector<std::shared_ptr<usb_interface>>
query_device_interfaces
(
const
std::wstring&
path
);
48
};
49
}
50
}
librealsense::platform::usb_device_info
Definition:
usb-types.h:136
librealsense::platform::rs_usb_interface
std::shared_ptr< usb_interface > rs_usb_interface
Definition:
usb-interface.h:31
handle
GLuint64 GLenum void * handle
Definition:
glext.h:7785
path
GLsizei const GLchar *const * path
Definition:
glext.h:4276
usb-types.h
librealsense::platform::usb_device_winusb::_info
usb_device_info _info
Definition:
device-winusb.h:42
librealsense::platform::usb_device_winusb::get_info
virtual const usb_device_info get_info() const override
Definition:
device-winusb.h:35
librealsense::platform::usb_device_winusb::~usb_device_winusb
virtual ~usb_device_winusb()
Definition:
device-winusb.h:33
uint8_t
unsigned char uint8_t
Definition:
stdint.h:78
librealsense::platform::usb_device_winusb::_interfaces
std::vector< rs_usb_interface > _interfaces
Definition:
device-winusb.h:43
librealsense::platform::usb_device_winusb::parse_descriptor
void parse_descriptor(WINUSB_INTERFACE_HANDLE handle)
Definition:
device-winusb.cpp:64
librealsense::platform::usb_device_winusb::open
virtual const rs_usb_messenger open(uint8_t interface_number) override
Definition:
device-winusb.cpp:125
rspy.test.info
def info(name, value, persistent=False)
Definition:
test.py:301
librealsense
Definition:
calibration-model.h:6
librealsense::platform::usb_device_winusb::_descriptors
std::vector< usb_descriptor > _descriptors
Definition:
device-winusb.h:44
device-winusb.h
librealsense::platform::rs_usb_messenger
std::shared_ptr< usb_messenger > rs_usb_messenger
Definition:
usb-messenger.h:26
librealsense::platform::usb_device_winusb::get_descriptors
virtual const std::vector< usb_descriptor > get_descriptors() const override
Definition:
device-winusb.h:39
librealsense::platform::usb_device_winusb::get_interface
virtual const rs_usb_interface get_interface(uint8_t interface_number) const override
Definition:
device-winusb.cpp:116
librealsense::platform::usb_device_winusb::get_interfaces
virtual const std::vector< rs_usb_interface > get_interfaces() const override
Definition:
device-winusb.h:36
usb-device.h
librealsense::platform::usb_device
Definition:
usb-device.h:17
librealsense::platform::usb_device_winusb::usb_device_winusb
usb_device_winusb(const usb_device_info &info, std::vector< std::wstring > devices_path)
Definition:
device-winusb.cpp:106
librealsense::platform::usb_device_winusb::query_device_interfaces
std::vector< std::shared_ptr< usb_interface > > query_device_interfaces(const std::wstring &path)
Definition:
device-winusb.cpp:82
messenger-winusb.h
win-helpers.h
librealsense::platform::usb_device_winusb
Definition:
device-winusb.h:29
librealsense2
Author(s): Sergey Dorodnicov
, Doron Hirshberg
, Mark Horn
, Reagan Lopez
, Itay Carpis
autogenerated on Mon May 3 2021 02:47:12