|
VTK
9.1.0
|
Go to the documentation of this file.
84#ifndef vtkDataArrayIteratorMacro_h
85#define vtkDataArrayIteratorMacro_h
95#define _vtkDAIMUnused __attribute__((unused))
100#define vtkDataArrayIteratorMacro(_array, _call) \
102 vtkAbstractArray* _aa(_array); if (vtkAOSDataArrayTemplate<VTK_TT>* _dat = \
103 vtkAOSDataArrayTemplate<VTK_TT>::FastDownCast(_aa)) { \
104 typedef VTK_TT vtkDAValueType; \
105 typedef vtkAOSDataArrayTemplate<vtkDAValueType> vtkDAContainerType; \
106 typedef vtkDAContainerType::Iterator vtkDAIteratorType; \
107 vtkDAIteratorType vtkDABegin(_dat->Begin()); \
108 vtkDAIteratorType vtkDAEnd(_dat->End()); \
112 } else if (vtkTypedDataArray<VTK_TT>* _tda = vtkTypedDataArray<VTK_TT>::FastDownCast(_aa)) { \
113 typedef VTK_TT vtkDAValueType; \
114 typedef vtkTypedDataArray<vtkDAValueType> vtkDAContainerType; \
115 typedef vtkDAContainerType::Iterator vtkDAIteratorType; \
116 vtkDAIteratorType vtkDABegin(_tda->Begin()); \
117 vtkDAIteratorType vtkDAEnd(_tda->End()); \
124 typedef VTK_TT vtkDAValueType; \
125 typedef vtkAbstractArray vtkDAContainerType _vtkDAIMUnused; \
126 typedef vtkDAValueType* vtkDAIteratorType; \
127 vtkDAIteratorType vtkDABegin = static_cast<vtkDAIteratorType>(_aa->GetVoidPointer(0)); \
128 vtkDAIteratorType vtkDAEnd = vtkDABegin + _aa->GetMaxId() + 1; \