![]() |
L4Re Operating System Framework
Interface and Usage Documentation
|
A server loop object which has a Object_registry included. More...
#include <object_registry>
Public Member Functions | |
| Registry_server () | |
| Create a new server loop object for the main thread of the task. | |
| Registry_server (l4_utcb_t *, L4::Cap< L4::Thread > server, L4::Cap< L4::Factory > factory) | |
| Create a new server loop object for an arbitrary thread and factory. | |
| Registry_server (L4::Cap< L4::Thread > server, L4::Cap< L4::Factory > factory) | |
| Create a new server loop object for an arbitrary thread and factory. | |
| Object_registry const * | registry () const |
| Return registry of this server loop. | |
| Object_registry * | registry () |
| Return registry of this server loop. | |
| void L4_NORETURN | loop (l4_utcb_t *utcb=l4_utcb()) |
| Start the server loop. | |
| template<typename Printer> | |
| void L4_NORETURN | loop_dbg (Printer printer, l4_utcb_t *utcb=l4_utcb()) |
| Start the server loop with error printing. | |
| Public Member Functions inherited from L4::Server< L4::Ipc_svr::Default_loop_hooks > | |
| Server (l4_utcb_t *) | |
| Initializes the server loop. | |
| L4_NORETURN void | internal_loop (DISPATCH dispatch, l4_utcb_t *) |
| The server loop. | |
| L4_NORETURN void | loop_noexc (R r, l4_utcb_t *u=l4_utcb()) |
| Server loop without exception handling. | |
| L4_NORETURN void | loop (R r, l4_utcb_t *u=l4_utcb()) |
| Server loop with internal exception handling. | |
| L4_NORETURN void | loop_dbg (R r, Printer p, l4_utcb_t *u=l4_utcb()) |
| Server loop with internal exception handling including message printing. | |
| Public Member Functions inherited from L4::Ipc_svr::Br_manager_no_buffers | |
| int | alloc_buffer_demand (Demand const &demand) override |
| Tells the server to allocate buffers for the given demand. | |
| L4::Cap< void > | get_rcv_cap (int) const override |
| Returns L4::Cap<void>::Invalid, we have no buffer management. | |
| int | realloc_rcv_cap (int) override |
| Returns -L4_ENOMEM, we have no buffer management. | |
| int | add_timeout (Timeout *, l4_kernel_clock_t) override |
| Returns -L4_ENOSYS, we have no timeout queue. | |
| int | remove_timeout (Timeout *) override |
| Returns -L4_ENOSYS, we have no timeout queue. | |
| Public Member Functions inherited from L4::Ipc_svr::Server_iface | |
| Server_iface () | |
| Make a server interface. | |
| template<typename T> | |
| L4::Cap< T > | rcv_cap (int index) const |
| Get given receive buffer as typed capability. | |
| L4::Cap< void > | rcv_cap (int index) const |
| Get receive cap with the given index as generic (void) type. | |
Additional Inherited Members | |
| Public Types inherited from L4::Ipc_svr::Server_iface | |
| typedef L4::Type_info::Demand | Demand |
| Data type expressing server-side demand for receive buffers. | |
| Protected Member Functions inherited from L4::Server< L4::Ipc_svr::Default_loop_hooks > | |
| l4_msgtag_t | reply_n_wait (l4_msgtag_t reply, l4_umword_t *p, l4_utcb_t *) |
| Internal implementation for reply and wait. | |
| Protected Member Functions inherited from L4::Ipc_svr::Br_manager_no_buffers | |
| unsigned | first_free_br () const |
| Returns 1 as first free buffer. | |
| void | setup_wait (l4_utcb_t *utcb, L4::Ipc_svr::Reply_mode) |
| Setup wait function for the server loop (Server<>). | |
A server loop object which has a Object_registry included.
Definition at line 293 of file object_registry.
|
inline |
Create a new server loop object for the main thread of the task.
Definition at line 305 of file object_registry.
|
inline |
Create a new server loop object for an arbitrary thread and factory.
| server | Capability to thread running the server loop. |
| factory | Capability to factory object used to create new IPC gates. |
Definition at line 317 of file object_registry.
|
inline |
Create a new server loop object for an arbitrary thread and factory.
| server | Capability to thread running the server loop. |
| factory | Capability to factory object used to create new IPC gates. |
Definition at line 328 of file object_registry.
|
inline |
Start the server loop.
| utcb | The UTCB of the thread running the server loop, defaults to l4_utcb(). |
Definition at line 344 of file object_registry.
Referenced by L4Re::Util::Registry_server< Loop_hooks >::loop().
|
inline |
Start the server loop with error printing.
| Printer | The printer type. |
| printer | The printer object on which printf() is called. |
| utcb | The UTCB of the thread running the server loop, defaults to l4_utcb(). |
Definition at line 356 of file object_registry.
Referenced by L4Re::Util::Registry_server< Loop_hooks >::loop_dbg().