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 "ConstF.H"
14 #include "DipEdge.H"
15 #include "Drift.H"
16 #include "Multipole.H"
17 #include "None.H"
18 #include "NonlinearLens.H"
19 #include "Programmable.H"
20 #include "Quad.H"
21 #include "RFCavity.H"
22 #include "Sbend.H"
23 #include "ShortRF.H"
24 #include "Sol.H"
25 
26 #include <variant>
27 
28 
29 namespace impactx
30 {
31  using KnownElements = std::variant<
32  None, /* must be first, so KnownElements creates a default constructor */
33  ConstF, DipEdge, Drift, Multipole, NonlinearLens,
34  Programmable,
36 
37 } // namespace impactx
38 
39 #endif // IMPACTX_ELEMENTS_ALL_H
Definition: Quad.H:25
Definition: ImpactX.cpp:31
Definition: ShortRF.H:25
std::variant< None, ConstF, DipEdge, Drift, Multipole, NonlinearLens, Programmable, Quad, RFCavity, Sbend, ShortRF, Sol > KnownElements
Definition: All.H:35
Definition: Sbend.H:25
Definition: RFCavity.H:32
Definition: Sol.H:25