|
#include <MercuryData.h>
Public Member Functions | |
double | getTime () const |
Gets the time associated with this time step. More... | |
std::size_t | getTimeStepID () const |
Gets the time step ID Returns the time step ID, which is a consecutively ascending number unique for the time step. More... | |
std::size_t | getNumberOfParticles () const |
Gets the number of particles recorded in this time step. More... | |
std::size_t | size () const |
Gets the number of particles recorded in this time step. More... | |
constexpr std::size_t | getNumberOfDimensions () const |
returns the number of dimensions used. More... | |
std::vector< MercuryParticle< NDIMS > >::iterator | begin () |
Iterator functions for range based for loops. More... | |
std::vector< MercuryParticle< NDIMS > >::const_iterator | begin () const |
Iterator functions for range based for loops. More... | |
std::vector< MercuryParticle< NDIMS > >::iterator | end () |
Iterator functions for range based for loops. More... | |
std::vector< MercuryParticle< NDIMS > >::const_iterator | end () const |
Iterator functions for range based for loops. More... | |
MercuryParticle< NDIMS > & | operator[] (std::size_t idx) |
Random access function into the particles. More... | |
const MercuryParticle< NDIMS > & | operator[] (std::size_t idx) const |
Random access function into the particles. More... | |
Private Member Functions | |
MercuryTimeStep (std::size_t id, MercuryDataFile *pData) | |
Constructor used by the MercuryTimeStepIterator, to flag a functional time step. More... | |
MercuryTimeStep () | |
EOF-TimeStep constructor used by MercuryTimeStepIterator (and MercuryDataFile::isMercury3DDataFile()) More... | |
Private Attributes | |
double | time_ |
std::size_t | ID_ |
std::size_t | numParticles_ |
double | min_ [NDIMS] |
double | max_ [NDIMS] |
MercuryDataFile * | dataFile_ |
std::vector< MercuryParticle< NDIMS > > | storage_ |
Friends | |
class | MercuryTimeStepIterator< NDIMS > |
class | MercuryDataFile |
template<std::size_t NDIMS2> | |
std::istream & | operator>> (std::istream &, MercuryTimeStep< NDIMS2 > &) |
Full time step in the Mercury 3D .data format. This holds all the particles used in this time step.
|
inlineprivate |
Constructor used by the MercuryTimeStepIterator, to flag a functional time step.
[in] | id | The unique ID given to this particle |
[in,out] | pData | A pointer to the MercuryDataFile, which contains the backing std::ifstream |
|
inlineprivate |
EOF-TimeStep constructor used by MercuryTimeStepIterator (and MercuryDataFile::isMercury3DDataFile())
|
inline |
Iterator functions for range based for loops.
References MercuryTimeStep< NDIMS >::storage_.
|
inline |
Iterator functions for range based for loops.
References MercuryTimeStep< NDIMS >::storage_.
|
inline |
Iterator functions for range based for loops.
References MercuryTimeStep< NDIMS >::storage_.
|
inline |
Iterator functions for range based for loops.
References MercuryTimeStep< NDIMS >::storage_.
|
inlineconstexpr |
|
inline |
Gets the number of particles recorded in this time step.
References MercuryTimeStep< NDIMS >::numParticles_.
|
inline |
Gets the time associated with this time step.
References MercuryTimeStep< NDIMS >::time_.
|
inline |
Gets the time step ID Returns the time step ID, which is a consecutively ascending number unique for the time step.
References MercuryTimeStep< NDIMS >::ID_.
|
inline |
Random access function into the particles.
References MercuryTimeStep< NDIMS >::storage_.
|
inline |
Random access function into the particles.
References MercuryTimeStep< NDIMS >::storage_.
|
inline |
Gets the number of particles recorded in this time step.
References MercuryTimeStep< NDIMS >::numParticles_.
|
friend |
|
friend |
|
friend |
|
private |
Pointer to the base file, required for the backing std::ifstream
|
private |
Unique ID associated with this MercuryTimeStep
Referenced by MercuryTimeStep< NDIMS >::getTimeStepID().
|
private |
Referenced by operator>>().
|
private |
Minima and maxima of the AABB of the domain; none of these are used.
Referenced by operator>>().
|
private |
Cached count of particles in this MercuryTimeStep
Referenced by MercuryTimeStep< NDIMS >::getNumberOfParticles(), operator>>(), and MercuryTimeStep< NDIMS >::size().
|
private |
Backing storage vector used for the particles in this time step
Referenced by MercuryTimeStep< NDIMS >::begin(), MercuryTimeStep< NDIMS >::end(), and MercuryTimeStep< NDIMS >::operator[]().
|
private |
Time associated with this MercuryTimeStep
Referenced by MercuryTimeStep< NDIMS >::getTime(), and operator>>().