template <>
class WireServer
Defined at line 2559 of file fidling/gen/sdk/fidl/fuchsia.hardware.spiimpl/fuchsia.hardware.spiimpl/cpp/fidl/fuchsia.hardware.spiimpl/cpp/driver/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fdf::ClientEnd
<
::fuchsia_hardware_spiimpl::SpiImpl>|
and |::fdf::ServerEnd
<
::fuchsia_hardware_spiimpl::SpiImpl>|).
Public Methods
void GetChipSelectCount (fdf::Arena & arena, GetChipSelectCountCompleter::Sync & completer)
Returns the number of chip select lines available or provided by the driver instance.
To be used as a limit on the acceptable values for the `chip_select' field in the Exchange()
and ExchangeVmo() methods.
void TransmitVector (::fuchsia_hardware_spiimpl::wire::SpiImplTransmitVectorRequest *request,fdf::Arena &arena,TransmitVectorCompleter::Sync &completer)
Half-duplex transmit data to a SPI device; always transmits the entire buffer on success.
void ReceiveVector (::fuchsia_hardware_spiimpl::wire::SpiImplReceiveVectorRequest *request,fdf::Arena &arena,ReceiveVectorCompleter::Sync &completer)
Half-duplex receive data from a SPI device; always reads the full size requested.
void ExchangeVector (::fuchsia_hardware_spiimpl::wire::SpiImplExchangeVectorRequest *request,fdf::Arena &arena,ExchangeVectorCompleter::Sync &completer)
Full-duplex SPI transaction. Received data will exactly equal the length of the transmit
buffer.
void LockBus (::fuchsia_hardware_spiimpl::wire::SpiImplLockBusRequest *request,fdf::Arena &arena,LockBusCompleter::Sync &completer)
Lock the bus.
void UnlockBus (::fuchsia_hardware_spiimpl::wire::SpiImplUnlockBusRequest *request,fdf::Arena &arena,UnlockBusCompleter::Sync &completer)
Unlock the bus.
void RegisterVmo (::fuchsia_hardware_spiimpl::wire::SpiImplRegisterVmoRequest *request,fdf::Arena &arena,RegisterVmoCompleter::Sync &completer)
rights is a bit field containing SpiVmoRight values, and determines the read/write
permissions used by the implementation when pinning or mapping the VMO.
void UnregisterVmo (::fuchsia_hardware_spiimpl::wire::SpiImplUnregisterVmoRequest *request,fdf::Arena &arena,UnregisterVmoCompleter::Sync &completer)
void ReleaseRegisteredVmos (::fuchsia_hardware_spiimpl::wire::SpiImplReleaseRegisteredVmosRequest *request,fdf::Arena &arena,ReleaseRegisteredVmosCompleter::Sync &completer)
Release all VMOs registered to this chip_select. Called by the core driver after the client
has disconnected and the VMOs are no longer needed.
void TransmitVmo (::fuchsia_hardware_spiimpl::wire::SpiImplTransmitVmoRequest *request,fdf::Arena &arena,TransmitVmoCompleter::Sync &completer)
void ReceiveVmo (::fuchsia_hardware_spiimpl::wire::SpiImplReceiveVmoRequest *request,fdf::Arena &arena,ReceiveVmoCompleter::Sync &completer)
void ExchangeVmo (::fuchsia_hardware_spiimpl::wire::SpiImplExchangeVmoRequest *request,fdf::Arena &arena,ExchangeVmoCompleter::Sync &completer)
void WireServer ()
Defined at line 2562 of file fidling/gen/sdk/fidl/fuchsia.hardware.spiimpl/fuchsia.hardware.spiimpl/cpp/fidl/fuchsia.hardware.spiimpl/cpp/driver/wire_messaging.h
Handler bind_handler (fdf_dispatcher_t * dispatcher)
|bind_handler| returns a handler that binds incoming connections to this
server implementation.
The returned handler borrows the server instance.
The server must outlive the provided |dispatcher|. Only after
the dispatcher is shutdown will it be safe to destroy the servers.
The server should not be moved.
void ~WireServer ()
Defined at line 2563 of file fidling/gen/sdk/fidl/fuchsia.hardware.spiimpl/fuchsia.hardware.spiimpl/cpp/fidl/fuchsia.hardware.spiimpl/cpp/driver/wire_messaging.h