class CallbackRequest

Defined at line 32 of file ../../src/devices/bin/driver_runtime/callback_request.h

Wraps a callback so that it can be added to a list.

Public Methods

void ~CallbackRequest ()

Defined at line 36 of file ../../src/devices/bin/driver_runtime/callback_request.h

void CallbackRequest (RequestType request_type)

Defined at line 51 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool IsAlwaysOn (RequestType type)

Defined at line 54 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool IsAlwaysOn ()

Defined at line 59 of file ../../src/devices/bin/driver_runtime/callback_request.h

void SetCallback (driver_runtime::Dispatcher * dispatcher, Callback callback, void * async_operation)

Initializes the callback to be queued.

Sets the dispatcher, and the callback that will be called by |Call|.

|async_operation| is the async_dispatcher_t operation that this callback request manages.

Defined at line 64 of file ../../src/devices/bin/driver_runtime/callback_request.h

void Call (std::unique_ptr<CallbackRequest> callback_request, zx_status_t status)

Calls the callback, returning ownership of the request back the original requester,

Defined at line 79 of file ../../src/devices/bin/driver_runtime/callback_request.h

void SetCallbackReason (zx_status_t callback_reason)

Defined at line 90 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool IsPending ()

Returns whether a callback has been set via |SetCallback| and not yet been called.

Defined at line 93 of file ../../src/devices/bin/driver_runtime/callback_request.h

void Reset ()

Clears the callback request state.

Defined at line 96 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool has_async_operation ()

Returns whether this callback manages an async_dispatcher_t operation.

Defined at line 104 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool holds_async_operation (void * operation)

Returns whether this callback manages |operation|.

Defined at line 107 of file ../../src/devices/bin/driver_runtime/callback_request.h

RequestType request_type ()

Defined at line 111 of file ../../src/devices/bin/driver_runtime/callback_request.h

void set_request_type (RequestType type)

Defined at line 112 of file ../../src/devices/bin/driver_runtime/callback_request.h

void * async_operation ()

Defined at line 114 of file ../../src/devices/bin/driver_runtime/callback_request.h

void set_handle (zx_handle_t handle)

Defined at line 116 of file ../../src/devices/bin/driver_runtime/callback_request.h

zx_handle_t handle ()

Defined at line 117 of file ../../src/devices/bin/driver_runtime/callback_request.h

void set_signals (zx_signals_t signals)

Defined at line 119 of file ../../src/devices/bin/driver_runtime/callback_request.h

zx_signals_t signals ()

Defined at line 120 of file ../../src/devices/bin/driver_runtime/callback_request.h

const void * initiating_driver ()

Defined at line 122 of file ../../src/devices/bin/driver_runtime/callback_request.h

driver_runtime::Dispatcher * initiating_dispatcher ()

Defined at line 123 of file ../../src/devices/bin/driver_runtime/callback_request.h

Enumerations

enum class RequestType
Name Value
kIrq 0
kWait 1
kTask 2
kOther 3
kWakeIrq 4
kWakeWait 5
kAlwaysOnIrq 6
kAlwaysOnTask 7
kAlwaysOnWait 8
kAlwaysOnOther 9

Defined at line 38 of file ../../src/devices/bin/driver_runtime/callback_request.h