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 50 of file ../../src/devices/bin/driver_runtime/callback_request.h

bool IsAlwaysOn (RequestType type)

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

bool IsAlwaysOn ()

Defined at line 58 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 63 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 78 of file ../../src/devices/bin/driver_runtime/callback_request.h

void SetCallbackReason (zx_status_t callback_reason)

Defined at line 89 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 92 of file ../../src/devices/bin/driver_runtime/callback_request.h

void Reset ()

Clears the callback request state.

Defined at line 95 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 103 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 106 of file ../../src/devices/bin/driver_runtime/callback_request.h

RequestType request_type ()

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

void set_request_type (RequestType type)

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

void * async_operation ()

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

void set_handle (zx_handle_t handle)

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

zx_handle_t handle ()

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

void set_signals (zx_signals_t signals)

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

zx_signals_t signals ()

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

const void * initiating_driver ()

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

driver_runtime::Dispatcher * initiating_dispatcher ()

Defined at line 122 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
kAlwaysOnTask 6
kAlwaysOnWait 7
kAlwaysOnOther 8

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