Chombo + EB + MF  3.2
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
TimedDataIterator Class Reference

#include <TimedDataIterator.H>

Inheritance diagram for TimedDataIterator:
Inheritance graph
[legend]

Public Member Functions

virtual ~TimedDataIterator ()
 
virtual bool ok () const
 return true if this iterator is still in its Layout More...
 
virtual void operator++ ()
 move the iterator to the next Box in the layout More...
 
void clearTime ()
 sets m_time values to zero More...
 
Vector< unsigned long long > & getTime ()
 gets current time data More...
 
Vector< BoxgetBoxes ()
 
const Vector< unsigned long long > & getTime () const
 gets current time data in microseconds More...
 
void enableTime ()
 enables timing. does not set to zero. use clear time for that More...
 
void disableTime ()
 turns off timing More...
 
void mergeTime ()
 After you are finished timing your local elements, call mergeTimes to fill-in off-processor times. More...
 
- Public Member Functions inherited from DataIterator
virtual ~DataIterator ()
 
 DataIterator ()
 
 DataIterator (const BoxLayout &a_layout)
 
const DataIndexoperator() () const
 return the index that this iterator is at More...
 
DataIndex i () const
 return a copy of the index that this iterator is at More...
 
int size () const
 
DataIndex operator[] (int ivec) const
 
void clearTime ()
 load balancing function. no-op in serial More...
 
void clearPeak ()
 load balancing function. no-op in serial More...
 
Vector< unsigned long long > getTime () const
 load balancing function. no-op in serial More...
 
Vector< unsigned long long > getPeak () const
 
Vector< BoxgetBoxes ()
 
void enableTime ()
 load balancing function. no-op in serial More...
 
void enablePeak ()
 
void disableTime ()
 load balancing function. no-op in serial More...
 
void disablePeak ()
 
void mergeTime ()
 load balancing function. no-op in serial More...
 
void mergePeak ()
 
- Public Member Functions inherited from LayoutIterator
 LayoutIterator ()
 a null constructed LayoutIterator will return false on ok() More...
 
virtual ~LayoutIterator ()
 
const LayoutIndexoperator() () const
 return the index that this iterator is at More...
 
LayoutIndex i () const
 return a copy of the index that this iterator is at More...
 
void incr ()
 move the iterator to the next Box in the layout More...
 
void begin ()
 initialize this iterator to the first Box in its Layout More...
 
void reset ()
 same as begin() More...
 
void end ()
 move this iterator to after the last Box in the layout More...
 
const LayoutIndexoperator[] (int ivec) const
 
LayoutIndexoperator[] (int ivec)
 

Private Member Functions

void defineTime ()
 
 TimedDataIterator ()
 
 TimedDataIterator (const BoxLayout &boxlayout, const int *layoutID)
 

Private Attributes

int m_size
 
Vector< unsigned long long > m_time
 
bool m_timeEnabled
 
bool m_timeDefined
 
unsigned long long m_startTime
 
int m_ibox
 

Friends

class BoxLayout
 
class DisjointBoxLayout
 

Additional Inherited Members

- Protected Member Functions inherited from DataIterator
 DataIterator (const BoxLayout &boxlayout, const int *layoutID)
 
- Protected Member Functions inherited from LayoutIterator
 LayoutIterator (const BoxLayout &a_boxlayout, const int *a_layoutID)
 
- Protected Attributes inherited from LayoutIterator
BoxLayout m_layout
 
RefCountedPtr< Vector< LayoutIndex > > m_indicies
 
unsigned int m_current
 

Constructor & Destructor Documentation

◆ ~TimedDataIterator()

virtual TimedDataIterator::~TimedDataIterator ( )
inlinevirtual

References clearTime(), ok(), and operator++().

◆ TimedDataIterator() [1/2]

TimedDataIterator::TimedDataIterator ( )
private

◆ TimedDataIterator() [2/2]

TimedDataIterator::TimedDataIterator ( const BoxLayout boxlayout,
const int *  layoutID 
)
private

Member Function Documentation

◆ ok()

virtual bool TimedDataIterator::ok ( ) const
virtual

return true if this iterator is still in its Layout

Reimplemented from LayoutIterator.

Referenced by ~TimedDataIterator().

◆ operator++()

virtual void TimedDataIterator::operator++ ( )
virtual

move the iterator to the next Box in the layout

Reimplemented from LayoutIterator.

Referenced by ~TimedDataIterator().

◆ clearTime()

void TimedDataIterator::clearTime ( )

sets m_time values to zero

Referenced by ~TimedDataIterator().

◆ getTime() [1/2]

Vector<unsigned long long>& TimedDataIterator::getTime ( )
inline

gets current time data

References m_time.

◆ getBoxes()

Vector<Box> TimedDataIterator::getBoxes ( )
inline

◆ getTime() [2/2]

const Vector<unsigned long long>& TimedDataIterator::getTime ( ) const
inline

gets current time data in microseconds

References m_time.

◆ enableTime()

void TimedDataIterator::enableTime ( )
inline

enables timing. does not set to zero. use clear time for that

References defineTime(), and m_timeEnabled.

◆ disableTime()

void TimedDataIterator::disableTime ( )
inline

turns off timing

References m_timeEnabled, and mergeTime().

◆ mergeTime()

void TimedDataIterator::mergeTime ( )

After you are finished timing your local elements, call mergeTimes to fill-in off-processor times.

Referenced by disableTime().

◆ defineTime()

void TimedDataIterator::defineTime ( )
private

Referenced by enableTime().

Friends And Related Function Documentation

◆ BoxLayout

friend class BoxLayout
friend

◆ DisjointBoxLayout

friend class DisjointBoxLayout
friend

Member Data Documentation

◆ m_size

int TimedDataIterator::m_size
private

◆ m_time

Vector<unsigned long long> TimedDataIterator::m_time
private

Referenced by getTime().

◆ m_timeEnabled

bool TimedDataIterator::m_timeEnabled
private

Referenced by disableTime(), and enableTime().

◆ m_timeDefined

bool TimedDataIterator::m_timeDefined
private

◆ m_startTime

unsigned long long TimedDataIterator::m_startTime
private

◆ m_ibox

int TimedDataIterator::m_ibox
private

The documentation for this class was generated from the following file: