deal.II version GIT relicensing-6839-g338455934c 2026-10-02 12:10: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
assemble_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 - 2026 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_mesh_worker_assemble_flags_h
14#define dealii_mesh_worker_assemble_flags_h
15
16
17#include <deal.II/base/config.h>
18
19#include <vector>
20
21
23
29namespace MeshWorker
30{
110
111
117 template <typename StreamType>
118 inline StreamType &
119 operator<<(StreamType &s, AssembleFlags u)
120 {
121 s << " AssembleFlags";
122 if (u & assemble_own_cells)
123 s << "|own_cells";
125 s << "|own_faces_once";
127 s << "|own_faces_both";
128 if (u & assemble_ghost_cells)
129 s << "|ghost_cells";
131 s << "|ghost_faces_once";
133 s << "|ghost_faces_both";
135 s << "|boundary_faces";
136 return s;
137 }
138
139
149 inline AssembleFlags
151 {
152 return static_cast<AssembleFlags>(static_cast<unsigned int>(f1) |
153 static_cast<unsigned int>(f2));
154 }
155
156
157
164 inline AssembleFlags &
166 {
167 f1 = f1 | f2;
168 return f1;
169 }
170
171
181 inline AssembleFlags
183 {
184 return static_cast<AssembleFlags>(static_cast<unsigned int>(f1) &
185 static_cast<unsigned int>(f2));
186 }
187
188
195 inline AssembleFlags &
197 {
198 f1 = f1 & f2;
199 return f1;
200 }
201} // namespace MeshWorker
202
206
207#endif
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39
AssembleFlags & operator|=(AssembleFlags &f1, AssembleFlags f2)
AssembleFlags operator&(AssembleFlags f1, AssembleFlags f2)
StreamType & operator<<(StreamType &s, AssembleFlags u)
@ assemble_boundary_faces
@ assemble_own_interior_faces_once
@ assemble_ghost_faces_both
@ assemble_own_interior_faces_both
@ assemble_ghost_faces_once
AssembleFlags operator|(AssembleFlags f1, AssembleFlags f2)
AssembleFlags & operator&=(AssembleFlags &f1, AssembleFlags f2)