![]() |
L4Re Operating System Framework
Interface and Usage Documentation
|
Helper class to implement p_dispatch based server objects. More...
#include <ipc_server>
Public Member Functions | |
| int | dispatch (l4_umword_t r, L4::Ipc::Iostream &ios) |
| Implementation forwarding to p_dispatch(). | |
| Public Member Functions inherited from L4::Server_object | |
| l4_msgtag_t | dispatch (l4_msgtag_t tag, unsigned rights, l4_utcb_t *utcb) override |
| The abstract handler for client requests to the 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. | |
| Public Member Functions inherited from L4::Server_object_t< IFACE, L4::Server_object > | |
| L4::Server_object::Demand | get_buffer_demand () const override |
| int | dispatch_meta_request (L4::Ipc::Iostream &ios) |
| Implementation of the meta protocol based on IFACE. | |
Additional Inherited Members | |
| 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. | |
| Public Types inherited from L4::Server_object_t< IFACE, L4::Server_object > | |
| typedef IFACE | Interface |
| Data type of the IPC interface definition. | |
| Static Public Member Functions inherited from L4::Server_object_t< IFACE, L4::Server_object > | |
| static int | proto_dispatch (THIS *self, l4_umword_t rights, L4::Ipc::Iostream &ios) |
| Implementation of protocol-based dispatch for this server object. | |
Helper class to implement p_dispatch based server objects.
| Derived | The data type of your server object class. |
| IFACE | The data type providing the interface definition for the object. |
| BASE | Optional data-type of the base server object (usually L4::Server_object) |
This class implements the standard dispatch() function of L4::Server_object and forwards incoming messages to a set of overloaded p_dispatch() functions. There must be a p_dispatch() function in Derived for each interface provided by IFACE with the signature
that is called for messages with protocol == Iface::Protocol.
Example signature for L4Re::Dataspace is:
Definition at line 143 of file ipc_server.