Loading...
Searching...
No Matches
L4::Epiface_t< Derived, IFACE, BASE, bool > Struct Template Reference

Epiface implementation for Kobject-based interface implementations. More...

`#include <ipc_epiface>`

Inheritance diagram for L4::Epiface_t< Derived, IFACE, BASE, bool >:
Collaboration diagram for L4::Epiface_t< Derived, IFACE, BASE, bool >:

## Public Member Functions

l4_msgtag_t | dispatch (l4_msgtag_t tag, unsigned rights, l4_utcb_t *utcb) final
| The abstract handler for client requests to the object.
Public Member Functions inherited from L4::Epiface_t0< IFACE, L4::Epiface >
Type_info::Demand | get_buffer_demand () const
| Get the server-side buffer demand based in IFACE.
Cap< IFACE > | obj_cap () const
| Get the (typed) capability to this object.
Public Member Functions inherited from L4::Epiface
| Epiface ()
| Make a server object.
virtual | ~Epiface ()=0
| Destroy the object.
Stored_cap | obj_cap () const
| Get the capability to the kernel object belonging to this object.
Server_iface * | server_iface () const
| Get pointer to server interface at which the object is currently registered.
int | set_server (Server_iface *srv, Cap< void > cap, bool managed=false)
| Set server registration info for the object.
void | set_obj_cap (Cap< void > const &cap)
| Deprecated server registration function.

## Additional Inherited Members

Public Types inherited from L4::Epiface_t0< IFACE, L4::Epiface >
typedef IFACE | Interface
| Data type of the IPC interface definition.
Public Types inherited from L4::Epiface
typedef Ipc_svr::Server_iface | Server_iface
| Type for abstract server interface.
typedef Ipc_svr::Server_iface::Demand | Demand
| Type for server-side receive buffer demand.

## Detailed Description

template<typename Derived, typename IFACE, typename BASE = L4::Epiface, bool = cxx::is_polymorphic<BASE>::value>
struct L4::Epiface_t< Derived, IFACE, BASE, bool >

Epiface implementation for Kobject-based interface implementations.

Template Parameters

  Derived | Class providing the interface implementations.
  BASE | Epiface base class.

Examples
  examples/clntsrv/src/server.cc.

Definition at line 503 of file ipc_epiface.

## Member Function Documentation

## dispatch()

template<typename Derived, typename IFACE, typename BASE = L4::Epiface, bool = cxx::is_polymorphic<BASE>::value>

l4_msgtag_t L4::Epiface_t< Derived, IFACE, BASE, bool >::dispatch | ( | l4_msgtag_t | tag,
|  | unsigned | rights,
|  | l4_utcb_t * | utcb )

inlinefinalvirtual

The abstract handler for client requests to the object.

Parameters

  tag | The message tag for this invocation.
  rights | The rights bits in the invoked capability.
  utcb | The UTCB used for the invocation.

Return values

  -L4_ENOREPLY | No reply message is send.
  <0 | Error, reply with error code.
  >=0 | Success, reply with return value.

This function must be implemented by application specific server objects.

Implements L4::Epiface.

Definition at line 506 of file ipc_epiface.

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

- l4/sys/cxx/ipc_epiface