SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Systems/Cce - ReceiveTags.hpp Hit Total Coverage
Commit: f81419eb45f381cdf5c6c7751685b35483e19db9 Lines: 2 6 33.3 %
Date: 2025-04-20 16:13:24
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 <iomanip>
       7             : #include <sstream>
       8             : #include <string>
       9             : 
      10             : #include "DataStructures/Variables.hpp"
      11             : #include "Parallel/InboxInserters.hpp"
      12             : #include "Time/TimeStepId.hpp"
      13             : 
      14             : namespace Cce {
      15             : /// \brief Tags used by CCE for communication.
      16           1 : namespace ReceiveTags {
      17             : 
      18             : /// A receive tag for the data sent to the CCE evolution component from the CCE
      19             : /// boundary component
      20             : template <typename CommunicationTagList>
      21           1 : struct BoundaryData
      22             :     : Parallel::InboxInserters::Value<BoundaryData<CommunicationTagList>> {
      23           0 :   using temporal_id = TimeStepId;
      24           0 :   using type = std::unordered_map<temporal_id, Variables<CommunicationTagList>>;
      25             : 
      26           0 :   static std::string output_inbox(const type& inbox,
      27             :                                   const size_t padding_size) {
      28             :     std::stringstream ss{};
      29             :     const std::string pad(padding_size, ' ');
      30             : 
      31             :     ss << std::scientific << std::setprecision(16);
      32             :     ss << pad << "CceBoundaryDataInbox:\n";
      33             :     // We don't really care about the variables, just the times
      34             :     for (const auto& [current_time_step_id, variables] : inbox) {
      35             :       (void)variables;
      36             :       ss << pad << " Time: " << current_time_step_id << "\n";
      37             :     }
      38             : 
      39             :     return ss.str();
      40             :   }
      41             : };
      42             : 
      43             : }  // namespace ReceiveTags
      44             : }  // namespace Cce

Generated by: LCOV version 1.14