Tags.hpp
Go to the documentation of this file.
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 /// \file
5 /// Defines tags related to Events and Triggers
6 
7 #pragma once
8 
9 #include "Evolution/EventsAndTriggers/EventsAndTriggers.hpp"
10 #include "Options/Options.hpp"
11 
12 namespace OptionTags {
13 /// \cond
14 struct EventsAndTriggersTagBase {};
15 /// \endcond
16 
17 /// \ingroup OptionTagsGroup
18 /// \ingroup EventsAndTriggersGroup
19 /// Contains the events and triggers
20 ///
21 /// In yaml this is specified as a map of triggers to lists of events:
22 /// \code{.yaml}
23 /// EventsAndTriggers:
24 /// ? TriggerA:
25 /// OptionsForTriggerA
26 /// : - Event1:
27 /// OptionsForEvent1
28 /// - Event2:
29 /// OptionsForEvent2
30 /// ? TriggerB:
31 /// OptionsForTriggerB
32 /// : - Event3:
33 /// OptionsForEvent3
34 /// - Event4:
35 /// OptionsForEvent4
36 /// \endcode
37 template <typename EventRegistrars, typename TriggerRegistrars>
38 struct EventsAndTriggers : EventsAndTriggersTagBase {
40  static constexpr OptionString help = "Events to run at triggers";
41 };
42 } // 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
Definition: Strahlkorper.hpp:167
Contains the events and triggers.
Definition: Tags.hpp:38