SpECTRE Documentation Coverage Report
Current view: top level - PointwiseFunctions/InitialDataUtilities/Tags - InitialData.hpp Hit Total Coverage
Commit: 9a905b0737f373631c1b8e8389b8f26e67fa5313 Lines: 4 11 36.4 %
Date: 2024-03-28 09:03:18
Legend: Lines: hit not hit

          Line data    Source code
       1           0 : // Distributed under the MIT License.
       2             : // See LICENSE.txt for details.
       3             : 
       4             : #pragma once
       5             : 
       6             : #include <memory>
       7             : 
       8             : #include "DataStructures/DataBox/Tag.hpp"
       9             : #include "Options/String.hpp"
      10             : #include "PointwiseFunctions/InitialDataUtilities/InitialData.hpp"
      11             : #include "Utilities/Serialization/Serialize.hpp"
      12             : #include "Utilities/TMPL.hpp"
      13             : 
      14             : namespace evolution::initial_data {
      15             : /*!
      16             :  * \brief Option tags for initial data of evolution system.
      17             :  */
      18           1 : namespace OptionTags {
      19             : /*!
      20             :  * \ingroup OptionTagsGroup
      21             :  * \brief Class holding options for initial data of evolution system.
      22             :  */
      23           1 : struct InitialData {
      24           0 :   static constexpr Options::String help =
      25             :       "Options for initial data of evolution system";
      26           0 :   using type = std::unique_ptr<evolution::initial_data::InitialData>;
      27             : };
      28             : }  // namespace OptionTags
      29             : 
      30             : /*!
      31             :  * \brief Tags for initial data of evolution system.
      32             :  */
      33           1 : namespace Tags {
      34             : /*!
      35             :  * \brief The global cache tag for the initial data type
      36             :  */
      37           1 : struct InitialData : db::SimpleTag {
      38           0 :   using type = std::unique_ptr<evolution::initial_data::InitialData>;
      39           0 :   using option_tags =
      40             :       tmpl::list<evolution::initial_data::OptionTags::InitialData>;
      41             : 
      42           0 :   static constexpr bool pass_metavariables = false;
      43           0 :   static type create_from_options(const type& value) {
      44             :     return deserialize<type>(serialize<type>(value).data());
      45             :   }
      46             : };
      47             : }  // namespace Tags
      48             : }  // namespace evolution::initial_data

Generated by: LCOV version 1.14