dox/Graphics/vtkAppendPolyData.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00040 #ifndef __vtkAppendPolyData_h
00041 #define __vtkAppendPolyData_h
00042
00043 #include "vtkPolyDataToPolyDataFilter.h"
00044
00045 class vtkCellArray;
00046 class vtkDataArray;
00047 class vtkPoints;
00048 class vtkPolyData;
00049
00050 class VTK_GRAPHICS_EXPORT vtkAppendPolyData : public vtkPolyDataToPolyDataFilter
00051 {
00052 public:
00053 static vtkAppendPolyData *New();
00054
00055 vtkTypeRevisionMacro(vtkAppendPolyData,vtkPolyDataToPolyDataFilter);
00056 void PrintSelf(ostream& os, vtkIndent indent);
00057
00059
00063 vtkSetMacro(UserManagedInputs,int);
00064 vtkGetMacro(UserManagedInputs,int);
00065 vtkBooleanMacro(UserManagedInputs,int);
00067
00070 void AddInput(vtkPolyData *);
00071
00074 void RemoveInput(vtkPolyData *);
00075
00077
00078 vtkPolyData *GetInput(int idx);
00079 vtkPolyData *GetInput() { return this->GetInput( 0 ); };
00081
00084 void SetNumberOfInputs(int num);
00085
00086
00087 void SetInputByNumber(int num, vtkPolyData *input);
00088
00090
00097 vtkSetMacro(ParallelStreaming, int);
00098 vtkGetMacro(ParallelStreaming, int);
00099 vtkBooleanMacro(ParallelStreaming, int);
00101
00102 protected:
00103 vtkAppendPolyData();
00104 ~vtkAppendPolyData();
00105
00106
00107 int ParallelStreaming;
00108
00109
00110 void Execute();
00111
00112 void ComputeInputUpdateExtents(vtkDataObject *output);
00113
00114
00115 void AppendData(vtkDataArray *dest, vtkDataArray *src, vtkIdType offset);
00116 void AppendDifferentPoints(vtkDataArray *dest, vtkDataArray *src,
00117 vtkIdType offset);
00118 vtkIdType *AppendCells(vtkIdType *pDest, vtkCellArray *src,
00119 vtkIdType offset);
00120
00121 private:
00122
00123 void AddInput(vtkDataObject *)
00124 { vtkErrorMacro( << "AddInput() must be called with a vtkPolyData not a vtkDataObject."); };
00125 void RemoveInput(vtkDataObject *input)
00126 { this->vtkProcessObject::RemoveInput(input);
00127 this->vtkProcessObject::SqueezeInputArray();};
00128 int UserManagedInputs;
00129 private:
00130 vtkAppendPolyData(const vtkAppendPolyData&);
00131 void operator=(const vtkAppendPolyData&);
00132 };
00133
00134 #endif
00135
00136