ParaView
vtkPVCompositeDataInformation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkPVCompositeDataInformation.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 =========================================================================*/
26 #ifndef vtkPVCompositeDataInformation_h
27 #define vtkPVCompositeDataInformation_h
28 
29 #include "vtkPVClientServerCoreCoreModule.h" //needed for exports
30 #include "vtkPVInformation.h"
31 
33 class vtkUniformGridAMR;
34 
35 struct vtkPVCompositeDataInformationInternals;
36 
37 class VTKPVCLIENTSERVERCORECORE_EXPORT vtkPVCompositeDataInformation : public vtkPVInformation
38 {
39 public:
40  static vtkPVCompositeDataInformation* New();
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
47  virtual void CopyFromObject(vtkObject*);
48 
52  virtual void AddInformation(vtkPVInformation*);
53 
55 
58  virtual void CopyToStream(vtkClientServerStream*);
59  virtual void CopyFromStream(const vtkClientServerStream*);
61 
65  virtual void Initialize();
66 
70  unsigned int GetNumberOfChildren();
71 
77  vtkPVDataInformation* GetDataInformation(unsigned int idx);
78 
84  const char* GetName(unsigned int idx);
85 
87 
93  vtkGetMacro(DataIsMultiPiece, int);
95 
97 
100  vtkGetMacro(DataIsComposite, int);
102 
103  // TODO:
104  // Add API to obtain meta data information for each of the children.
105 
106 protected:
109 
113  void CopyFromAMR(vtkUniformGridAMR* amr);
114 
117  unsigned int FlatIndexMax;
118 
119  unsigned int NumberOfPieces;
120  vtkSetMacro(NumberOfPieces, unsigned int);
121 
122  friend class vtkPVDataInformation;
124 
125 private:
126  vtkPVCompositeDataInformationInternals* Internal;
127 
129  void operator=(const vtkPVCompositeDataInformation&) VTK_DELETE_FUNCTION;
130 };
131 
132 #endif
virtual void CopyFromStream(const vtkClientServerStream *)
Manage a serialized version of the information.
Light object for holding data information.
vtkPVDataInformation * GetDataInformationForCompositeIndex(int index)
Given the flat-index for a node in a composite dataset, this method returns the data information for ...
Light object for holding composite data information.
Store messages for the interpreter.
void operator=(const vtkPVInformation &) VTK_DELETE_FUNCTION
void PrintSelf(ostream &os, vtkIndent indent)
virtual void AddInformation(vtkPVInformation *)
Merge another information object.
virtual void CopyToStream(vtkClientServerStream *)=0
Manage a serialized version of the information.
virtual void CopyFromObject(vtkObject *)
Transfer information about a single object into this object.
Superclass for information objects.
friend class vtkPVCompositeDataInformation