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