SpECTRE Documentation Coverage Report
Current view: top level - Evolution/DgSubcell - GetActiveTag.hpp Hit Total Coverage
Commit: 1f2210958b4f38fdc0400907ee7c6d5af5111418 Lines: 2 3 66.7 %
Date: 2025-12-05 05:03:31
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 <type_traits>
       7             : 
       8             : #include "DataStructures/DataBox/DataBox.hpp"
       9             : #include "Evolution/DgSubcell/ActiveGrid.hpp"
      10             : #include "Evolution/DgSubcell/Tags/ActiveGrid.hpp"
      11             : 
      12             : namespace evolution::dg::subcell {
      13             : /// \brief Retrieve a tag from the active grid.
      14             : template <typename DgTag, typename SubcellTag, typename DbTagsList>
      15           1 : const typename DgTag::type& get_active_tag(const db::DataBox<DbTagsList>& box) {
      16             :   static_assert(
      17             :       std::is_same_v<typename DgTag::type, typename SubcellTag::type>);
      18             :   if (db::get<Tags::ActiveGrid>(box) == ActiveGrid::Subcell) {
      19             :     return db::get<SubcellTag>(box);
      20             :   }
      21             :   return db::get<DgTag>(box);
      22             : }
      23             : 
      24             : /// \brief Retrieve a tag from the inactive grid.
      25             : template <typename DgTag, typename SubcellTag, typename DbTagsList>
      26           1 : const typename DgTag::type& get_inactive_tag(
      27             :     const db::DataBox<DbTagsList>& box) {
      28             :   static_assert(
      29             :       std::is_same_v<typename DgTag::type, typename SubcellTag::type>);
      30             :   if (db::get<Tags::ActiveGrid>(box) == ActiveGrid::Subcell) {
      31             :     return db::get<DgTag>(box);
      32             :   }
      33             :   return db::get<SubcellTag>(box);
      34             : }
      35             : }  // namespace evolution::dg::subcell

Generated by: LCOV version 1.14