/* * (c) 2008-2009 Alexander Warg * economic rights: Technische Universität Dresden (Germany) * * This file is part of TUD:OS and distributed under the terms of the * GNU General Public License 2. * Please see the COPYING-GPL-2 file for details. */ #pragma once #include "dataspace.h" #include "log.h" #include "alloc.h" #include "region.h" #include #include #include #include class App_task : public L4::Epiface_t { private: L4::Cap _task; L4::Cap _thread; Allocator *_alloc; cxx::Weak_ref _rm; public: App_task(); Allocator *allocator() const { return _alloc; } cxx::Weak_ref const &rm() { return _rm; } long op_signal(L4Re::Parent::Rights, unsigned long, unsigned long); void task_cap(L4::Cap const &c) { _task = c; } void thread_cap(L4::Cap const &c) { _thread = c; } L4::Cap task_cap() const { return _task; } L4::Cap thread_cap() const { return _thread; } virtual ~App_task(); };