10#ifndef XPETRA_TPETRAEXPORT_DECL_HPP
11#define XPETRA_TPETRAEXPORT_DECL_HPP
21#include "Tpetra_Export.hpp"
28template <
class LocalOrdinal,
class GlobalOrdinal,
class Node>
29const Tpetra::Export<LocalOrdinal, GlobalOrdinal, Node>&
toTpetra(
const Export<LocalOrdinal, GlobalOrdinal, Node>&);
31template <
class LocalOrdinal,
class GlobalOrdinal,
class Node>
32RCP<const Export<LocalOrdinal, GlobalOrdinal, Node>>
33toXpetra(
const RCP<
const Tpetra::Export<LocalOrdinal, GlobalOrdinal, Node>>& exp);
35template <
class LocalOrdinal,
39 :
public Export<LocalOrdinal, GlobalOrdinal, Node> {
108 void print(std::ostream& os)
const;
116 TpetraExport(
const RCP<
const Tpetra::Export<LocalOrdinal, GlobalOrdinal, Node>>& exp);
132template <
class LocalOrdinal,
class GlobalOrdinal,
class Node>
133const Tpetra::Export<LocalOrdinal, GlobalOrdinal, Node>&
141template <
class LocalOrdinal,
class GlobalOrdinal,
class Node>
144 if (exportObj != Teuchos::null) {
146 return tpetraExport->getTpetra_Export();
148 return Teuchos::null;
151template <
class LocalOrdinal,
class GlobalOrdinal,
class Node>
152RCP<const Export<LocalOrdinal, GlobalOrdinal, Node>>
153toXpetra(
const RCP<
const Tpetra::Export<LocalOrdinal, GlobalOrdinal, Node>>& exp) {
157 return Teuchos::null;
#define XPETRA_RCP_DYNAMIC_CAST(type, obj, newObj, exceptionMsg)
ArrayView< const LocalOrdinal > getPermuteFromLIDs() const
List of local IDs in the source Map that are permuted.
size_t getNumPermuteIDs() const
Number of IDs to permute but not to communicate.
void setDistributorParameters(const Teuchos::RCP< Teuchos::ParameterList > params) const
Set distributor parameters.
ArrayView< const LocalOrdinal > getExportLIDs() const
List of entries in the source Map that will be sent to other processes.
Map< LocalOrdinal, GlobalOrdinal, Node > map_type
The specialization of Map used by this class.
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getSourceMap() const
The source Map used to construct this Export.
size_t getNumSameIDs() const
Number of initial identical IDs.
ArrayView< const LocalOrdinal > getRemoteLIDs() const
List of entries in the target Map to receive from other processes.
size_t getNumExportIDs() const
Number of entries that must be sent by the calling process to other processes.
ArrayView< const LocalOrdinal > getPermuteToLIDs() const
List of local IDs in the target Map that are permuted.
Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > getTargetMap() const
The target Map used to construct this Export.
ArrayView< const int > getExportPIDs() const
List of processes to which entries will be sent.
RCP< const Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node > > getTpetra_Export() const
void print(std::ostream &os) const
Print the Export's data to the given output stream.
size_t getNumRemoteIDs() const
Number of entries not on the calling process.
RCP< const Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node > > export_
~TpetraExport()
Destructor.
RCP< const CrsGraph< int, GlobalOrdinal, Node > > toXpetra(const Epetra_CrsGraph &g)
RCP< const Tpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > toTpetra(const RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > &graph)