class InputDevice
Defined at line 9004 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/hlcpp/fuchsia/input/report/cpp/fidl.h
An `InputDevice` driver represents a single physical input device.
The InputDevice maintains an internal FIFO of `MAX_DEVICE_REPORT_COUNT`
reports for each client that connects. Reports are removed from the FIFO
once they are read by the client. If the FIFO is full, it will drop the
oldest report to make room for an incoming report.
Public Members
static const char[] Name_
Public Methods
void ~InputDevice ()
void GetInputReportsReader (::fidl::InterfaceRequest< ::fuchsia::input::report::InputReportsReader> reader)
Open a new InputReportsReader on this device. Each reader receives
their own reports.
void GetDescriptor (GetDescriptorCallback callback)
Gets the device descriptor for this device.
void SendOutputReport (::fuchsia::input::report::OutputReport report, SendOutputReportCallback callback)
Send a single output report to the device. This will throw an error
if the output report does not follow the OutputDescriptor.
void GetFeatureReport (GetFeatureReportCallback callback)
Get the feature report for a given device. This requests the state of
the device's features.
void SetFeatureReport (::fuchsia::input::report::FeatureReport report, SetFeatureReportCallback callback)
Set the feature report for a given device. This sets the state of
the device's features.
void GetInputReport (::fuchsia::input::report::DeviceType device_type, GetInputReportCallback callback)
For general cases, InputReportReader is the preferred way of getting
InputReports. For devices that don't send InputReports naturally, this
method can be used to request a report from the device type indicated.
Does not block, and returns ZX_ERR_NOT_SUPPORTED if `GetInputReport` or
`device_type` are not supported.
Protected Methods
void handle_unknown_method (uint64_t ordinal, bool method_has_response)
Friends
class InputDevice_Stub