class Completion
Defined at line 1189 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
Completion
Public Methods
void Completion ()
Defined at line 1191 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
void Completion (const Completion & other)
Defined at line 1192 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
bool IsEmpty ()
Returns whether no field is set.
bool HasUnknownData ()
Returns whether the table references unknown fields.
void _CloseHandles ()
::fidl::WireTableBuilder< ::fuchsia_hardware_usb_endpoint::wire::Completion> Builder (::fidl::AnyArena & arena)
Return a builder that by defaults allocates of an arena.
::fidl::WireTableExternalBuilder< ::fuchsia_hardware_usb_endpoint::wire::Completion> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_usb_endpoint::wire::Completion>> frame)
Return a builder that relies on explicitly allocating |fidl::ObjectView|s.
bool has_transfer_size ()
Completion & operator= (const Completion & other)
Defined at line 1193 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
void Completion (Completion && other)
Defined at line 1194 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
Completion & operator= (Completion && other)
Defined at line 1195 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
::fuchsia_hardware_usb_request::wire::Request & request ()
Request completed.
bool has_request ()
int32_t & status ()
Completion status. Common return status codes include:
- `ZX_OK`: Success.
- `ZX_ERR_NOT_SUPPORTED`: The requested operation or feature is unsupported (e.g. the
request requires scatter-gather on an endpoint where `supports_scatter_gather` is
false, such as spanning non-contiguous physical pages or multiple buffer regions).
- `ZX_ERR_IO_NOT_PRESENT`: The device is no longer present (e.g. physically
disconnected or powered off). When received, callers should terminate
transfer loops without re-queuing.
- `ZX_ERR_INVALID_ARGS`: Invalid request parameters.
- `ZX_ERR_BAD_STATE`: Driver is in an invalid state.
- `ZX_ERR_IO_REFUSED`: The device or controller refused or halted the
transfer (e.g. the endpoint was halted/stalled by host
`SET_FEATURE(ENDPOINT_HALT)` or hardware transfer abort). Buffers may be
re-queued/recycled once the halt condition is cleared.
- `ZX_ERR_CANCELED`: The transfer was explicitly canceled by client software
(e.g. via `CancelAll`).
- `ZX_ERR_NO_MEMORY`: Memory allocation failed.
- `ZX_ERR_INTERNAL`: Internal driver error.
- `ZX_ERR_IO_MISSED_DEADLINE`: The transfer missed its deadline.
- `ZX_ERR_IO`: General I/O error.
- `ZX_ERR_IO_INVALID`: Invalid I/O operation.
bool has_status ()
uint64_t & transfer_size ()
Bytes successfully transferred.
::zx::eventpair & wake_lease ()
Wake lease if this completion took the system out of suspend.
bool has_wake_lease ()
Completion & set_request (::fidl::ObjectView< ::fuchsia_hardware_usb_request::wire::Request> elem)
Completion & set_request (std::nullptr_t )
Completion & clear_request ()
Completion & set_status (int32_t elem)
Completion & clear_status ()
Completion & set_transfer_size (::fidl::ObjectView<uint64_t> elem)
Completion & set_transfer_size (std::nullptr_t )
Completion & clear_transfer_size ()
Completion & set_wake_lease (::zx::eventpair elem)
Completion & clear_wake_lease ()
void Completion (::fidl::AnyArena & allocator)
void Completion (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_usb_endpoint::wire::Completion>> && frame)
This constructor allows a user controlled allocation (not using a Arena).
It should only be used when performance is key.
As soon as the frame is given to the table, it must not be used directly or for another table.
void Allocate (::fidl::AnyArena & allocator)
void Init (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_usb_endpoint::wire::Completion>> && frame_ptr)
void ~Completion ()
Defined at line 1197 of file fidling/gen/sdk/fidl/fuchsia.hardware.usb.endpoint/fuchsia.hardware.usb.endpoint/cpp/fidl/fuchsia.hardware.usb.endpoint/cpp/wire_types.h
Friends
class WireTableBaseBuilder
class WireTableBaseBuilder