Namespaces
Enumerations
enum class UsbSpeed : uint32_t
| Name | Value |
|---|---|
| kUndefined | 0u |
| kFull | 1u |
| kLow | 2u |
| kHigh | 3u |
| kSuper | 4u |
| kEnhancedSuper | 5u |
Defined at line 2918 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.descriptor/fuchsia.hardware.usb.descriptor/cpp/fidl/fuchsia.hardware.usb.descriptor/cpp/common_types.h
enum class UsbMode : uint32_t
| Name | Value |
|---|---|
| kNone | 0u |
| kHost | 1u |
| kPeripheral | 2u |
| kOtg | 3u |
USB operational modes.
Defined at line 2950 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.descriptor/fuchsia.hardware.usb.descriptor/cpp/fidl/fuchsia.hardware.usb.descriptor/cpp/common_types.h
enum class EndpointDirection : uint8_t
| Name | Value |
|---|---|
| kOut | 0u |
| kIn | 128u |
Endpoint transfer direction (IN from device to host, or OUT from host to device)
encoded in bit 7 of the endpoint address (`bEndpointAddress`), as defined in
USB 2.0 specification section 9.6.6.
Defined at line 2980 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.descriptor/fuchsia.hardware.usb.descriptor/cpp/fidl/fuchsia.hardware.usb.descriptor/cpp/common_types.h
enum class EndpointType : uint8_t
| Name | Value |
|---|---|
| kControl | 0u |
| kIsochronous | 1u |
| kBulk | 2u |
| kInterrupt | 3u |
Endpoint transfer type as defined in USB 2.0 specification section 9.6.6.
Defined at line 2998 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.descriptor/fuchsia.hardware.usb.descriptor/cpp/fidl/fuchsia.hardware.usb.descriptor/cpp/common_types.h
enum class SynchronizationType : uint8_t
| Name | Value |
|---|---|
| kNoSynchronization | 0u |
| kAsynchronous | 1u |
| kAdaptive | 2u |
| kSynchronous | 3u |
Endpoint synchronization type (bits [3:2] of `bmAttributes`), as defined in USB 2.0 specification section 9.6.6.
Defined at line 3020 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.descriptor/fuchsia.hardware.usb.descriptor/cpp/fidl/fuchsia.hardware.usb.descriptor/cpp/common_types.h
Records
-
class AdbFastbootProtocol -
class AudioAcDescriptorSubtype -
class AudioAsDescriptorSubtype -
class AudioEndpointControlSelector -
class AudioEpDescriptorSubtype -
class AudioFeatureUnitControlSelector -
class AudioFormatTag -
class AudioFormatType -
class AudioProcessType -
class AudioRequest -
class AudioSubclass -
class AudioTerminalControlSelector -
class AudioTerminalType -
class CdcDescriptorSubtype -
class CdcNotification -
class CdcRequest -
class CdcSubclass -
class DescriptorType -
class FeatureSelector -
class HidProtocol -
class HidRequest -
class HidSubclass -
class MidiEndpointControlSelector -
class MidiEpDescriptorSubtype -
class MidiJackType -
class MidiMsDescriptorSubtype -
class MiscProtocol -
class MiscSubclass -
class MscProtocol -
class MscRequest -
class MscSubclass -
class RequestRecipient -
class RequestType -
class StandardRequest -
class TestVendorProtocol -
class UsageType -
class Usb2Payload -
class Usb3Payload -
class UsbClass -
class UsbDeviceDescriptor -
class UsbEndpointDescriptor -
class UsbHubDescriptor -
class UsbHubDescriptorPayload -
class UsbInterfaceDescriptor -
class UsbPortStatus -
class UsbSetup -
class UsbSsEpCompDescriptor -
class VendorSubclass -
class VideoEpDescriptorSubtype -
class VideoRequest -
class VideoSubclass -
class VideoVcDescriptorSubtype -
class VideoVsControlSelector -
class VideoVsDescriptorSubtype -
class VsockProtocol -
class WirelessProtocol -
class WirelessSubclass
Functions
-
template <typename E>auto ToUnderlyingHelper (E val)Defined at line 39 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
-
template <auto)>void fuchsia_hardware_usb_descriptor_adl_tag (auto ) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioAcDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioProcessType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioEpDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioTerminalControlSelector & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioFeatureUnitControlSelector & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioEndpointControlSelector & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioTerminalType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioAsDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioFormatTag & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AudioFormatType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MidiMsDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MidiEpDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MidiJackType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MidiEndpointControlSelector & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::CdcRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::CdcNotification & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::CdcSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::CdcDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::HidRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::HidSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::HidProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::Usb2Payload & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::Usb3Payload & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbHubDescriptorPayload & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbHubDescriptor & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbPortStatus & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MscRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MscSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MscProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbSpeed & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbMode & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbSetup & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbDeviceDescriptor & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbSsEpCompDescriptor & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbEndpointDescriptor & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbInterfaceDescriptor & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::EndpointDirection & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::EndpointType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::SynchronizationType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsageType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::RequestType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::RequestRecipient & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::StandardRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::UsbClass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::DescriptorType & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::FeatureSelector & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MiscSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::MiscProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::WirelessSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::WirelessProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VendorSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::AdbFastbootProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VsockProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::TestVendorProtocol & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoSubclass & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoVcDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoVsDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoEpDescriptorSubtype & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoRequest & value) -
std::ostream & operator<< (std::ostream & os, const ::fuchsia_hardware_usb_descriptor::VideoVsControlSelector & value) -
template <IsUsbBitmaskEnum E1, IsUsbBitmaskEnum E2>uint8_t operator| (E1 a, E2 b)Defined at line 50 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
-
template <IsUsbBitmaskEnum E1, IsUsbBitmaskEnum E2>uint8_t operator& (E1 a, E2 b)Defined at line 65 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
-
template <typename T, IsDescriptorEnum E>bool operator== (T a, E b)Defined at line 88 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
-
template <typename TIsDescriptorEnum E>bool operator== (E a, T b)Defined at line 94 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
Concepts
template <typename E> IsUsbBitmaskEnum std::is_same_v<E, EndpointDirection> || std::is_same_v<E, RequestType> || std::is_same_v<E, RequestRecipient>
Overloaded bitwise OR operators for setup request enums via IsUsbBitmaskEnum concept.
Defined at line 34 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h
template <typename E> IsDescriptorEnum fuchsia_hardware_usb_descriptor_internal::IsUsbDescriptorEnum<E>
Architectural Note:
When matching or switching on extensible FIDL class codes (e.g., UsbClass) and vendor protocols,
driver maintainers should explicitly handle `.is_unknown()` fallback paths. This ensures wire
compatibility with novel USB hardware and newly introduced specification codes.
Defined at line 83 of file ../../src/devices/usb/lib/usb/include/usb/descriptors.h