Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
LUPI::Timer Class Reference

#include <LUPI.hpp>

Public Member Functions

 Timer ()
 ~Timer ()
DeltaTime deltaTime ()
DeltaTime deltaTimeAndReset ()
void reset ()

Detailed Description

Definition at line 374 of file LUPI.hpp.

Constructor & Destructor Documentation

◆ Timer()

LUPI::Timer::Timer ( )

Constructor.

Definition at line 95 of file LUPI_times.cc.

95 {
96
97 reset( );
98}

◆ ~Timer()

LUPI::Timer::~Timer ( )
inline

Definition at line 384 of file LUPI.hpp.

384{ }

Member Function Documentation

◆ deltaTime()

DeltaTime LUPI::Timer::deltaTime ( )

Returns a DeltaTime instance representing the time since this was created or reset was called.

Returns
A DeltaTime representing the time since this was created or reset was called.

Definition at line 106 of file LUPI_times.cc.

106 {
107
108 struct timeval wallTime;
109 clock_t CPU_time = clock( );
110 gettimeofday( &wallTime, 0 );
111
112 double dWallTime = static_cast<double>( wallTime.tv_sec - m_wallTime.tv_sec )
113 + 1e-6 * static_cast<double>( wallTime.tv_usec - m_wallTime.tv_usec );
114 double dCPU_time = double( CPU_time - m_CPU_time ) / CLOCKS_PER_SEC;
115
116 double dWallTimeIncremental = static_cast<double>( wallTime.tv_sec - m_wallTimeIncremental.tv_sec )
117 + 1e-6 * static_cast<double>( wallTime.tv_usec - m_wallTimeIncremental.tv_usec );
118 double dCPU_timeIncremental = double( CPU_time - m_CPU_timeIncremental ) / CLOCKS_PER_SEC;
119
120 m_CPU_timeIncremental = CPU_time;
121 m_wallTimeIncremental = wallTime;
122
123 return( DeltaTime( dCPU_time, dWallTime, dCPU_timeIncremental, dWallTimeIncremental ) );
124}

Referenced by deltaTimeAndReset().

◆ deltaTimeAndReset()

DeltaTime LUPI::Timer::deltaTimeAndReset ( )

Calls deltaTime and then reset. Returns the results of the call to deltaTime.

Returns
A DeltaTime representing the time since this was created or reset was called.

Definition at line 132 of file LUPI_times.cc.

132 {
133
134 DeltaTime deltaTime1 = deltaTime( );
135 reset( );
136
137 return( deltaTime1 );
138}
DeltaTime deltaTime()

◆ reset()

void LUPI::Timer::reset ( )

Resets the internal times to the current time.

Definition at line 144 of file LUPI_times.cc.

144 {
145
146 m_CPU_time = clock( );
147 gettimeofday( &m_wallTime, 0 );
148 m_CPU_timeIncremental = m_CPU_time;
149 m_wallTimeIncremental = m_wallTime;
150}

Referenced by deltaTimeAndReset(), and Timer().


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