42 #ifndef TPETRA_DETAILS_TRANSFER_DECL_HPP 43 #define TPETRA_DETAILS_TRANSFER_DECL_HPP 45 #include "Tpetra_ConfigDefs.hpp" 47 #include "Teuchos_Describable.hpp" 55 #ifndef DOXYGEN_SHOULD_SKIP_THIS 57 #endif // DOXYGEN_SHOULD_SKIP_THIS 66 class GO = ::Tpetra::Details::DefaultTypes::global_ordinal_type,
103 virtual Teuchos::ArrayView<const LO>
getRemoteLIDs ()
const = 0;
109 virtual Teuchos::ArrayView<const LO>
getExportLIDs ()
const = 0;
115 virtual Teuchos::ArrayView<const int>
getExportPIDs ()
const = 0;
118 virtual Teuchos::RCP<const map_type>
getSourceMap ()
const = 0;
121 virtual Teuchos::RCP<const map_type>
getTargetMap ()
const = 0;
165 describe (Teuchos::FancyOStream& out,
166 const Teuchos::EVerbosityLevel verbLevel =
167 Teuchos::Describable::verbLevel_default)
const;
185 const std::string& className,
186 const Teuchos::EVerbosityLevel verbLevel =
187 Teuchos::Describable::verbLevel_default)
const;
197 globalDescribe (Teuchos::FancyOStream& out,
198 const Teuchos::EVerbosityLevel vl)
const;
205 localDescribeToString (
const Teuchos::EVerbosityLevel vl)
const;
218 #define TPETRA_DETAILS_TRANSFER_INSTANT(LO, GO, NODE) \ 220 template class Transfer< LO , GO , NODE >; 222 #endif // TPETRA_DETAILS_TRANSFER_DECL_HPP virtual Teuchos::ArrayView< const LO > getPermuteToLIDs() const =0
List of local IDs in the target Map that are permuted.
void describeImpl(Teuchos::FancyOStream &out, const std::string &className, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
Implementation of describe() for subclasses (Tpetra::Import and Tpetra::Export).
Namespace Tpetra contains the class and methods constituting the Tpetra library.
Common base class of Import and Export.
virtual Teuchos::ArrayView< const int > getExportPIDs() const =0
List of processes to which entries will be sent.
KokkosClassic::DefaultNode::DefaultNodeType node_type
Default value of Node template parameter.
virtual size_t getNumSameIDs() const =0
Number of initial identical IDs.
virtual Teuchos::ArrayView< const LO > getPermuteFromLIDs() const =0
List of local IDs in the source Map that are permuted.
virtual bool isLocallyComplete() const =0
Is this Export or Import locally complete?
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
Describe this object in a human-readable way to the given output stream.
::Tpetra::Map< LO, GO, NT > map_type
The specialization of Map used by this class and subclasses.
int local_ordinal_type
Default value of LocalOrdinal template parameter.
Implementation details of Tpetra.
Declarations for the Tpetra::Map class and related nonmember constructors.
virtual ::Tpetra::Distributor & getDistributor() const =0
The Distributor that this Export or Import object uses to move data.
virtual size_t getNumPermuteIDs() const =0
Number of IDs to permute but not to communicate.
virtual Teuchos::ArrayView< const LO > getRemoteLIDs() const =0
List of entries in the target Map to receive from other processes.
virtual Teuchos::RCP< const map_type > getTargetMap() const =0
The target Map used to construct this Export or Import.
virtual Teuchos::ArrayView< const LO > getExportLIDs() const =0
List of entries in the source Map that will be sent to other processes.
virtual ~Transfer()
Destructor (declared virtual for memory safety of derived classes).
virtual size_t getNumRemoteIDs() const =0
Number of entries not on the calling process.
virtual size_t getNumExportIDs() const =0
Number of entries that must be sent by the calling process to other processes.
virtual Teuchos::RCP< const map_type > getSourceMap() const =0
The source Map used to construct this Export or Import.