Field3D
|
#include <SparseField.h>
Public Types | |
typedef SparseField< Data_T > | class_type |
Public Member Functions | |
iterator (class_type &field, const Box3i &window, const V3i ¤tPos, int blockOrder) | |
bool | operator!= (const iterator &rhs) const |
Data_T & | operator* () |
const iterator & | operator++ () |
Data_T * | operator-> () |
bool | operator== (const iterator &rhs) const |
Public Attributes | |
int | x |
int | y |
int | z |
Private Types | |
typedef Sparse::SparseBlock< Data_T > | Block |
Private Member Functions | |
void | setupNextBlock (int i, int j, int k) |
Convenience. More... | |
Private Attributes | |
int | m_blockI |
Current block index. More... | |
int | m_blockId |
int | m_blockJ |
int | m_blockK |
int | m_blockOrder |
Block size. More... | |
int | m_blockStepsTicker |
Ticker for how many more steps to take before resetting the pointer. More... | |
class_type * | m_field |
Reference to field we're traversing. More... | |
bool | m_isEmptyBlock |
Whether we're at an empty block and we don't increment m_p. More... | |
Data_T * | m_p |
Current pointed-to element. More... | |
Box3i | m_window |
Window to traverse. More... | |
Definition at line 1054 of file SparseField.h.
typedef SparseField<Data_T> SparseField< Data_T >::iterator::class_type |
Definition at line 1066 of file SparseField.h.
|
private |
Definition at line 1154 of file SparseField.h.
|
inline |
Definition at line 1067 of file SparseField.h.
|
inline |
Definition at line 1076 of file SparseField.h.
References SparseField< Data_T >::iterator::x.
|
inline |
Definition at line 1109 of file SparseField.h.
References SparseField< Data_T >::iterator::x, SparseField< Data_T >::iterator::y, and SparseField< Data_T >::iterator::z.
|
inline |
Definition at line 1113 of file SparseField.h.
References SparseField< Data_T >::iterator::x, SparseField< Data_T >::iterator::y, and SparseField< Data_T >::iterator::z.
|
inline |
Definition at line 1117 of file SparseField.h.
References Msg::print(), and Msg::SevWarning.
|
inline |
Definition at line 1134 of file SparseField.h.
References Msg::print(), and Msg::SevWarning.
|
inlineprivate |
Convenience.
Definition at line 1156 of file SparseField.h.
References Sparse::SparseBlock< Data_T >::emptyValue, Sparse::SparseBlock< Data_T >::isAllocated, and Sparse::SparseBlock< Data_T >::value().
int SparseField< Data_T >::iterator::x |
Definition at line 1152 of file SparseField.h.
Referenced by SparseField< Data_T >::iterator::operator!=(), SparseField< Data_T >::iterator::operator++(), and SparseField< Data_T >::iterator::operator==().
int SparseField< Data_T >::iterator::y |
Definition at line 1152 of file SparseField.h.
Referenced by SparseField< Data_T >::iterator::operator!=(), and SparseField< Data_T >::iterator::operator==().
int SparseField< Data_T >::iterator::z |
Definition at line 1152 of file SparseField.h.
Referenced by SparseField< Data_T >::iterator::operator!=(), and SparseField< Data_T >::iterator::operator==().
|
private |
Current pointed-to element.
Definition at line 1178 of file SparseField.h.
|
private |
Whether we're at an empty block and we don't increment m_p.
Definition at line 1180 of file SparseField.h.
|
private |
Ticker for how many more steps to take before resetting the pointer.
Definition at line 1182 of file SparseField.h.
|
private |
Block size.
Definition at line 1184 of file SparseField.h.
|
private |
Current block index.
Definition at line 1186 of file SparseField.h.
|
private |
Definition at line 1186 of file SparseField.h.
|
private |
Definition at line 1186 of file SparseField.h.
|
private |
Definition at line 1186 of file SparseField.h.
|
private |
Window to traverse.
Definition at line 1188 of file SparseField.h.
|
private |
Reference to field we're traversing.
Definition at line 1190 of file SparseField.h.