VTK
dox
Common
DataModel
vtkImageIterator.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkImageIterator.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
=========================================================================*/
29
#ifndef vtkImageIterator_h
30
#define vtkImageIterator_h
31
32
#include "vtkCommonDataModelModule.h"
// For export macro
33
#include "
vtkSystemIncludes.h
"
34
class
vtkImageData
;
35
36
template
<
class
DType>
37
class
VTKCOMMONDATAMODEL_EXPORT
vtkImageIterator
38
{
39
public
:
40
typedef
DType *
SpanIterator
;
41
46
vtkImageIterator
();
47
51
vtkImageIterator
(
vtkImageData
*
id
,
int
*ext);
52
56
void
Initialize(
vtkImageData
*
id
,
int
*ext);
57
61
void
NextSpan();
62
66
SpanIterator
BeginSpan
()
67
{
68
return
this->Pointer;
69
}
70
74
SpanIterator
EndSpan
()
75
{
76
return
this->SpanEndPointer;
77
}
78
82
vtkTypeBool
IsAtEnd
()
83
{
84
return
(this->Pointer >= this->EndPointer);
85
}
86
87
protected
:
88
DType *
Pointer
;
89
DType *
SpanEndPointer
;
90
DType *
SliceEndPointer
;
91
DType *
EndPointer
;
92
vtkIdType
Increments[3];
93
vtkIdType
ContinuousIncrements[3];
94
};
95
96
#ifndef vtkImageIterator_cxx
97
#ifdef _MSC_VER
98
#pragma warning (push)
99
// The following is needed when the vtkImageIterator is declared
100
// dllexport and is used from another class in vtkCommonCore
101
#pragma warning (disable: 4910) // extern and dllexport incompatible
102
#endif
103
vtkExternTemplateMacro
(
104
extern
template
class
VTKCOMMONDATAMODEL_EXPORT
vtkImageIterator
105
)
106
#ifdef _MSC_VER
107
#pragma warning (pop)
108
#endif
109
#endif
110
111
#endif
112
// VTK-HeaderTest-Exclude: vtkImageIterator.h
vtkIdType
int vtkIdType
Definition:
vtkType.h:347
vtkImageIterator::EndSpan
SpanIterator EndSpan()
Return an iterator (pointer) for the end of the span.
Definition:
vtkImageIterator.h:74
vtkImageIterator::IsAtEnd
vtkTypeBool IsAtEnd()
Test if the end of the extent has been reached.
Definition:
vtkImageIterator.h:82
vtkImageIterator::BeginSpan
SpanIterator BeginSpan()
Return an iterator (pointer) for the span.
Definition:
vtkImageIterator.h:66
vtkImageIterator::SpanIterator
DType * SpanIterator
Definition:
vtkImageIterator.h:40
vtkImageIterator::SliceEndPointer
DType * SliceEndPointer
Definition:
vtkImageIterator.h:90
vtkExternTemplateMacro
#define vtkExternTemplateMacro(decl)
A macro to declare extern templates for all numerical types.
Definition:
vtkType.h:415
vtkImageData
topologically and geometrically regular array of data
Definition:
vtkImageData.h:45
vtkImageIterator::EndPointer
DType * EndPointer
Definition:
vtkImageIterator.h:91
vtkImageIterator
a simple image iterator
Definition:
vtkImageIterator.h:37
vtkImageIterator::SpanEndPointer
DType * SpanEndPointer
Definition:
vtkImageIterator.h:89
vtkImageIterator::Pointer
DType * Pointer
Definition:
vtkImageIterator.h:88
vtkTypeBool
int vtkTypeBool
Definition:
vtkABI.h:69
vtkSystemIncludes.h
Generated by
1.8.16