L4Re – L4 Runtime Environment
Go to the documentation of this file.
1 // vi:set ft=cpp: -*- Mode: C++ -*-
6 /*
7  * (c) 2017 Alexander Warg <alexander.warg@kernkonzept.com>
8  *
9  * This file is part of TUD:OS and distributed under the terms of the
10  * GNU General Public License 2.
11  * Please see the COPYING-GPL-2 file for details.
12  *
13  * As a special exception, you may use this file as part of a free software
14  * library without restriction. Specifically, if other files instantiate
15  * templates or use macros or inline functions from this file, or you compile
16  * this file and link it with other files to produce an executable, this
17  * file does not by itself cause the resulting executable to be covered by
18  * the GNU General Public License. This exception does not however
19  * invalidate any other reasons why the executable file might be covered by
20  * the GNU General Public License.
21  */
22 #pragma once
24 #include <l4/sys/rcv_endpoint.h>
25 #include <l4/sys/types.h>
26 #include <l4/sys/capability>
27 #include <l4/sys/cxx/ipc_iface>
29 namespace L4 {
31 class Thread;
40 class L4_EXPORT Rcv_endpoint :
41  public Kobject_t<Rcv_endpoint, Kobject, L4_PROTO_KOBJECT,
42  Type_info::Demand_t<1> >
43 {
44 public:
60  l4_msgtag_t, bind_thread, (Ipc::Opt<Ipc::Cap<Thread> > t, l4_umword_t label));
63 };
65 }
L4::Cap related definitions.
Capability type for RPC interfaces (see L4::Cap<T>).
Definition: ipc_types:542
Helper class to create an L4Re interface class that is derived from a single base class.
Definition: __typeinfo.h:760
Interface for kernel objects that allow to receive IPC from them.
Definition: rcv_endpoint:43
unsigned long l4_umword_t
Unsigned machine word.
Definition: l4int.h:52
Interface Definition Language.
#define L4_INLINE_RPC_OP(op, res, name, args, attr...)
Define an inline RPC call with specific opcode (type and callable).
Definition: ipc_iface:484
Common L4 ABI Data Types.
L4 low-level kernel interface.
Receive endpoint C interface.
Bind operation.
Definition: rcv_endpoint.h:58
Attribute for defining an optional RPC argument.
Definition: ipc_types:148
List of RPCs typically used for kernel interfaces.
Definition: __typeinfo.h:475
Message tag data structure.
Definition: types.h:160