Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
realm.h
Go to the documentation of this file.
1/*
2 * Copyright 2025 Stanford University, NVIDIA Corporation
3 * SPDX-License-Identifier: Apache-2.0
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18// meta-header for Realm - includes all the individual pieces
19
20// decide whether we want C and/or C++ bindings (default matches host language)
21//
22// each set of bindings has its own include-once ifdef armor, allowing the
23// second set of bindings to be loaded even if the first already has been
24#if !defined(REALM_ENABLE_C_BINDINGS) && !defined(REALM_DISABLE_C_BINDINGS)
25#ifndef __cplusplus
26#define REALM_ENABLE_C_BINDINGS
27#endif
28#endif
29#if !defined(REALM_ENABLE_CXX_BINDINGS) && !defined(REALM_DISABLE_CXX_BINDINGS)
30#ifdef __cplusplus
31#define REALM_ENABLE_CXX_BINDINGS
32#endif
33#endif
34
35#ifdef REALM_ENABLE_C_BINDINGS
36#include "realm/realm_c.h"
37#endif
38
39#ifdef REALM_ENABLE_CXX_BINDINGS
40#ifndef REALM_H
41#define REALM_H
42
43#include "realm/realm_config.h"
44
45#include "realm/profiling.h"
46#include "realm/redop.h"
47#include "realm/event.h"
48#include "realm/reservation.h"
49#include "realm/processor.h"
50#include "realm/memory.h"
51#include "realm/instance.h"
52#include "realm/machine.h"
53#include "realm/runtime.h"
54#include "realm/indexspace.h"
55#include "realm/codedesc.h"
56#include "realm/subgraph.h"
57#include "realm/module_config.h"
58
59#ifdef REALM_USE_HDF5
61#endif
62
63#endif // ifndef REALM_H
64#endif // ifdef REALM_ENABLE_CXX_BINDINGS