SpECTRE Documentation Coverage Report
Current view: top level - PointwiseFunctions/MathFunctions - Factory.hpp Hit Total Coverage
Commit: 664546099c4dbf27a1b708fac45e39c82dd743d2 Lines: 1 3 33.3 %
Date: 2024-04-19 16:28:01
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 <cstddef>
       7             : 
       8             : #include "PointwiseFunctions/MathFunctions/Gaussian.hpp"
       9             : #include "PointwiseFunctions/MathFunctions/PowX.hpp"
      10             : #include "PointwiseFunctions/MathFunctions/Sinusoid.hpp"
      11             : #include "Utilities/TMPL.hpp"
      12             : 
      13           1 : namespace MathFunctions {
      14             : namespace Factory_detail {
      15             : template <size_t VolumeDim, typename Fr>
      16             : struct all_math_functions {
      17             :   using type = tmpl::list<MathFunctions::Gaussian<VolumeDim, Fr>>;
      18             : };
      19             : 
      20             : template <typename Fr>
      21             : struct all_math_functions<1, Fr> {
      22             :   using type =
      23             :       tmpl::list<MathFunctions::Gaussian<1, Fr>, MathFunctions::PowX<1, Fr>,
      24             :                  MathFunctions::Sinusoid<1, Fr>>;
      25             : };
      26             : }  // namespace Factory_detail
      27             : 
      28             : template <size_t VolumeDim, typename Fr>
      29           0 : using all_math_functions =
      30             :     typename Factory_detail::all_math_functions<VolumeDim, Fr>::type;
      31             : }  // namespace MathFunctions

Generated by: LCOV version 1.14