VTK
vtkCompositeDataSet.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCompositeDataSet.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
39 #ifndef vtkCompositeDataSet_h
40 #define vtkCompositeDataSet_h
41 
42 #include "vtkCommonDataModelModule.h" // For export macro
43 #include "vtkDataObject.h"
44 
46 class vtkCompositeDataSetInternals;
47 class vtkInformation;
50 
51 class VTKCOMMONDATAMODEL_EXPORT vtkCompositeDataSet : public vtkDataObject
52 {
53 public:
55  void PrintSelf(ostream& os, vtkIndent indent) override;
56 
60  virtual VTK_NEWINSTANCE vtkCompositeDataIterator* NewIterator() =0;
61 
66  int GetDataObjectType() override {return VTK_COMPOSITE_DATA_SET;}
67 
73  virtual void CopyStructure(vtkCompositeDataSet* input)=0;
74 
81  virtual void SetDataSet(vtkCompositeDataIterator* iter, vtkDataObject* dataObj)=0;
82 
89  virtual vtkDataObject* GetDataSet(vtkCompositeDataIterator* iter)=0;
90 
91 
96  unsigned long GetActualMemorySize() override;
97 
99 
103  static vtkCompositeDataSet* GetData(vtkInformationVector* v, int i=0);
105 
109  void Initialize() override;
110 
112 
115  void ShallowCopy(vtkDataObject *src) override;
116  void DeepCopy(vtkDataObject *src) override;
118 
124  virtual vtkIdType GetNumberOfPoints();
125 
131  virtual vtkIdType GetNumberOfCells();
132 
136  static vtkInformationStringKey* NAME();
137 
145  static vtkInformationIntegerKey* CURRENT_PROCESS_CAN_LOAD_BLOCK();
146 
147  protected:
149  ~vtkCompositeDataSet() override;
150  private:
151 
152  vtkCompositeDataSet(const vtkCompositeDataSet&) = delete;
153  void operator=(const vtkCompositeDataSet&) = delete;
154 
155 };
156 
157 #endif
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDataObject * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
Store vtkAlgorithm input/output information.
#define VTK_COMPOSITE_DATA_SET
Definition: vtkType.h:102
virtual void Initialize()
Restore data object to initial state,.
int vtkIdType
Definition: vtkType.h:347
Key for string values in vtkInformation.
superclass for composite data iterators
abstract superclass for composite (multi-block or AMR) datasets
a simple class to control print indentation
Definition: vtkIndent.h:39
Key for integer values in vtkInformation.
virtual unsigned long GetActualMemorySize()
Return the actual size of the data in kibibytes (1024 bytes).
#define VTK_NEWINSTANCE
int GetDataObjectType() override
Return class name of data type (see vtkType.h for definitions).
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:64
virtual void DeepCopy(vtkDataObject *src)
Shallow and Deep copy.
virtual void ShallowCopy(vtkDataObject *src)
Shallow and Deep copy.