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

vtkCompositeDataSet.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCompositeDataSet.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 =========================================================================*/
00038 #ifndef __vtkCompositeDataSet_h
00039 #define __vtkCompositeDataSet_h
00040 
00041 #include "vtkDataObject.h"
00042 
00043 class vtkCompositeDataIterator;
00044 class vtkCompositeDataVisitor;
00045 
00046 class VTK_FILTERING_EXPORT vtkCompositeDataSet : public vtkDataObject
00047 {
00048 public:
00049   vtkTypeRevisionMacro(vtkCompositeDataSet,vtkDataObject);
00050   void PrintSelf(ostream& os, vtkIndent indent);
00051 
00054   virtual vtkCompositeDataIterator* NewIterator() = 0;
00055 
00058   virtual vtkCompositeDataVisitor* NewVisitor() = 0;
00059 
00062   virtual int GetDataObjectType() {return VTK_COMPOSITE_DATA_SET;}
00063 
00065   virtual void Initialize();
00066 
00068 
00070   void SetUpdateExtent(int piece, int numPieces, int ghostLevel);
00071   void SetUpdateExtent(int piece, int numPieces)
00072     {this->SetUpdateExtent(piece, numPieces, 0);}
00073   void GetUpdateExtent(int &piece, int &numPieces, int &ghostLevel);
00075 
00077 
00078   virtual int* GetUpdateExtent();
00079   virtual void GetUpdateExtent(int& x0, int& x1, int& y0, int& y1,
00080                                int& z0, int& z1);
00081   virtual void GetUpdateExtent(int extent[6]);
00083 
00085 
00089   void SetUpdateExtent( int x1, int x2, int y1, int y2, int z1, int z2 )
00090     { this->Superclass::SetUpdateExtent( x1, x2, y1, y2, z1, z2 ); };
00091   void SetUpdateExtent( int ext[6] )
00092     { this->Superclass::SetUpdateExtent( ext ); };
00094 
00095 protected:
00096   vtkCompositeDataSet();
00097   ~vtkCompositeDataSet();
00098 
00099 private:
00100   vtkCompositeDataSet(const vtkCompositeDataSet&);  // Not implemented.
00101   void operator=(const vtkCompositeDataSet&);  // Not implemented.
00102 };
00103 
00104 #endif
00105