22 #ifndef vtkThreadedImageAlgorithm_h
23 #define vtkThreadedImageAlgorithm_h
25 #include "vtkCommonExecutionModelModule.h"
27 #include "vtkThreads.h"
30 VTK_ABI_NAMESPACE_BEGIN
49 VTK_FUTURE_CONST
int extent[6],
int threadId);
52 virtual void ThreadedExecute(
59 vtkGetMacro(EnableSMP,
bool);
60 vtkSetMacro(EnableSMP,
bool);
67 static void SetGlobalDefaultEnableSMP(
bool enable);
68 static bool GetGlobalDefaultEnableSMP();
76 vtkSetVector3Macro(MinimumPieceSize,
int);
77 vtkGetVector3Macro(MinimumPieceSize,
int);
87 vtkSetMacro(DesiredBytesPerPiece,
vtkIdType);
88 vtkGetMacro(DesiredBytesPerPiece,
vtkIdType);
99 vtkSetClampMacro(SplitMode,
int, 0, 2);
103 vtkGetMacro(SplitMode,
int);
111 vtkSetClampMacro(NumberOfThreads,
int, 1, VTK_MAX_THREADS);
112 vtkGetMacro(NumberOfThreads,
int);
118 virtual int SplitExtent(
int splitExt[6],
int startExt[6],
int num,
int total);
140 int MinimumPieceSize[3];
174 friend class vtkThreadedImageAlgorithmFunctor;
177 VTK_ABI_NAMESPACE_END
void SetSplitModeToSlab()
Set the method used to divide the volume into pieces.
A class for performing multithreaded execution.
Generic filter that has one input.
vtkMultiThreader * Threader
a simple class to control print indentation
topologically and geometrically regular array of data
void SetSplitModeToBlock()
Set the method used to divide the volume into pieces.
void SetSplitModeToBeam()
Set the method used to divide the volume into pieces.
Generic algorithm superclass for image algs.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called in response to a REQUEST_DATA request from the executive.
static bool GlobalDefaultEnableSMP
vtkIdType DesiredBytesPerPiece