42#ifndef EPETRAEXT_HDF5_HANDLE_H
43#define EPETRAEXT_HDF5_HANDLE_H
45#if defined(EpetraExt_SHOW_DEPRECATED_WARNINGS)
47#warning "The EpetraExt package is deprecated"
51#ifdef HAVE_EPETRAEXT_HDF5
67 virtual std::string
Type()
const = 0;
74 virtual int IntSize(
const int EID)
const = 0;
80 virtual int GetLabels(std::vector<std::string>& IntLabels,
81 std::vector<std::string>& DoubleLabels)
const = 0;
84 virtual int GetLabels(std::vector<std::string>& IntLabels, std::vector<int>& IntLabelsData,
85 std::vector<std::string>& DoubleLabels, std::vector<double>& DoubleLabelsData)
const = 0;
88 virtual int SetLabels(
const std::vector<int>& IntLabelsData,
89 const std::vector<double>& DoubleLabelsData) = 0;
92 virtual int Pack(
const int EID,
int* IntData,
double* DoubleData)
const = 0;
105#include "Epetra_Vector.h"
129 return(
"Handle<Epetra_Vector>");
156 std::vector<std::string>& DoubleLabels)
const
159 DoubleLabels.resize(0);
165 int GetLabels(std::vector<std::string>& IntLabels, std::vector<int>& IntLabelsData,
166 std::vector<std::string>& DoubleLabels, std::vector<double>& DoubleLabelsData)
const
173 const std::vector<double>& DoubleLabelsData)
179 int Pack(
const int EID,
int* IntData,
double* DoubleData)
const
181 DoubleData[0] = (*obj_)[EID];
190 (*obj_)[EID] = DoubleData[0];
int GetLabels(std::vector< std::string > &IntLabels, std::vector< std::string > &DoubleLabels) const
Packs all global information.
int GetLabels(std::vector< std::string > &IntLabels, std::vector< int > &IntLabelsData, std::vector< std::string > &DoubleLabels, std::vector< double > &DoubleLabelsData) const
Packs all global information.
std::string Type() const
Returns the identifier of the distributed object.
Epetra_Vector_Handle(Epetra_Vector &obj)
int Initialize()
Performs any initialization procedure before unpacking.
int Pack(const int EID, int *IntData, double *DoubleData) const
Packs all data for local element EID in the specified arrays.
int SetLabels(const std::vector< int > &IntLabelsData, const std::vector< double > &DoubleLabelsData)
Sets global information.
int NumMyElements() const
Returns the local number of elements.
int DoubleSize(const int EID) const
Returns the size of double data for local element EID.
int IntSize(const int EID) const
Returns the size of integer data for local element EID.
int Finalize()
Performs any finalization procedure after unpacking.
int UnPack(const int EID, int IntSize, int *IntData, int DoubleSize, double *DoubleData)
Unpacks all data for local element EID in the specified arrays.
int NumGlobalElements() const
Returns the global number of elements.
virtual int Finalize()=0
Performs any finalization procedure after unpacking.
virtual int NumGlobalElements() const =0
Returns the global number of elements.
virtual int IntSize(const int EID) const =0
Returns the size of integer data for local element EID.
virtual bool HasInt() const =0
virtual int DoubleSize(const int EID) const =0
Returns the size of double data for local element EID.
virtual int NumMyElements() const =0
Returns the local number of elements.
virtual std::string Type() const =0
Returns the identifier of the distributed object.
virtual bool HasDouble() const =0
virtual int UnPack(const int EID, int IntSize, int *IntData, int DoubleSize, double *DoubleData)=0
Unpacks all data for local element EID in the specified arrays.
virtual int GetLabels(std::vector< std::string > &IntLabels, std::vector< int > &IntLabelsData, std::vector< std::string > &DoubleLabels, std::vector< double > &DoubleLabelsData) const =0
Packs all global information.
virtual int GetLabels(std::vector< std::string > &IntLabels, std::vector< std::string > &DoubleLabels) const =0
Packs all global information.
virtual int Pack(const int EID, int *IntData, double *DoubleData) const =0
Packs all data for local element EID in the specified arrays.
virtual int Initialize()=0
Performs any initialization procedure before unpacking.
virtual int SetLabels(const std::vector< int > &IntLabelsData, const std::vector< double > &DoubleLabelsData)=0
Sets global information.
int NumGlobalElements() const
int NumMyElements() const
const Epetra_BlockMap & Map() const
EpetraExt::BlockCrsMatrix: A class for constructing a distributed block matrix.