26 #ifndef vtkExtentRCBPartitioner_h 
   27 #define vtkExtentRCBPartitioner_h 
   29 #include "vtkCommonExecutionModelModule.h"  
   48       assert( 
"pre: Number of partitions requested must be > 0" && (N >= 0) );
 
   50       this->NumberOfPartitions = N;
 
   63       this->GlobalExtent[0] = imin;
 
   64       this->GlobalExtent[1] = imax;
 
   65       this->GlobalExtent[2] = jmin;
 
   66       this->GlobalExtent[3] = jmax;
 
   67       this->GlobalExtent[4] = kmin;
 
   68       this->GlobalExtent[5] = kmax;
 
   72       this->SetGlobalExtent( ext[0], ext[1], ext[2], ext[3], ext[4], ext[5] );
 
   81     vtkGetMacro(DuplicateNodes,
int);
 
   90     vtkGetMacro(NumberOfGhostLayers,
int);
 
   97     vtkGetMacro(NumExtents,
int);
 
  108     void GetPartitionExtent( 
const int idx, 
int ext[6] );
 
  121      this->PartitionExtents.clear();
 
  122      this->NumExtents          = 0;
 
  123      this->ExtentIsPartitioned = 
false;
 
  132     void ExtendGhostLayers( 
int ext[6] );
 
  141         int ext[6], 
const int minIdx, 
const int maxIdx )
 
  143       ext[minIdx]-=this->NumberOfGhostLayers;
 
  144       ext[maxIdx]+=this->NumberOfGhostLayers;
 
  145       ext[minIdx] = (ext[minIdx] < this->GlobalExtent[minIdx])?
 
  146           this->GlobalExtent[minIdx] : ext[minIdx];
 
  147       ext[maxIdx] = (ext[maxIdx] > this->GlobalExtent[maxIdx])?
 
  148           this->GlobalExtent[maxIdx] : ext[maxIdx];
 
  155     void AcquireDataDescription();
 
  160      void GetExtent( 
const int idx, 
int ext[6] );
 
  165      void AddExtent(
int ext[6]);
 
  171      void ReplaceExtent(
const int idx, 
int ext[6]);
 
  176      void SplitExtent(
int parent[6],
int s1[6],
int s2[6],
int splitDimension);
 
  182      int GetNumberOfTotalExtents();
 
  187      int GetNumberOfNodes( 
int ext[6] );
 
  192      int GetNumberOfCells( 
int ext[6] );
 
  197      int GetLongestDimensionLength( 
int ext[6] );
 
  202      int GetLongestDimension( 
int ext[6] );
 
void SetGlobalExtent(int imin, int imax, int jmin, int jmax, int kmin, int kmax)
Set/Get the global extent array to be partitioned. 
 
abstract base class for most VTK objects 
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses. 
 
void SetGlobalExtent(int ext[6])
Set/Get the global extent array to be partitioned. 
 
This method partitions a global extent to N partitions where N is a user supplied parameter...
 
void GetGhostedExtent(int ext[6], const int minIdx, const int maxIdx)
Givent an extent and the min/max of the dimension we are looking at, this method will produce a ghost...
 
a simple class to control print indentation 
 
void SetNumberOfPartitions(const int N)
Set/Get the number of requested partitions. 
 
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection. 
 
std::vector< int > PartitionExtents
 
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection. 
 
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...