genode/base-linux/include/base/pager.h

56 lines
1.2 KiB
C
Raw Normal View History

2011-12-22 16:19:25 +01:00
/*
* \brief Paging-server framework
* \author Norman Feske
* \author Christian Helmuth
* \date 2006-04-28
*
* Linux dummies
*/
/*
2012-01-03 15:35:05 +01:00
* Copyright (C) 2006-2012 Genode Labs GmbH
2011-12-22 16:19:25 +01:00
*
* This file is part of the Genode OS framework, which is distributed
* under the terms of the GNU General Public License version 2.
*/
#ifndef _INCLUDE__BASE__PAGER_H_
#define _INCLUDE__BASE__PAGER_H_
#include <base/signal.h>
#include <pager/capability.h>
#include <cap_session/cap_session.h>
#include <thread/capability.h>
2011-12-22 16:19:25 +01:00
namespace Genode {
struct Pager_object
{
Thread_capability _thread_cap;
2011-12-22 16:19:25 +01:00
virtual ~Pager_object() { }
void exception_handler(Signal_context_capability) { }
public:
/**
* Remember thread cap so that rm_session can tell thread that
* rm_client is gone.
*/
Thread_capability thread_cap() { return _thread_cap; } const
void thread_cap(Thread_capability cap) { _thread_cap = cap; }
2011-12-22 16:19:25 +01:00
};
class Pager_activation_base { };
struct Pager_entrypoint
{
Pager_entrypoint(Cap_session *, Pager_activation_base *) { }
Pager_object *obj_by_cap(Pager_capability) { return 0; }
};
template <int FOO> class Pager_activation : public Pager_activation_base { };
}
#endif /* _INCLUDE__BASE__PAGER_H_ */