00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00022 #ifndef __vtkColorByPart_h
00023 #define __vtkColorByPart_h
00024
00025 #include "vtkSource.h"
00026
00027 class vtkDataSet;
00028 class vtkIntArray;
00029
00030 class VTK_EXPORT vtkColorByPart : public vtkSource
00031 {
00032 public:
00033 static vtkColorByPart *New();
00034
00035 vtkTypeRevisionMacro(vtkColorByPart,vtkSource);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039 void AddInput(vtkDataSet *in);
00040
00042
00043 vtkDataSet *GetInput(int idx);
00044 vtkDataSet *GetInput()
00045 {return this->GetInput( 0 );}
00047
00049
00050 int GetNumberOfOutputs();
00051 vtkDataSet *GetOutput(int idx);
00052 vtkDataSet *GetOutput()
00053 {return this->GetOutput( 0 );}
00055
00057 virtual void ComputeInputUpdateExtents( vtkDataObject *output );
00058
00059 protected:
00060 vtkColorByPart() {};
00061 ~vtkColorByPart() {};
00062
00063
00064 virtual void Execute();
00065 virtual void ExecuteInformation();
00066
00067 private:
00068
00069
00070 void AddInput(vtkDataObject *)
00071 { vtkErrorMacro( << "AddInput() must be called with a vtkDataSet not a vtkDataObject."); };
00072 void RemoveInput(vtkDataObject *input)
00073 { this->vtkProcessObject::RemoveInput(input); };
00074 private:
00075 vtkColorByPart(const vtkColorByPart&);
00076 void operator=(const vtkColorByPart&);
00077 };
00078
00079
00080 #endif
00081
00082