00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00028 #ifndef __vtkImageExtractComponents_h
00029 #define __vtkImageExtractComponents_h
00030
00031
00032 #include "vtkThreadedImageAlgorithm.h"
00033
00034 class VTK_IMAGING_EXPORT vtkImageExtractComponents : public vtkThreadedImageAlgorithm
00035 {
00036 public:
00037 static vtkImageExtractComponents *New();
00038 vtkTypeMacro(vtkImageExtractComponents,vtkThreadedImageAlgorithm);
00039 void PrintSelf(ostream& os, vtkIndent indent);
00040
00042
00043 void SetComponents(int c1);
00044 void SetComponents(int c1, int c2);
00045 void SetComponents(int c1, int c2, int c3);
00046 vtkGetVector3Macro(Components,int);
00048
00050
00052 vtkGetMacro(NumberOfComponents,int);
00054
00055 protected:
00056 vtkImageExtractComponents();
00057 ~vtkImageExtractComponents() {};
00058
00059 int NumberOfComponents;
00060 int Components[3];
00061
00062 virtual int RequestInformation (vtkInformation *, vtkInformationVector**,
00063 vtkInformationVector *);
00064
00065 void ThreadedExecute (vtkImageData *inData, vtkImageData *outData,
00066 int ext[6], int id);
00067 private:
00068 vtkImageExtractComponents(const vtkImageExtractComponents&);
00069 void operator=(const vtkImageExtractComponents&);
00070 };
00071
00072 #endif
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082