deal.II version GIT relicensing-6834-g5b78e6bcdf 2026-10-01 11:20:01+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
grid_tools_cache_update_flags.h
Go to the documentation of this file.
1// -----------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception OR LGPL-2.1-or-later
4// Copyright (C) 2017 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Detailed license information governing the source code and contributions
9// can be found in LICENSE.md and CONTRIBUTING.md at the top level directory.
10//
11// -----------------------------------------------------------------------------
12
13#ifndef dealii_grid_tria_info_cache_update_flags_h
14#define dealii_grid_tria_info_cache_update_flags_h
15
16
17#include <deal.II/base/config.h>
18
20
21namespace GridTools
22{
95
96
102 template <typename StreamType>
103 inline StreamType &
104 operator<<(StreamType &s, const CacheUpdateFlags u)
105 {
106 s << " CacheUpdateFlags";
108 s << "|vertex_to_cell_map";
110 s << "|vertex_to_cells_centers_directions";
111 if (u & update_covering_rtree)
112 s << "|covering_rtree";
113 return s;
114 }
115
116
126 inline CacheUpdateFlags
128 {
129 return static_cast<CacheUpdateFlags>(static_cast<unsigned int>(f1) |
130 static_cast<unsigned int>(f2));
131 }
132
142 inline CacheUpdateFlags
144 {
145 return static_cast<CacheUpdateFlags>(static_cast<unsigned int>(f1) ^
146 static_cast<unsigned int>(update_all));
147 }
148
149
150
157 inline CacheUpdateFlags &
159 {
160 f1 = f1 | f2;
161 return f1;
162 }
163
164
174 inline CacheUpdateFlags
176 {
177 return static_cast<CacheUpdateFlags>(static_cast<unsigned int>(f1) &
178 static_cast<unsigned int>(f2));
179 }
180
181
188 inline CacheUpdateFlags &
190 {
191 f1 = f1 & f2;
192 return f1;
193 }
194
195} // namespace GridTools
197
198#endif
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39
CacheUpdateFlags & operator|=(CacheUpdateFlags &f1, const CacheUpdateFlags f2)
CacheUpdateFlags operator|(const CacheUpdateFlags f1, const CacheUpdateFlags f2)
CacheUpdateFlags operator&(const CacheUpdateFlags f1, const CacheUpdateFlags f2)
CacheUpdateFlags operator~(const CacheUpdateFlags f1)
StreamType & operator<<(StreamType &s, const CacheUpdateFlags u)
CacheUpdateFlags & operator&=(CacheUpdateFlags &f1, const CacheUpdateFlags f2)