RegisterObservers.hpp
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 #pragma once
5 
6 #include <utility>
7 
9 #include "IO/Observer/ObservationId.hpp"
10 #include "IO/Observer/TypeOfObservation.hpp"
11 #include "Time/Tags.hpp"
12 
13 namespace observers {
14 /// Passed to `RegisterWithObservers` action to register observer event.
15 template <typename ObsType>
17  template <typename ParallelComponent, typename DbTagsList,
18  typename ArrayIndex>
20  register_info(const db::DataBox<DbTagsList>& box,
21  const ArrayIndex& /*array_index*/) noexcept {
24  static_cast<double>(db::get<::Tags::Time>(box).value()),
25  ObsType{}}};
26  }
27 };
28 } // namespace observers
Definition: Actions.hpp:21
The sender will perform both reduction and volume observations.
Defines classes and functions used for manipulating DataBox&#39;s.
Definition: InterpolationTargetWedgeSectionTorus.hpp:24
Passed to RegisterWithObservers action to register observer event.
Definition: RegisterObservers.hpp:16
A type-erased identifier that combines the identifier&#39;s type and hash used to uniquely identify an ob...
Definition: ObservationId.hpp:42
Defines tags related to Time quantities.