SpECTRE Documentation Coverage Report
Current view: top level - Parallel/Algorithms - AlgorithmArrayDeclarations.hpp Hit Total Coverage
Commit: 2db722c93a8e9b106e406b439b79c8e05c2057fb Lines: 1 7 14.3 %
Date: 2021-03-03 22:01:00
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 "Parallel/ArrayIndex.hpp"
       7             : 
       8             : #include "Parallel/Algorithms/AlgorithmArray.decl.h"
       9             : 
      10             : namespace Parallel {
      11           0 : namespace Algorithms {
      12             : 
      13             : /*!
      14             :  * \ingroup ParallelGroup
      15             :  * \brief A struct that stores the charm++ types relevant for a particular array
      16             :  * component
      17             :  *
      18             :  * \details The type traits are:
      19             :  * - `cproxy`: the charm++ proxy.
      20             :  *   See https://charm.readthedocs.io/en/latest/faq/manual.html#what-is-a-proxy
      21             :  * - `cbase`: the charm++ base class. See
      22             :  *   https://charm.readthedocs.io/en/latest/charm++/manual.html#chare-objects
      23             :  * - `algorithm_type`: the chare type (`AlgorithmArray`) for the array
      24             :  *   component.
      25             :  * - `ckindex`: A charm++ chare index object. Useful for obtaining entry
      26             :  *   method indices that are needed for creating callbacks. See
      27             :  *   https://charm.readthedocs.io/en/latest/charm++/manual.html#creating-a-ckcallback-object
      28             :  */
      29           1 : struct Array {
      30             :   template <typename ParallelComponent,
      31             :             typename SpectreArrayIndex>
      32           0 :   using cproxy = CProxy_AlgorithmArray<ParallelComponent,
      33             :                                        SpectreArrayIndex>;
      34             : 
      35             :   template <typename ParallelComponent,
      36             :             typename SpectreArrayIndex>
      37           0 :   using cbase = CBase_AlgorithmArray<ParallelComponent,
      38             :                                      SpectreArrayIndex>;
      39             : 
      40             :   template <typename ParallelComponent,
      41             :             typename SpectreArrayIndex>
      42           0 :   using algorithm_type = AlgorithmArray<ParallelComponent,
      43             :                                         SpectreArrayIndex>;
      44             : 
      45             :   template <typename ParallelComponent,
      46             :             typename SpectreArrayIndex>
      47           0 :   using ckindex = CkIndex_AlgorithmArray<ParallelComponent,
      48             :                                          SpectreArrayIndex>;
      49             : };
      50             : }  // namespace Algorithms
      51             : }  // namespace Parallel

Generated by: LCOV version 1.14