VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkGenerateIndexArray.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 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00044 #ifndef __vtkGenerateIndexArray_h 00045 #define __vtkGenerateIndexArray_h 00046 00047 #include "vtkDataObjectAlgorithm.h" 00048 00049 class VTK_INFOVIS_EXPORT vtkGenerateIndexArray : public vtkDataObjectAlgorithm 00050 { 00051 public: 00052 static vtkGenerateIndexArray *New(); 00053 00054 vtkTypeRevisionMacro(vtkGenerateIndexArray, vtkDataObjectAlgorithm); 00055 void PrintSelf(ostream& os, vtkIndent indent); 00056 00058 00059 vtkSetStringMacro(ArrayName); 00060 vtkGetStringMacro(ArrayName); 00062 00064 00065 vtkSetMacro(FieldType, int); 00066 vtkGetMacro(FieldType, int); 00068 00070 00071 vtkSetStringMacro(ReferenceArrayName); 00072 vtkGetStringMacro(ReferenceArrayName); 00074 00075 //BTX 00076 enum 00077 { 00078 ROW_DATA = 0, 00079 POINT_DATA = 1, 00080 CELL_DATA = 2, 00081 VERTEX_DATA = 3, 00082 EDGE_DATA = 4 00083 }; 00084 //ETX 00085 00086 protected: 00087 vtkGenerateIndexArray(); 00088 ~vtkGenerateIndexArray(); 00089 00090 virtual int ProcessRequest( 00091 vtkInformation* request, 00092 vtkInformationVector** inputVector, 00093 vtkInformationVector* outputVector); 00094 00095 virtual int RequestDataObject( 00096 vtkInformation* request, 00097 vtkInformationVector** inputVector, 00098 vtkInformationVector* outputVector); 00099 00100 int RequestData( 00101 vtkInformation*, 00102 vtkInformationVector**, 00103 vtkInformationVector*); 00104 00105 char* ArrayName; 00106 int FieldType; 00107 char* ReferenceArrayName; 00108 00109 private: 00110 vtkGenerateIndexArray(const vtkGenerateIndexArray&); // Not implemented. 00111 void operator=(const vtkGenerateIndexArray&); // Not implemented. 00112 }; 00113 00114 #endif 00115