deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+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
evaluation_flags.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2020 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15
16#ifndef dealii_matrix_free_evaluation_flags_h
17#define dealii_matrix_free_evaluation_flags_h
18
19#include <deal.II/base/config.h>
20
21
23
24
25
33{
42 {
50 values = 0x1,
54 gradients = 0x2,
58 hessians = 0x4
59 };
60
61
73 {
74 return static_cast<EvaluationFlags>(static_cast<unsigned int>(f1) |
75 static_cast<unsigned int>(f2));
76 }
77
78
79
88 {
89 f1 = f1 | f2;
90 return f1;
91 }
92
93
105 {
106 return static_cast<EvaluationFlags>(static_cast<unsigned int>(f1) &
107 static_cast<unsigned int>(f2));
108 }
109
110
119 {
120 f1 = f1 & f2;
121 return f1;
122 }
123
124} // namespace EvaluationFlags
125
126
128
129#endif
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:498
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:499
The namespace for the EvaluationFlags enum.
EvaluationFlags operator|(const EvaluationFlags f1, const EvaluationFlags f2)
EvaluationFlags & operator|=(EvaluationFlags &f1, const EvaluationFlags f2)
EvaluationFlags operator&(const EvaluationFlags f1, const EvaluationFlags f2)
EvaluationFlags & operator&=(EvaluationFlags &f1, const EvaluationFlags f2)
#define DEAL_II_HOST_DEVICE
Definition numbers.h:30