Loading...
Searching...
No Matches
ipc_client
Go to the documentation of this file.
// vi:set ft=cpp: -*- Mode: C++ -*-
/*
* (c) 2014 Alexander Warg <alexander.warg@kernkonzept.com>
*
* License: see LICENSE.spdx (in this directory or the directories above)
*/
#pragma once
#pragma GCC system_header
#include <l4/sys/cxx/ipc_basics>
#include <l4/sys/cxx/ipc_types>
#include <l4/sys/cxx/ipc_iface>
#include <l4/sys/__typeinfo.h>
#include <l4/sys/err.h>
namespace L4 { namespace Ipc { namespace Msg {
//-------------------------------------------------------------------------
#define L4_RPC_DEF(name) \
template struct L4::Ipc::Msg::Rpc_call \
<name##_t, name##_t::class_type, name##_t::ipc_type, name##_t::flags_type>
//----------------------------------------------------
//Implementation of the RPC call
template<typename OP, typename C, typename FLAGS, typename R, typename ...ARGS>
R L4_EXPORT
Rpc_call<OP, C, R (ARGS...), FLAGS>::
call(L4::Cap<C> cap, typename _Elem<ARGS>::arg_type ...a, l4_utcb_t *utcb) noexcept
{
return Rpc_inline_call<OP, C, R (ARGS...), FLAGS>::call(cap, a..., utcb);
}
} // namespace Msg
} // namespace Ipc
} // namespace L4
__typeinfo.h
Type information handling.
L4::Cap
C++ interface for capabilities.
Definition capability.h:224
err.h
Error codes.
l4_utcb_t
struct l4_utcb_t l4_utcb_t
Opaque type for the UTCB.
Definition utcb.h:56
L4_EXPORT
#define L4_EXPORT
Attribute to mark functions, variables, and data types as being exported from a library.
Definition compiler.h:214
ipc_iface
Interface Definition Language.
ipc_types
L4::Ipc::Msg
IPC Message related functionality.
Definition ipc_array:154
L4::Ipc
IPC related functionality.
Definition ipc_array:13
L4
L4 low-level kernel interface.
Definition l4sys-l4f-groups.dox:50