/usr/include/assa-3.5/assa/TimerCountdown.h is in libassa-3.5-5-dev 3.5.1-6.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | // -*- c++ -*-
//------------------------------------------------------------------------------
// TimerCountdown.h
//------------------------------------------------------------------------------
// Copyright (c) 1999 by Vladislav Grinchenko
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//------------------------------------------------------------------------------
// Created: 08/25/1999
//------------------------------------------------------------------------------
#ifndef TIMER_COUNTDOWN_H
#define TIMER_COUNTDOWN_H
#include "assa/TimeVal.h"
namespace ASSA {
/** @file TimerCountdown.h
*
* TimerCountdown class keep the track of the elapsed time. This class
* substracts the time elapsed between instantiation and destruction time from
* argument timeval passed to the constructor.
*/
class TimerCountdown
{
public:
/** Constructor.
*/
TimerCountdown (TimeVal* wait_time_);
/** Destructor.
*/
~TimerCountdown ();
private:
/// Maximum time to wait
TimeVal* m_maxWaitTime;
/// Time when countdown started
TimeVal m_start;
};
//------------------------------------------------------------------------------
// inlines
//------------------------------------------------------------------------------
inline
TimerCountdown::
TimerCountdown (TimeVal* wt_)
: m_maxWaitTime (wt_), m_start (TimeVal::gettimeofday ())
{
}
inline
TimerCountdown::
~TimerCountdown ()
{
if (m_maxWaitTime == NULL)
return;
TimeVal elapsed (TimeVal::gettimeofday ());
elapsed -= m_start;
if ( *m_maxWaitTime > elapsed )
*m_maxWaitTime -= elapsed;
else
*m_maxWaitTime = TimeVal::zeroTime ();
}
} // end namespace ASSA
#endif /* TIMER_COUNTDOWN_H */
|