Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Tpetra_Details_makeColMap_decl.hpp
Go to the documentation of this file.
1 #ifndef TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
2 #define TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
3 
4 // @HEADER
5 // *****************************************************************************
6 // Tpetra: Templated Linear Algebra Services Package
7 //
8 // Copyright 2008 NTESS and the Tpetra contributors.
9 // SPDX-License-Identifier: BSD-3-Clause
10 // *****************************************************************************
11 // @HEADER
12 
23 
24 #include "TpetraCore_config.h"
25 #include "Tpetra_Map_fwd.hpp"
26 #include "Tpetra_RowGraph_fwd.hpp"
27 #include "Kokkos_Core.hpp"
28 #include <ostream>
29 
30 #ifndef DOXYGEN_SHOULD_SKIP_THIS
31 namespace Teuchos {
32 // forward declaration of Array
33 template <class T>
34 class Array;
35 
36 // forward declaration of RCP
37 template <class T>
38 class RCP;
39 } // namespace Teuchos
40 #endif // DOXYGEN_SHOULD_SKIP_THIS
41 
42 namespace Tpetra {
43 
44 namespace Details {
45 
97 template <class LO, class GO, class NT>
98 int makeColMap(Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& colMap,
99  Teuchos::Array<int>& remotePIDs,
100  const Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& domMap,
101  const RowGraph<LO, GO, NT>& graph,
102  const bool sortEachProcsGids = true,
103  std::ostream* errStrm = NULL);
104 
108 template <class LO, class GO, class NT>
109 int makeColMap(Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& colMap,
110  const Teuchos::RCP<const Tpetra::Map<LO, GO, NT>>& domMap,
111  Kokkos::View<GO*, typename NT::memory_space> gids,
112  std::ostream* errStrm = NULL);
113 
114 } // namespace Details
115 } // namespace Tpetra
116 
117 #endif // TPETRA_DETAILS_MAKECOLMAP_DECL_HPP
int makeColMap(Teuchos::RCP< const Tpetra::Map< LO, GO, NT >> &colMap, Teuchos::Array< int > &remotePIDs, const Teuchos::RCP< const Tpetra::Map< LO, GO, NT >> &domMap, const RowGraph< LO, GO, NT > &graph, const bool sortEachProcsGids=true, std::ostream *errStrm=NULL)
Make the graph&#39;s column Map.
Forward declaration of Tpetra::RowGraph.
A parallel distribution of indices over processes.
Forward declaration of Tpetra::Map.