VTK
vtkThreadedImageAlgorithm.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkThreadedImageAlgorithm.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
30 #ifndef __vtkThreadedImageAlgorithm_h
31 #define __vtkThreadedImageAlgorithm_h
32 
33 #include "vtkImageAlgorithm.h"
34 
35 class vtkImageData;
36 class vtkMultiThreader;
37 
38 class VTK_FILTERING_EXPORT vtkThreadedImageAlgorithm : public vtkImageAlgorithm
39 {
40 public:
41  vtkTypeMacro(vtkThreadedImageAlgorithm,vtkImageAlgorithm);
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
45 
49  virtual void ThreadedRequestData(vtkInformation *request,
50  vtkInformationVector **inputVector,
51  vtkInformationVector *outputVector,
52  vtkImageData ***inData,
53  vtkImageData **outData,
54  int extent[6], int threadId);
56 
57  // also support the old signature
58  virtual void ThreadedExecute(vtkImageData *inData,
59  vtkImageData *outData,
60  int extent[6], int threadId);
61 
63 
64  vtkSetClampMacro( NumberOfThreads, int, 1, VTK_MAX_THREADS );
65  vtkGetMacro( NumberOfThreads, int );
67 
69 
70  virtual int SplitExtent(int splitExt[6], int startExt[6],
71  int num, int total);
73 
74 protected:
77 
80 
82 
84  virtual int RequestData(vtkInformation* request,
85  vtkInformationVector** inputVector,
86  vtkInformationVector* outputVector);
88 
89 private:
90  vtkThreadedImageAlgorithm(const vtkThreadedImageAlgorithm&); // Not implemented.
91  void operator=(const vtkThreadedImageAlgorithm&); // Not implemented.
92 };
93 
94 #endif
95 
96 
97 
98 
99 
100 
101 
Store vtkAlgorithm input/output information.
#define VTK_FILTERING_EXPORT
A class for performing multithreaded execution.
Generic filter that has one input..
a simple class to control print indentation
Definition: vtkIndent.h:37
Store zero or more vtkInformation instances.