Xyst test code coverage report
Current view: top level - Inciter - sorter.ci Coverage Total Hit
Commit: 1fb74642dd9d7732b67f32dec2f2762e238d3fa7 Lines: 100.0 % 1 1
Test Date: 2025-08-13 22:18:46 Functions: - 0 0
Legend: Lines:     hit not hit

            Line data    Source code
       1              : // *****************************************************************************
       2              : /*!
       3              :   \file      src/Inciter/sorter.ci
       4              :   \copyright 2012-2015 J. Bakosi,
       5              :              2016-2018 Los Alamos National Security, LLC.,
       6              :              2019-2021 Triad National Security, LLC.,
       7              :              2022-2025 J. Bakosi
       8              :              All rights reserved. See the LICENSE file for details.
       9              :   \brief     Charm++ module interface file for mesh sorter
      10              :   \details   Charm++ module interface file for mesh sorter.
      11              :   \see       Sorter.h and Sorter.C for more info.
      12              : */
      13              : // *****************************************************************************
      14              : 
      15              : module sorter {
      16              : 
      17              :   include "Callback.hpp";
      18              : 
      19              :   extern module riecg;
      20              :   extern module laxcg;
      21              :   extern module zalcg;
      22              :   extern module kozcg;
      23              :   extern module chocg;
      24              :   extern module lohcg;
      25              :   extern module meshwriter;
      26              :   extern module conjugategradients;
      27              : 
      28              :   namespace inciter {
      29              : 
      30              :     array [1D] Sorter {
      31              :       entry Sorter( std::size_t meshid,
      32              :                     const CProxy_Transporter& transporter,
      33              :                     const tk::CProxy_MeshWriter& meshwriter,
      34              :                     const tk::SorterCallback& cbs,
      35              :                     const std::vector< CProxy_Discretization >& discretization,
      36              :                     const CProxy_RieCG& riecg,
      37              :                     const CProxy_LaxCG& laxcg,
      38              :                     const CProxy_ZalCG& zalcg,
      39              :                     const CProxy_KozCG& kozcg,
      40              :                     const CProxy_ChoCG& chocg,
      41              :                     const CProxy_LohCG& lohcg,
      42              :                     const tk::CProxy_ConjugateGradients& cgpre,
      43              :                     const tk::CProxy_ConjugateGradients& cgmom,
      44              :                     CkCallback reorderRefiner,
      45              :                     const std::vector< std::size_t >& ginpoel,
      46              :                     const tk::UnsMesh::CoordMap& coordmap,
      47              :                     const tk::UnsMesh::Chunk& el,
      48              :                     const std::map< int, std::vector< std::size_t > >& bface,
      49              :                     const std::vector< std::size_t >& triinpoel,
      50              :                     const std::map< int, std::vector< std::size_t > >& bnode,
      51           20 :                     int nchare );
      52              :       entry void setup( std::size_t npoin );
      53              :       entry void query( int fromch,
      54              :                         const std::unordered_set< std::size_t >& bnd );
      55              :       entry void recvquery();
      56              :       entry void response();
      57              :       entry void bnd( int fromch,
      58              :                       const std::map< int, std::unordered_set< std::size_t > >&
      59              :                         nodeCommMap );
      60              :       entry void recvbnd();
      61              :       entry void start();
      62              :       entry void offset( int c, std::size_t u );
      63              :       entry void request( int c, const std::unordered_set< std::size_t >& nd );
      64              :       entry void neworder( const std::unordered_map< std::size_t,
      65              :                        std::tuple< std::size_t, tk::UnsMesh::Coord > >& nodes );
      66              :       entry void createWorkers();
      67              : 
      68              :       // SDAG code follows. See http://charm.cs.illinois.edu/manuals/html/
      69              :       // charm++/manual.html, Sec. "Structured Control Flow: Structured Dagger".
      70              : 
      71              :       entry void wait4prep() {
      72              :         when reorderowned_complete(), nodes_requested_complete()
      73              :         serial "prepare" { prepare(); }
      74              :       };
      75              : 
      76              :       entry void reorderowned_complete();
      77              :       entry void nodes_requested_complete();
      78              :     };
      79              : 
      80              :   } // inciter::
      81              : 
      82              : }
        

Generated by: LCOV version 2.0-1