mirror of
https://github.com/genodelabs/genode.git
synced 2025-06-21 00:23:16 +00:00
base: uniform base-internal header structure
This patch establishes a common organization of header files internal to the base framework. The internal headers are located at '<repository>/src/include/base/internal/'. This structure has been choosen to make the nature of those headers immediately clear when included: #include <base/internal/lock_helper.h> Issue #1832
This commit is contained in:
committed by
Christian Helmuth
parent
be496c6dc1
commit
e6729316ff
@ -1,44 +0,0 @@
|
||||
/*
|
||||
* \brief Obtain parent capability
|
||||
* \author Norman Feske
|
||||
* \date 2010-01-26
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (C) 2010-2013 Genode Labs GmbH
|
||||
*
|
||||
* This file is part of the Genode OS framework, which is distributed
|
||||
* under the terms of the GNU General Public License version 2.
|
||||
*/
|
||||
|
||||
#ifndef _LIB__STARTUP___MAIN_PARENT_CAP_H_
|
||||
#define _LIB__STARTUP___MAIN_PARENT_CAP_H_
|
||||
|
||||
#include <base/native_types.h>
|
||||
|
||||
namespace Genode {
|
||||
|
||||
/**
|
||||
* Return constructed parent capability
|
||||
*/
|
||||
Parent_capability parent_cap()
|
||||
{
|
||||
Native_capability::Raw *raw = (Native_capability::Raw *)&_parent_cap;
|
||||
|
||||
static Cap_index *i = cap_map()->insert(raw->local_name,
|
||||
Fiasco::PARENT_CAP);
|
||||
|
||||
/*
|
||||
* Update local name after a parent capability got reloaded via
|
||||
* 'Platform_env::reload_parent_cap()'.
|
||||
*/
|
||||
if (i->id() != raw->local_name) {
|
||||
cap_map()->remove(i);
|
||||
i = cap_map()->insert(raw->local_name, Fiasco::PARENT_CAP);
|
||||
}
|
||||
|
||||
return reinterpret_cap_cast<Parent>(Native_capability(i));
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* _LIB__STARTUP___MAIN_PARENT_CAP_H_ */
|
Reference in New Issue
Block a user