VTK
dox/Infovis/vtkGenerateIndexArray.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkGenerateIndexArray.h
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   vtkTypeMacro(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 
00076 
00078   vtkSetMacro(PedigreeID, int);
00079   vtkGetMacro(PedigreeID, int);
00081 
00082 //BTX
00083   enum
00084   {
00085     ROW_DATA = 0,
00086     POINT_DATA = 1,
00087     CELL_DATA = 2,
00088     VERTEX_DATA = 3,
00089     EDGE_DATA = 4
00090   };
00091 //ETX
00092 
00093 protected:
00094   vtkGenerateIndexArray();
00095   ~vtkGenerateIndexArray();
00096  
00097   virtual int ProcessRequest(
00098     vtkInformation* request, 
00099     vtkInformationVector** inputVector,
00100     vtkInformationVector* outputVector);
00101 
00102   virtual int RequestDataObject(
00103     vtkInformation* request,
00104     vtkInformationVector** inputVector,
00105     vtkInformationVector* outputVector);
00106   
00107   int RequestData(
00108     vtkInformation*,
00109     vtkInformationVector**,
00110     vtkInformationVector*);
00111 
00112   char* ArrayName;
00113   int FieldType;
00114   char* ReferenceArrayName;
00115   int PedigreeID;
00116 
00117 private:
00118   vtkGenerateIndexArray(const vtkGenerateIndexArray&);  // Not implemented.
00119   void operator=(const vtkGenerateIndexArray&);  // Not implemented.
00120 };
00121 
00122 #endif
00123