Xpetra
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
Xpetra_Export.hpp
Go to the documentation of this file.
1
// @HEADER
2
//
3
// ***********************************************************************
4
//
5
// Xpetra: A linear algebra interface package
6
// Copyright 2012 Sandia Corporation
7
//
8
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9
// the U.S. Government retains certain rights in this software.
10
//
11
// Redistribution and use in source and binary forms, with or without
12
// modification, are permitted provided that the following conditions are
13
// met:
14
//
15
// 1. Redistributions of source code must retain the above copyright
16
// notice, this list of conditions and the following disclaimer.
17
//
18
// 2. Redistributions in binary form must reproduce the above copyright
19
// notice, this list of conditions and the following disclaimer in the
20
// documentation and/or other materials provided with the distribution.
21
//
22
// 3. Neither the name of the Corporation nor the names of the
23
// contributors may be used to endorse or promote products derived from
24
// this software without specific prior written permission.
25
//
26
// THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
//
38
// Questions? Contact
39
// Jonathan Hu (jhu@sandia.gov)
40
// Andrey Prokopenko (aprokop@sandia.gov)
41
// Ray Tuminaro (rstumin@sandia.gov)
42
//
43
// ***********************************************************************
44
//
45
// @HEADER
46
#ifndef XPETRA_EXPORT_HPP
47
#define XPETRA_EXPORT_HPP
48
49
/* this file is automatically generated - do not edit (see script/interfaces.py) */
50
51
#include <Tpetra_KokkosCompat_DefaultNode.hpp>
52
#include <Teuchos_Describable.hpp>
53
#include <
Teuchos_as.hpp
>
54
#include "Xpetra_Map.hpp"
55
#include <iterator>
56
57
namespace
Xpetra
{
58
59
template
<
class
LocalOrdinal,
60
class
GlobalOrdinal,
61
class
Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
62
class
Export
63
:
public
Teuchos::Describable
64
{
65
public
:
66
typedef
LocalOrdinal
local_ordinal_type
;
67
typedef
GlobalOrdinal
global_ordinal_type
;
68
typedef
Node
node_type
;
69
71
72
74
virtual
~Export
() { }
75
77
79
80
82
virtual
size_t
getNumSameIDs
()
const
= 0;
83
85
virtual
size_t
getNumPermuteIDs
()
const
= 0;
86
88
virtual
ArrayView< const LocalOrdinal >
getPermuteFromLIDs
()
const
= 0;
89
91
virtual
ArrayView< const LocalOrdinal >
getPermuteToLIDs
()
const
= 0;
92
94
virtual
size_t
getNumRemoteIDs
()
const
= 0;
95
97
virtual
ArrayView< const LocalOrdinal >
getRemoteLIDs
()
const
= 0;
98
100
virtual
size_t
getNumExportIDs
()
const
= 0;
101
103
virtual
ArrayView< const LocalOrdinal >
getExportLIDs
()
const
= 0;
104
106
virtual
ArrayView< const int >
getExportPIDs
()
const
= 0;
107
109
virtual
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >
>
getSourceMap
()
const
= 0;
110
112
virtual
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >
>
getTargetMap
()
const
= 0;
113
115
virtual
void
setDistributorParameters
(
const
Teuchos::RCP<Teuchos::ParameterList>
params)
const
= 0;
116
118
120
121
123
virtual
void
print
(std::ostream &os)
const
= 0;
124
126
127
};
// Export class
128
129
}
// Xpetra namespace
130
131
#define XPETRA_EXPORT_SHORT
132
#endif
// XPETRA_EXPORT_HPP
Teuchos_as.hpp
Teuchos::ArrayView
Teuchos::Describable
Teuchos::RCP
Xpetra::Export
Definition
Xpetra_Export.hpp:64
Xpetra::Export::getNumSameIDs
virtual size_t getNumSameIDs() const =0
Number of initial identical IDs.
Xpetra::Export::getSourceMap
virtual Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getSourceMap() const =0
The source Map used to construct this Export.
Xpetra::Export::getPermuteToLIDs
virtual ArrayView< const LocalOrdinal > getPermuteToLIDs() const =0
List of local IDs in the target Map that are permuted.
Xpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::global_ordinal_type
GlobalOrdinal global_ordinal_type
Definition
Xpetra_Export.hpp:67
Xpetra::Export::getNumPermuteIDs
virtual size_t getNumPermuteIDs() const =0
Number of IDs to permute but not to communicate.
Xpetra::Export::getTargetMap
virtual Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getTargetMap() const =0
The target Map used to construct this Export.
Xpetra::Export::getPermuteFromLIDs
virtual ArrayView< const LocalOrdinal > getPermuteFromLIDs() const =0
List of local IDs in the source Map that are permuted.
Xpetra::Export::getNumExportIDs
virtual size_t getNumExportIDs() const =0
Number of entries that must be sent by the calling process to other processes.
Xpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::node_type
Node node_type
Definition
Xpetra_Export.hpp:68
Xpetra::Export::getExportLIDs
virtual ArrayView< const LocalOrdinal > getExportLIDs() const =0
List of entries in the source Map that will be sent to other processes.
Xpetra::Export::~Export
virtual ~Export()
Destructor.
Definition
Xpetra_Export.hpp:74
Xpetra::Export::getRemoteLIDs
virtual ArrayView< const LocalOrdinal > getRemoteLIDs() const =0
List of entries in the target Map to receive from other processes.
Xpetra::Export::setDistributorParameters
virtual void setDistributorParameters(const Teuchos::RCP< Teuchos::ParameterList > params) const =0
Set parameters on the underlying object.
Xpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::local_ordinal_type
LocalOrdinal local_ordinal_type
Definition
Xpetra_Export.hpp:66
Xpetra::Export::getExportPIDs
virtual ArrayView< const int > getExportPIDs() const =0
List of processes to which entries will be sent.
Xpetra::Export::getNumRemoteIDs
virtual size_t getNumRemoteIDs() const =0
Number of entries not on the calling process.
Xpetra::Export::print
virtual void print(std::ostream &os) const =0
Print the Export's data to the given output stream.
Xpetra
Xpetra namespace
Definition
Xpetra_BlockedCrsMatrix.hpp:89
src
Export
Xpetra_Export.hpp
Generated by
1.17.0