91 #ifndef __vtkDistributedDataFilter_h
92 #define __vtkDistributedDataFilter_h
99 class vtkDistributedDataFilterSTLCloak;
148 vtkBooleanMacro(RetainKdtree,
int);
149 vtkGetMacro(RetainKdtree,
int);
150 vtkSetMacro(RetainKdtree,
int);
161 vtkBooleanMacro(IncludeAllIntersectingCells,
int);
162 vtkGetMacro(IncludeAllIntersectingCells,
int);
163 vtkSetMacro(IncludeAllIntersectingCells,
int);
169 vtkBooleanMacro(ClipCells,
int);
170 vtkGetMacro(ClipCells,
int);
171 vtkSetMacro(ClipCells,
int);
175 ASSIGN_TO_ONE_REGION=0,
176 ASSIGN_TO_ALL_INTERSECTING_REGIONS=1,
177 SPLIT_BOUNDARY_CELLS=2
183 void SetBoundaryMode(
int mode);
187 { this->SetBoundaryMode(
192 int GetBoundaryMode();
205 vtkBooleanMacro(UseMinimalMemory,
int);
206 vtkGetMacro(UseMinimalMemory,
int);
207 vtkSetMacro(UseMinimalMemory,
int);
212 vtkBooleanMacro(Timing,
int);
213 vtkSetMacro(Timing,
int);
214 vtkGetMacro(Timing,
int);
234 void SetUserRegionAssignments(
const int *map,
int numRegions);
245 void AssignBoundaryCellsToOneRegionOn();
246 void AssignBoundaryCellsToOneRegionOff();
247 void SetAssignBoundaryCellsToOneRegion(
int val);
256 void AssignBoundaryCellsToAllIntersectingRegionsOn();
257 void AssignBoundaryCellsToAllIntersectingRegionsOff();
258 void SetAssignBoundaryCellsToAllIntersectingRegions(
int val);
266 void DivideBoundaryCellsOn();
267 void DivideBoundaryCellsOff();
268 void SetDivideBoundaryCells(
int val);
303 DuplicateCellsNo = 0,
304 DuplicateCellsYes = 1
317 int PartitionDataAndAssignToProcesses(
vtkDataSet *set);
329 void ComputeMyRegionBounds();
342 vtkIdList **GetCellIdsForProcess(
int proc,
int *nlists);
346 void SetUpPairWiseExchange();
351 static void FreeIdLists(
vtkIdList**lists,
int nlists);
365 int deleteSendArrays,
int tag);
367 int deleteSendArrays,
int tag);
369 int deleteSendArrays,
int tag);
375 int deleteSendArrays,
int tag);
377 int deleteSendArrays,
int tag);
379 int deleteSendArrays,
int tag);
386 int filterOutDuplicateCells,
int ghostCellFlag,
int tag);
390 int filterOutDuplicateCells,
int ghostCellFlag,
int tag);
395 int filterOutDuplicateCells,
int ghostCellFlag,
int tag);
400 int filterOutDuplicateCells,
int ghostCellFlag,
int tag);
438 vtkDistributedDataFilterSTLCloak *procs);
445 vtkDistributedDataFilterSTLCloak *ptIdMap);
450 int InMySpatialRegion(
float x,
float y,
float z);
451 int InMySpatialRegion(
double x,
double y,
double z);
452 int StrictlyInsideMyBounds(
float x,
float y,
float z);
453 int StrictlyInsideMyBounds(
double x,
double y,
double z);
459 int AddCellsIAlreadyHave);
462 vtkDistributedDataFilterSTLCloak *globalToLocalMap);
465 vtkDistributedDataFilterSTLCloak *globalToLocalMap);
469 int ghostLevel, vtkDistributedDataFilterSTLCloak *idMap);
484 int ptId, vtkDistributedDataFilterSTLCloak *globalToLocal);
501 const char *arrayName,
unsigned char val);
503 const char *arrayName,
unsigned char val);
508 static void RemoveRemoteCellsFromList(
vtkIdList *cellList,
518 int useGlobalNodeIds,
float pointMergeTolerance,
519 int useGlobalCellIds);
531 int NumConvexSubRegions;
532 double *ConvexSubRegionBounds;
537 int IncludeAllIntersectingCells;
539 int AssignBoundaryCellsToOneRegion;
540 int AssignBoundaryCellsToAllIntersectingRegions;
541 int DivideBoundaryCells;
545 int NextProgressStep;
546 double ProgressIncrement;
548 int UseMinimalMemory;
556 vtkInternals* Internals;
virtual int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
GLenum GLuint GLenum GLsizei const GLchar * buf
Build a k-d tree decomposition of a list of points.
This class represents an axis-aligned Binary Spatial Partitioning of a 3D space.
GLenum GLenum GLenum input
abstract class to specify dataset behavior
static vtkDataObjectAlgorithm * New()
dynamic, self-adjusting array of float
void SetBoundaryModeToSplitBoundaryCells()
void PrintSelf(ostream &os, vtkIndent indent)
dynamic, self-adjusting array of vtkIdType
void SetBoundaryModeToAssignToAllIntersectingRegions()
GLint GLint GLint GLint GLint GLint y
void SetBoundaryModeToAssignToOneRegion()
Distribute data among processors.
GLint GLint GLint GLint GLint x
#define VTKFILTERSPARALLELMPI_EXPORT
dynamic, self-adjusting array of int
a simple class to control print indentation
list of point or cell ids
dataset represents arbitrary combinations of all possible cell types
abstract superclass for arrays of numeric data
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int FillInputPortInformation(int port, vtkInformation *info)
Superclass for algorithms that produce only data object as output.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Multiprocessing communication superclass.