40 #ifndef _Isorropia_Operator_hpp_
41 #define _Isorropia_Operator_hpp_
44 #include <Teuchos_ParameterList.hpp>
71 virtual void setParameters(
const Teuchos::ParameterList& paramlist) = 0;
85 virtual void compute(
bool forceRecomputing=
false) = 0;
126 virtual const int&
operator[](
int myElem)
const = 0;
172 const int*& array)
const = 0;
191 int* array)
const = 0;
virtual int numLocalProperties() const =0
Return the number of different values used for "properties" for this process only.
virtual ~Operator()
Destructor.
Definition: Isorropia_Operator.hpp:62
virtual const int & operator[](int myElem) const =0
Return the "property" for a given element that resided locally.
virtual void compute(bool forceRecomputing=false)=0
Method which does the work of computing a new partitioning/coloring/ordering, depending on the child ...
virtual int numProperties() const =0
Return the number of different values used for "properties".
virtual bool alreadyComputed() const =0
Query whether the computation has already been called.
virtual void setParameters(const Teuchos::ParameterList ¶mlist)=0
Set parameters for the Operator instance.
virtual int extractPropertiesCopy(int len, int &size, int *array) const =0
Copy a part of the property array.
Interface (abstract base class) for computing a new partitioning/coloring/ ordering and exploiting th...
Definition: Isorropia_Operator.hpp:58
virtual void elemsWithProperty(int property, int *elementList, int len) const =0
Fill user-allocated list (of length len) with the local element ids of the LOCAL elements with the gi...
virtual int numElemsWithProperty(int property) const =0
Return the number of LOCAL elements with the given property.
virtual int extractPropertiesView(int &size, const int *&array) const =0
Give access of the property array that is owned by the current processor.