Shamrock
2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shamrock
include
shamrock
scheduler
InterfacesUtility.hpp
Go to the documentation of this file.
1
// -------------------------------------------------------//
2
//
3
// SHAMROCK code for hydrodynamics
4
// Copyright (c) 2021-2026 Timothée David--Cléris <tim.shamrock@proton.me>
5
// SPDX-License-Identifier: CeCILL Free Software License Agreement v2.1
6
// Shamrock is licensed under the CeCILL 2.1 License, see LICENSE for more information
7
//
8
// -------------------------------------------------------//
9
10
#pragma once
11
18
#include "
shamalgs/memory.hpp
"
19
#include "
shamrock/patch/PatchDataLayer.hpp
"
20
#include "
shamrock/scheduler/PatchScheduler.hpp
"
21
#include "
shamrock/scheduler/SerialPatchTree.hpp
"
22
#include <vector>
23
24
namespace
shamrock
{
25
26
template
<
class
T>
27
class
MergedPatchDataField
{
28
public
:
29
std::optional<shammath::CoordRange<T>> bounds;
30
u32
original_elements;
31
u32
total_elements;
32
PatchDataField<T>
field;
33
34
bool
has_bound_info() {
return
bounds.has_value(); }
35
};
36
37
class
MergedPatchData
{
38
public
:
39
u32
original_elements;
40
u32
total_elements;
41
patch::PatchDataLayer
pdat;
42
patch::PatchDataLayerLayout
&pdl;
43
};
44
45
class
InterfacesUtility
{
46
PatchScheduler
&sched;
47
48
public
:
49
InterfacesUtility
(
PatchScheduler
&sched) : sched(sched) {}
50
};
51
}
// namespace shamrock
PatchDataLayer.hpp
PatchScheduler.hpp
MPI scheduler.
SerialPatchTree.hpp
u32
std::uint32_t u32
32 bit unsigned integer
Definition
aliases_int.hpp:27
PatchDataField
Definition
PatchDataField.hpp:43
PatchScheduler
The MPI scheduler.
Definition
PatchScheduler.hpp:85
shamrock::InterfacesUtility
Definition
InterfacesUtility.hpp:45
shamrock::MergedPatchDataField
Definition
InterfacesUtility.hpp:27
shamrock::MergedPatchData
Definition
InterfacesUtility.hpp:37
shamrock::patch::PatchDataLayerLayout
Definition
PatchDataLayerLayout.hpp:66
shamrock::patch::PatchDataLayer
PatchDataLayer container class, the layout is described in patchdata_layout.
Definition
PatchDataLayer.hpp:35
shamrock
namespace for the main framework
Definition
__init__.py:1
memory.hpp
main include file for memory algorithms
Generated on Wed May 13 2026 13:21:49 for Shamrock by
1.9.8