ImpactX
None.H
Go to the documentation of this file.
1 /* Copyright 2022-2023 The Regents of the University of California, through Lawrence
2  * Berkeley National Laboratory (subject to receipt of any required
3  * approvals from the U.S. Dept. of Energy). All rights reserved.
4  *
5  * This file is part of ImpactX.
6  *
7  * Authors: Axel Huebl
8  * License: BSD-3-Clause-LBNL
9  */
10 #ifndef IMPACTX_NONE_H
11 #define IMPACTX_NONE_H
12 
14 #include "mixin/thin.H"
15 
16 #include <AMReX_Extension.H>
17 #include <AMReX_REAL.H>
18 
19 
20 namespace impactx
21 {
22  struct None
23  : public elements::Thin
24  {
25  static constexpr auto name = "None";
27 
30  None ()
31  {
32  }
33 
36  ImpactXParticleContainer & /* pc */,
37  int /* step */
38  ) {
39  // nothing to do
40  }
41 
45  RefPart & AMREX_RESTRICT /* ref_part */
46  ) {
47  // nothing to do
48  }
49 
60  [[maybe_unused]] PType& AMREX_RESTRICT p,
61  [[maybe_unused]] amrex::ParticleReal & AMREX_RESTRICT px,
62  [[maybe_unused]] amrex::ParticleReal & AMREX_RESTRICT py,
63  [[maybe_unused]] amrex::ParticleReal & AMREX_RESTRICT pt,
64  [[maybe_unused]] RefPart const & refpart) const
65  {
66  // nothing to do
67  }
68 
70  using Thin::operator();
71  };
72 
73 } // namespace impactx
74 
75 #endif // IMPACTX_NONE_H
Definition: ImpactXParticleContainer.H:95
Definition: ImpactX.cpp:31
Definition: None.H:22
Definition: thin.H:23
#define AMREX_FORCE_INLINE
None()
Definition: None.H:30
#define AMREX_GPU_HOST_DEVICE
Definition: ReferenceParticle.H:29
void operator()(ImpactXParticleContainer &, int)
Definition: None.H:35
Definition: ImpactXParticleContainer.H:126
static constexpr auto name
Definition: None.H:25