Tags.hpp
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 #pragma once
5 
6 #include "Options/Options.hpp"
7 
8 namespace OptionTags {
9 /*!
10  * \ingroup OptionGroupsGroup
11  * \brief Holds the `OptionTags::Limiter` option in the input file
12  */
13 struct LimiterGroup {
14  static std::string name() noexcept { return "Limiter"; }
15  static constexpr OptionString help = "Options for limiting troubled cells";
16 };
17 
18 /*!
19  * \ingroup OptionTagsGroup
20  * \brief The global cache tag that retrieves the parameters for the limiter
21  * from the input file
22  */
23 template <typename LimiterType>
24 struct Limiter {
25  static std::string name() noexcept { return option_name<LimiterType>(); }
26  static constexpr OptionString help = "Options for the limiter";
27  using type = LimiterType;
28  using group = LimiterGroup;
29 };
30 } // namespace OptionTags
Defines classes and functions for making classes creatable from input files.
const char *const OptionString
The string used in option structs.
Definition: Options.hpp:29
Holds the OptionTags::Limiter option in the input file.
Definition: Tags.hpp:13
Definition: Strahlkorper.hpp:167
The global cache tag that retrieves the parameters for the limiter from the input file...
Definition: Tags.hpp:24