|
#include <MercuryData.h>
Public Member Functions | |
bool | operator!= (MercuryTimeStepIterator< NDIMS > other) const |
Not-equals operator, as defined for ForwardIterators. More... | |
MercuryTimeStep< NDIMS > & | operator* () |
Dereference operator, as defined for ForwardIterators. More... | |
const MercuryTimeStep< NDIMS > & | operator* () const |
Const dereference operator, as defined for constant ForwardIterators. More... | |
void | operator++ () |
Pre-increment operator, as defined for ForwardIterators This method populates the time step, including all the particles in there. It also resizes the backing storage mechanism. More... | |
Private Member Functions | |
MercuryTimeStepIterator () | |
MercuryTimeStepIterator (MercuryDataFile *pData) | |
Private Attributes | |
MercuryTimeStep< NDIMS > | lastReadTimeStep_ |
bool | isEOFTimeStep_ |
MercuryDataFile * | dataFile_ |
Friends | |
class | MercuryDataFile |
Lazy time step iterator Only loads the current time step and discards this as soon as it is incremented. This is a ForwardIterator as described by the C++11 standard This iterator invalidates any references to its dereferenced value when incremented.
|
inlineprivate |
EOF TimeStepIterator constructor, as used by MercuryDataFile::end()
|
inlineprivate |
Beginning-of-file TimeStepIterator constructor, as used by MercuryDataFile::begin()
[in] | pData | Pointer to the MercuryDataFile, which is required for the backing std::ifstream |
References MercuryTimeStepIterator< NDIMS >::lastReadTimeStep_.
|
inline |
Not-equals operator, as defined for ForwardIterators.
References MercuryTimeStepIterator< NDIMS >::isEOFTimeStep_.
|
inline |
Dereference operator, as defined for ForwardIterators.
References MercuryTimeStepIterator< NDIMS >::lastReadTimeStep_.
|
inline |
Const dereference operator, as defined for constant ForwardIterators.
References MercuryTimeStepIterator< NDIMS >::lastReadTimeStep_.
void MercuryTimeStepIterator< NDIMS >::operator++ |
Pre-increment operator, as defined for ForwardIterators This method populates the time step, including all the particles in there. It also resizes the backing storage mechanism.
References MercuryTimeStepIterator< NDIMS >::dataFile_, MercuryDataFile::file_, MercuryTimeStepIterator< NDIMS >::isEOFTimeStep_, and MercuryTimeStepIterator< NDIMS >::lastReadTimeStep_.
|
friend |
|
private |
Pointer to the MercuryDataFile and the backing std::ifstream, which is required for reading
Referenced by MercuryTimeStepIterator< NDIMS >::operator++().
|
private |
Status flag for EOF checking
Referenced by MercuryTimeStepIterator< NDIMS >::operator!=(), and MercuryTimeStepIterator< NDIMS >::operator++().
|
private |
The complete last read time step, used for caching
Referenced by MercuryTimeStepIterator< NDIMS >::MercuryTimeStepIterator(), MercuryTimeStepIterator< NDIMS >::operator*(), and MercuryTimeStepIterator< NDIMS >::operator++().