VTK
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
dox
IO
vtkXMLPStructuredDataReader.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkXMLPStructuredDataReader.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
=========================================================================*/
26
#ifndef __vtkXMLPStructuredDataReader_h
27
#define __vtkXMLPStructuredDataReader_h
28
29
#include "
vtkXMLPDataReader.h
"
30
31
class
vtkExtentSplitter
;
32
class
vtkExtentTranslator
;
33
//class vtkTableExtentTranslator;
34
class
vtkXMLStructuredDataReader
;
35
36
class
VTK_IO_EXPORT
vtkXMLPStructuredDataReader
:
public
vtkXMLPDataReader
37
{
38
public
:
39
vtkTypeMacro(
vtkXMLPStructuredDataReader
,
vtkXMLPDataReader
);
40
void
PrintSelf
(ostream& os,
vtkIndent
indent);
41
46
virtual
vtkExtentTranslator
* GetExtentTranslator();
47
48
// For the specified port, copy the information this reader sets up in
49
// SetupOutputInformation to outInfo
50
virtual
void
CopyOutputInformation
(
vtkInformation
*outInfo,
int
port
);
51
protected
:
52
vtkXMLPStructuredDataReader
();
53
~
vtkXMLPStructuredDataReader
();
54
55
vtkIdType
GetNumberOfPoints
();
56
vtkIdType
GetNumberOfCells
();
57
void
CopyArrayForPoints
(
vtkDataArray
* inArray,
vtkDataArray
* outArray);
58
void
CopyArrayForCells
(
vtkDataArray
* inArray,
vtkDataArray
* outArray);
59
60
virtual
void
SetOutputExtent(
int
*
extent
)=0;
61
virtual
void
GetPieceInputExtent(
int
index
,
int
*
extent
)=0;
62
63
// Pipeline execute data driver. Called by vtkXMLReader.
64
void
ReadXMLData
();
65
int
ReadPrimaryElement
(
vtkXMLDataElement
* ePrimary);
66
67
void
SetupOutputData
();
68
69
void
SetupPieces
(
int
numPieces);
70
void
DestroyPieces
();
71
int
ReadPiece
(
vtkXMLDataElement
* ePiece);
72
int
ReadPieceData
();
73
void
CopySubExtent(
int
* inExtent,
int
* inDimensions,
vtkIdType
* inIncrements,
74
int
* outExtent,
int
* outDimensions,
vtkIdType
* outIncrements,
75
int
* subExtent,
int
* subDimensions,
76
vtkDataArray
* inArray,
vtkDataArray
* outArray);
77
int
ComputePieceSubExtents();
78
79
//vtkTableExtentTranslator* ExtentTranslator;
80
vtkExtentSplitter
*
ExtentSplitter
;
81
82
// The extent to be updated in the output.
83
int
UpdateExtent[6];
84
int
PointDimensions[3];
85
vtkIdType
PointIncrements[3];
86
int
CellDimensions[3];
87
vtkIdType
CellIncrements[3];
88
89
// The extent currently being read from a piece.
90
int
SubExtent[6];
91
int
SubPointDimensions[3];
92
int
SubCellDimensions[3];
93
int
SubPieceExtent[6];
94
int
SubPiecePointDimensions[3];
95
vtkIdType
SubPiecePointIncrements[3];
96
int
SubPieceCellDimensions[3];
97
vtkIdType
SubPieceCellIncrements[3];
98
99
// Information per-piece.
100
int
*
PieceExtents
;
101
102
virtual
int
RequestInformation
(
vtkInformation
*request,
103
vtkInformationVector
**inputVector,
104
vtkInformationVector
*outputVector);
105
106
private
:
107
vtkXMLPStructuredDataReader
(
const
vtkXMLPStructuredDataReader
&);
// Not implemented.
108
void
operator=(
const
vtkXMLPStructuredDataReader
&);
// Not implemented.
109
};
110
111
#endif
Generated on Thu Mar 13 2014 08:10:24 for VTK by
1.8.1.2