ImpactX
All.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_ELEMENTS_ALL_H
11 #define IMPACTX_ELEMENTS_ALL_H
12 
13 #include "CFbend.H"
14 #include "ChrDrift.H"
15 #include "ChrQuad.H"
16 #include "ChrUniformAcc.H"
17 #include "ConstF.H"
18 #include "DipEdge.H"
19 #include "Drift.H"
20 #include "ExactDrift.H"
21 #include "ExactSbend.H"
22 #include "Multipole.H"
23 #include "None.H"
24 #include "NonlinearLens.H"
25 #include "Programmable.H"
26 #include "Quad.H"
27 #include "RFCavity.H"
28 #include "Sbend.H"
29 #include "ShortRF.H"
30 #include "Sol.H"
31 #include "PRot.H"
32 #include "SoftSol.H"
33 #include "SoftQuad.H"
34 #include "diagnostics/openPMD.H"
35 
36 #include <variant>
37 
38 
39 namespace impactx
40 {
41  using KnownElements = std::variant<
42  None, /* must be first, so KnownElements creates a default constructor */
43  CFbend,
44  ChrAcc,
45  ChrDrift,
46  ChrQuad,
47  ConstF,
49  DipEdge,
50  Drift,
51  ExactDrift,
52  ExactSbend,
53  Multipole,
56  PRot,
57  Quad,
58  RFCavity,
59  Sbend,
60  ShortRF,
63  Sol
64  >;
65 
66 } // namespace impactx
67 
68 #endif // IMPACTX_ELEMENTS_ALL_H
Definition: ImpactX.cpp:32
std::variant< None, CFbend, ChrAcc, ChrDrift, ChrQuad, ConstF, diagnostics::BeamMonitor, DipEdge, Drift, ExactDrift, ExactSbend, Multipole, NonlinearLens, Programmable, PRot, Quad, RFCavity, Sbend, ShortRF, SoftSolenoid, SoftQuadrupole, Sol > KnownElements
Definition: All.H:64
Definition: CFbend.H:30
Definition: ChrUniformAcc.H:30
Definition: ChrDrift.H:30
Definition: ChrQuad.H:31
Definition: ConstF.H:30
Definition: DipEdge.H:30
Definition: Drift.H:30
Definition: ExactDrift.H:30
Definition: ExactSbend.H:31
Definition: Multipole.H:30
Definition: None.H:26
Definition: NonlinearLens.H:30
Definition: PRot.H:32
Definition: Programmable.H:25
Definition: Quad.H:30
Definition: RFCavity.H:106
Definition: Sbend.H:30
Definition: ShortRF.H:30
Definition: SoftQuad.H:115
Definition: SoftSol.H:120
Definition: Sol.H:30
Definition: openPMD.H:64