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