mirror of
https://github.com/genodelabs/genode.git
synced 2025-06-13 04:38:20 +00:00
Adapt high-level components to new parent API
This patch adjusts the various users of the 'Child' API to the changes on the account of the new non-blocking parent interface. It also removes the use of the no-longer-available 'Connection::KEEP_OPEN' feature. With the adjustment, we took the opportunity to redesign several components to fit the non-blocking execution model much better, in particular the demo applications. Issue #2120
This commit is contained in:
committed by
Christian Helmuth
parent
8bafb9d41b
commit
b44f0554bd
@ -24,6 +24,10 @@ namespace Framebuffer { class Connection; }
|
||||
class Framebuffer::Connection : public Genode::Connection<Session>,
|
||||
public Session_client
|
||||
{
|
||||
public:
|
||||
|
||||
enum { RAM_QUOTA = 8*1024UL };
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
@ -39,7 +43,7 @@ class Framebuffer::Connection : public Genode::Connection<Session>,
|
||||
char argbuf[ARGBUF_SIZE];
|
||||
|
||||
/* donate ram quota for storing server-side meta data */
|
||||
Genode::strncpy(argbuf, "ram_quota=8K", sizeof(argbuf));
|
||||
Arg_string::set_arg(argbuf, sizeof(argbuf), "ram_quota", RAM_QUOTA);
|
||||
|
||||
/* set optional session-constructor arguments */
|
||||
if (width)
|
||||
|
@ -23,6 +23,7 @@ namespace Framebuffer {
|
||||
|
||||
struct Mode;
|
||||
struct Session;
|
||||
struct Session_client;
|
||||
}
|
||||
|
||||
|
||||
@ -81,6 +82,8 @@ struct Framebuffer::Session : Genode::Session
|
||||
{
|
||||
static const char *service_name() { return "Framebuffer"; }
|
||||
|
||||
typedef Session_client Client;
|
||||
|
||||
virtual ~Session() { }
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user