VTK
vtkXMLHyperOctreeWriter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkXMLHyperOctreeWriter.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 =========================================================================*/
31 #ifndef __vtkXMLHyperOctreeWriter_h
32 #define __vtkXMLHyperOctreeWriter_h
33 
34 #include "vtkXMLWriter.h"
35 
36 class vtkHyperOctree;
38 class vtkIntArray;
39 
41 {
42 public:
44  void PrintSelf(ostream& os, vtkIndent indent);
45  static vtkXMLHyperOctreeWriter* New();
46 
47  //BTX
49 
51  //ETX
53 
55  const char* GetDefaultFileExtension();
56 
57 protected:
60 
61  const char* GetDataSetName();
62 
63  // specify that we require HyperOctree input
65 
66  //The most important method, make the XML file for my input.
67  int WriteData();
68 
69  //<HyperOctree ...
70  int StartPrimElement(vtkIndent);
71 
72  //... dim, size, orgin>
74 
75  //Tree Structure
76  int WriteTopology(vtkIndent);
77 
78  //Used by WriteTopology to make and array from the Tree structure recursively
79  void SerializeTopology(vtkHyperOctreeCursor *, int);
80 
81  //Writes PointData and CellData attribute data.
82  int WriteAttributeData(vtkIndent);
83 
84  //</HyperOctree>
85  int FinishPrimElement(vtkIndent);
86 
87  //For appended mode placekeeping
89  unsigned long TopoOffset;
93 
94 private:
95  vtkXMLHyperOctreeWriter(const vtkXMLHyperOctreeWriter&); // Not implemented.
96  void operator=(const vtkXMLHyperOctreeWriter&); // Not implemented.
97 };
98 
99 #endif