VTK
dox/Infovis/Core/vtkAddMembershipArray.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkAddMembershipArray.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 -------------------------------------------------------------------------*/
00030 #ifndef __vtkAddMembershipArray_h
00031 #define __vtkAddMembershipArray_h
00032 
00033 #include "vtkInfovisCoreModule.h" // For export macro
00034 #include "vtkPassInputTypeAlgorithm.h"
00035 
00036 class vtkAbstractArray;
00037 
00038 class VTKINFOVISCORE_EXPORT vtkAddMembershipArray : public vtkPassInputTypeAlgorithm
00039 {
00040 public:
00041   static vtkAddMembershipArray* New();
00042   vtkTypeMacro(vtkAddMembershipArray,vtkPassInputTypeAlgorithm);
00043   void PrintSelf(ostream& os, vtkIndent indent);
00044 
00045   //BTX
00046   enum
00047     {
00048     FIELD_DATA = 0,
00049     POINT_DATA = 1,
00050     CELL_DATA = 2,
00051     VERTEX_DATA = 3,
00052     EDGE_DATA = 4,
00053     ROW_DATA = 5
00054     };
00055   //ETX
00056 
00058 
00059   vtkGetMacro(FieldType, int);
00060   vtkSetClampMacro(FieldType, int, 0, 5);
00062 
00064 
00066   vtkSetStringMacro(OutputArrayName);
00067   vtkGetStringMacro(OutputArrayName);
00069 
00070   vtkSetStringMacro(InputArrayName);
00071   vtkGetStringMacro(InputArrayName);
00072 
00073   void SetInputValues(vtkAbstractArray*);
00074   vtkGetObjectMacro(InputValues,vtkAbstractArray);
00075 
00076 protected:
00077   vtkAddMembershipArray();
00078   ~vtkAddMembershipArray();
00079 
00080   int FillInputPortInformation(int port, vtkInformation* info);
00081 
00082   int RequestData(
00083     vtkInformation*,
00084     vtkInformationVector**,
00085     vtkInformationVector*);
00086 
00087   int FieldType;
00088   char* OutputArrayName;
00089   char* InputArrayName;
00090 //BTX
00091   vtkAbstractArray* InputValues;
00092 //ETX
00093 
00094 private:
00095   vtkAddMembershipArray(const vtkAddMembershipArray&); // Not implemented
00096   void operator=(const vtkAddMembershipArray&);   // Not implemented
00097 };
00098 
00099 #endif
00100