Loading...
Searching...
No Matches
L4virtio::Svr::Virtio_i2c< Request_handler, Epiface >::Request_processor Class Reference

Handler for the Virtio requests. More...

`#include <virtio-i2c-device>`

Inheritance diagram for L4virtio::Svr::Virtio_i2c< Request_handler, Epiface >::Request_processor:
Collaboration diagram for L4virtio::Svr::Virtio_i2c< Request_handler, Epiface >::Request_processor:

## Public Member Functions

I2c_req | get_request ()
| Linux prepares the I2C request in three data parts: 1st: out_hdr 2nd: buffer (optional) 3rd: in_hdr.
Public Member Functions inherited from L4virtio::Svr::Request_processor
template<typename DESC_MAN, typename ... ARGS>
void | start (DESC_MAN *dm, Virtqueue *ring, Virtqueue::Head_desc const &request, ARGS... args)
| Start processing a new request.
template<typename DESC_MAN, typename ... ARGS>
Virtqueue::Request const & | start (DESC_MAN *dm, Virtqueue::Request const &request, ARGS... args)
| Start processing a new request.
Virtqueue::Desc::Flags | current_flags () const
| Get the flags of the currently processed descriptor.
bool | has_more () const
| Are there more chained descriptors?
template<typename DESC_MAN, typename ... ARGS>
bool | next (DESC_MAN *dm, ARGS... args)
| Switch to the next descriptor in a descriptor chain.

## Detailed Description

template<typename Request_handler, typename Epiface = L4virtio::Device>
class L4virtio::Svr::Virtio_i2c< Request_handler, Epiface >::Request_processor

Handler for the Virtio requests.

Definition at line 123 of file virtio-i2c-device.

## Member Function Documentation

## get_request()

template<typename Request_handler, typename Epiface = L4virtio::Device>

I2c_req L4virtio::Svr::Virtio_i2c< Request_handler, Epiface >::Request_processor::get_request | ( |  | ) |

inline

Linux prepares the I2C request in three data parts: 1st: out_hdr 2nd: buffer (optional) 3rd: in_hdr.

This parses the three Data_buffers and recreate the virtio_i2c_req structure.

Definition at line 172 of file virtio-i2c-device.

References L4virtio::Svr::Data_buffer::left, L4virtio::Svr::Request_processor::next(), and L4virtio::Svr::Data_buffer::pos.

Here is the call graph for this function:

The documentation for this class was generated from the following file:

- l4/l4virtio/server/virtio-i2c-device