Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkGenericAttribute.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkGenericAttribute.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 =========================================================================*/
00032 #ifndef __vtkGenericAttribute_h
00033 #define __vtkGenericAttribute_h
00034 
00035 #include "vtkObject.h"
00036 
00037 class vtkGenericCellIterator;
00038 class vtkGenericAdaptorCell;
00039 class vtkGenericPointIterator;
00040 
00041 enum
00042 {
00043   vtkPointCentered,
00044   vtkCellCentered,
00045   vtkBoundaryCentered
00046 };
00047 
00048 class VTK_FILTERING_EXPORT vtkGenericAttribute : public vtkObject
00049 {
00050  public:
00051   vtkTypeRevisionMacro(vtkGenericAttribute,vtkObject);
00052   virtual void PrintSelf(ostream& os, vtkIndent indent);
00053 
00056   virtual const char *GetName() = 0;
00057 
00064   virtual int GetNumberOfComponents() = 0;
00065 
00069   virtual int GetCentering() = 0;
00070   
00077   virtual int GetType()=0;
00078   
00086   virtual int GetComponentType() = 0;
00087 
00089   virtual vtkIdType GetSize() = 0;
00090 
00092   virtual unsigned long GetActualMemorySize() = 0;
00093 
00099   virtual double *GetRange(int component=0) = 0;
00100   
00102 
00105   virtual void GetRange(int component,
00106                         double range[2]) = 0;
00108   
00111   virtual double GetMaxNorm()=0;
00112   
00118   virtual double *GetTuple(vtkGenericAdaptorCell *c) = 0;
00119   
00125   virtual void GetTuple(vtkGenericAdaptorCell *c, double *tuple) = 0;
00126   
00132   virtual double *GetTuple(vtkGenericCellIterator *c) = 0;
00133 
00139   virtual void GetTuple(vtkGenericCellIterator *c, double *tuple) = 0;
00140 
00144   virtual double *GetTuple(vtkGenericPointIterator *p) = 0;
00145   
00150   virtual void GetTuple(vtkGenericPointIterator *p, double *tuple) = 0;
00151   
00157   virtual void GetComponent(int i,vtkGenericCellIterator *c, double *values) = 0;
00158 
00162   virtual double GetComponent(int i,vtkGenericPointIterator *p) = 0;
00163   
00166   virtual void DeepCopy(vtkGenericAttribute *other) = 0;
00167   
00170   virtual void ShallowCopy(vtkGenericAttribute *other) = 0;
00171   
00172 protected:
00173   vtkGenericAttribute();
00174   ~vtkGenericAttribute();
00175   
00176 private:
00177   vtkGenericAttribute(const vtkGenericAttribute&);  // Not implemented.
00178   void operator=(const vtkGenericAttribute&);  // Not implemented.
00179 };
00180 
00181 #endif

Generated on Mon Jan 21 23:07:19 2008 for VTK by  doxygen 1.4.3-20050530