SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Systems/Cce/Initialize - RegisterInitializeJWithCharm.hpp Hit Total Coverage
Commit: 37c384043430860f87787999aa7399d01bb3d213 Lines: 1 2 50.0 %
Date: 2024-04-20 02:24:02
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 "Evolution/Systems/Cce/AnalyticSolutions/LinearizedBondiSachs.hpp"
       7             : #include "Evolution/Systems/Cce/Initialize/InitializeJ.hpp"
       8             : #include "Utilities/Serialization/RegisterDerivedClassesWithCharm.hpp"
       9             : 
      10             : /// \cond
      11             : namespace Cce {
      12             : namespace Solutions::LinearizedBondiSachs_detail::InitializeJ {
      13             : struct LinearizedBondiSachs;
      14             : }
      15             : /// \endcond
      16             : 
      17             : /// A function for registering all of the InitializeJ derived classes with
      18             : /// charm, including the ones not intended to be directly option-creatable
      19             : template <bool EvolveCcm, typename BoundaryComponent>
      20           1 : void register_initialize_j_with_charm() {
      21             :   PUPable_reg(SINGLE_ARG(Solutions::LinearizedBondiSachs_detail::InitializeJ::
      22             :                          LinearizedBondiSachs));
      23             : 
      24             :   if constexpr (tt::is_a_v<AnalyticWorldtubeBoundary, BoundaryComponent>) {
      25             :     register_derived_classes_with_charm<Cce::InitializeJ::InitializeJ<false>>();
      26             :   } else {
      27             :     register_derived_classes_with_charm<
      28             :         Cce::InitializeJ::InitializeJ<EvolveCcm>>();
      29             :   }
      30             : }
      31             : }  // namespace Cce

Generated by: LCOV version 1.14