00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkMergeFilter.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00043 #ifndef __vtkMergeFilter_h 00044 #define __vtkMergeFilter_h 00045 00046 #include "vtkDataSetToDataSetFilter.h" 00047 00048 class vtkFieldList; 00049 00050 class VTK_GRAPHICS_EXPORT vtkMergeFilter : public vtkDataSetToDataSetFilter 00051 { 00052 public: 00053 static vtkMergeFilter *New(); 00054 vtkTypeRevisionMacro(vtkMergeFilter,vtkDataSetToDataSetFilter); 00055 void PrintSelf(ostream& os, vtkIndent indent); 00056 00058 00059 void SetGeometry(vtkDataSet *input) {this->SetInput(input);}; 00060 vtkDataSet *GetGeometry() {return this->GetInput();}; 00062 00064 00065 void SetScalars(vtkDataSet *); 00066 vtkDataSet *GetScalars(); 00068 00070 00071 void SetVectors(vtkDataSet *); 00072 vtkDataSet *GetVectors(); 00074 00076 00077 void SetNormals(vtkDataSet *); 00078 vtkDataSet *GetNormals(); 00080 00082 00084 void SetTCoords(vtkDataSet *); 00085 vtkDataSet *GetTCoords(); 00087 00089 00090 void SetTensors(vtkDataSet *); 00091 vtkDataSet *GetTensors(); 00093 00096 void AddField(const char* name, vtkDataSet* input); 00097 00098 protected: 00099 vtkMergeFilter(); 00100 ~vtkMergeFilter(); 00101 00102 // Usual data generation method 00103 void Execute(); 00104 void ComputeInputUpdateExtents(vtkDataObject *data); 00105 00106 vtkFieldList* FieldList; 00107 private: 00108 vtkMergeFilter(const vtkMergeFilter&); // Not implemented. 00109 void operator=(const vtkMergeFilter&); // Not implemented. 00110 }; 00111 00112 #endif 00113 00114