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