VTK
dox/Filtering/vtkArrayData.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkArrayData.h
00005   
00006 -------------------------------------------------------------------------
00007   Copyright 2008 Sandia Corporation.
00008   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00009   the U.S. Government retains certain rights in this software.
00010 -------------------------------------------------------------------------
00011 
00012   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00013   All rights reserved.
00014   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00015 
00016      This software is distributed WITHOUT ANY WARRANTY; without even
00017      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00018      PURPOSE.  See the above copyright notice for more information.
00019 
00020 =========================================================================*/
00021 
00042 #ifndef __vtkArrayData_h
00043 #define __vtkArrayData_h
00044 
00045 #include "vtkArray.h"
00046 #include "vtkDataObject.h"
00047 
00048 class vtkArray;
00049 
00050 class VTK_FILTERING_EXPORT vtkArrayData : public vtkDataObject
00051 {
00052 public:
00053   static vtkArrayData* New();
00054   vtkTypeMacro(vtkArrayData, vtkDataObject);
00055   void PrintSelf(ostream &os, vtkIndent indent);
00056 
00057   static vtkArrayData* GetData(vtkInformation* info);
00058   static vtkArrayData* GetData(vtkInformationVector* v, int i = 0);
00059 
00061   void AddArray(vtkArray*);
00062   
00064   void ClearArrays();
00065   
00067   vtkIdType GetNumberOfArrays();
00068   
00070   vtkArray* GetArray(vtkIdType index);
00071   
00073   vtkArray* GetArrayByName(const char *name);
00074 
00076   virtual int GetDataObjectType() {return VTK_ARRAY_DATA;}
00077 
00078   virtual void ShallowCopy(vtkDataObject* other);
00079   virtual void DeepCopy(vtkDataObject* other);
00080 
00081 protected:
00082   vtkArrayData();
00083   ~vtkArrayData();
00084 
00085 private:
00086   vtkArrayData(const vtkArrayData&); // Not implemented
00087   void operator=(const vtkArrayData&); // Not implemented
00088 
00089 //BTX
00090   class implementation;
00091   implementation* const Implementation;
00092 //ETX
00093 };
00094 
00095 #endif
00096