The Timer class provides repetitive and single-shot timers.  
 More...
#include <zypp-core/zyppng/base/timer.h>
|  | 
|  | ~Timer () override | 
| void | setSingleShot (bool singleShot=true) | 
|  | Sets the timer to trigger only once, after it has expired once. 
 | 
| bool | singleShot () const | 
| uint64_t | started () const | 
| uint64_t | interval () const | 
| uint64_t | remaining () const | 
| uint64_t | elapsed () const | 
| uint64_t | expires () const | 
| uint64_t | expire () | 
|  | Advances the internal clock of the timer, if the timer expires the sigExpired signal is emitted. 
 | 
| bool | isRunning () const | 
| void | start () | 
| void | start (uint64_t timeout) | 
|  | Starts the timer, if the timer is already running this will restart the currently running timer. 
 | 
| void | stop () | 
|  | Stops the timer if it is running. The. 
 | 
| SignalProxy< void(Timer &t)> | sigExpired () | 
|  | This signal is always emitted when the timer expires. 
 | 
|  | Base () | 
| virtual | ~Base () | 
| WeakPtr | parent () const | 
| void | addChild (const Base::Ptr &child) | 
| void | removeChild (const Ptr &child) | 
| const std::unordered_set< Ptr > & | children () const | 
| std::thread::id | threadId () const | 
| template<typename T> | 
| std::vector< std::weak_ptr< T > > | findChildren () const | 
| template<typename T> | 
| std::shared_ptr< T > | shared_this () const | 
| template<typename T> | 
| std::shared_ptr< T > | shared_this () | 
| template<typename T> | 
| std::weak_ptr< T > | weak_this () const | 
| template<typename T> | 
| std::weak_ptr< T > | weak_this () | 
| template<typename SenderFunc, typename ReceiverFunc> | 
| auto | connect (SenderFunc &&sFun, typename internal::MemberFunction< ReceiverFunc >::ClassType &recv, ReceiverFunc &&rFunc) | 
| template<typename SenderFunc, typename ReceiverFunc, typename ... Tracker> | 
| std::enable_if_t< std::is_member_function_pointer_v< SenderFunc >, connection > | connectFunc (SenderFunc &&sFun, ReceiverFunc &&rFunc, const Tracker &...trackers) | 
|  | 
| static std::shared_ptr< Timer > | create () | 
|  | Creates a new Timer object, the timer is not started at this point. 
 | 
| static uint64_t | now () | 
| static uint64_t | elapsedSince (const uint64_t start) | 
| template<typename Obj, typename Functor> | 
| static decltype(auto) | make_base_slot (Obj *o, Functor &&f) | 
| template<typename SenderFunc, typename ReceiverFunc> | 
| static auto | connect (typename internal::MemberFunction< SenderFunc >::ClassType &s, SenderFunc &&sFun, typename internal::MemberFunction< ReceiverFunc >::ClassType &recv, ReceiverFunc &&rFunc) | 
| template<typename SenderFunc, typename ReceiverFunc, typename ... Tracker> | 
| static auto | connectFunc (typename internal::MemberFunction< SenderFunc >::ClassType &s, SenderFunc &&sFun, ReceiverFunc &&rFunc, const Tracker &...trackers) | 
The Timer class provides repetitive and single-shot timers. 
Provides a high level interface for timers. To use it, create a Timer and connect a slot to its 
- See also
- sigExpired signal.
t1->sigExpired().connect( sigc::mem_fun(this, &HandlerClass::timeout) );
t1->start(1000);
static std::shared_ptr< Timer > create()
Creates a new Timer object, the timer is not started at this point.
std::shared_ptr< Timer > Ptr
 The timeout slot will now be called every second.
- Note
- The accuracy of the timer should be around 1ms , but also depends on the underlying hardware. 
Definition at line 44 of file timer.h.
◆ Ptr
◆ WeakPtr
◆ ~Timer()
  
  | 
        
          | zyppng::Timer::~Timer | ( |  | ) |  |  | override | 
 
 
◆ Timer()
◆ create()
  
  | 
        
          | std::shared_ptr< Timer > zyppng::Timer::create | ( |  | ) |  |  | static | 
 
Creates a new Timer object, the timer is not started at this point. 
Definition at line 52 of file timer.cc.
 
 
◆ setSingleShot()
      
        
          | void zyppng::Timer::setSingleShot | ( | bool | singleShot = true | ) |  | 
      
 
Sets the timer to trigger only once, after it has expired once. 
- See also
- start needs to be called again 
Definition at line 60 of file timer.cc.
 
 
◆ singleShot()
      
        
          | bool zyppng::Timer::singleShot | ( |  | ) | const | 
      
 
- Returns
- true if the timer is a single shot timer 
Definition at line 65 of file timer.cc.
 
 
◆ now()
  
  | 
        
          | uint64_t zyppng::Timer::now | ( |  | ) |  |  | static | 
 
- Returns
- The current monotonic system time in milliseconds 
Definition at line 70 of file timer.cc.
 
 
◆ elapsedSince()
  
  | 
        
          | uint64_t zyppng::Timer::elapsedSince | ( | const uint64_t | start | ) |  |  | static | 
 
- Returns
- the time that has elapsed since the timepoint given in start 
Definition at line 83 of file timer.cc.
 
 
◆ started()
      
        
          | uint64_t zyppng::Timer::started | ( |  | ) | const | 
      
 
- Returns
- the monotonic system time when the timer started 
Definition at line 89 of file timer.cc.
 
 
◆ interval()
      
        
          | uint64_t zyppng::Timer::interval | ( |  | ) | const | 
      
 
- Returns
- the requested interval in milliseconds 
Definition at line 94 of file timer.cc.
 
 
◆ remaining()
      
        
          | uint64_t zyppng::Timer::remaining | ( |  | ) | const | 
      
 
- Returns
- the remaining time until the timer expires in milliseconds 
Definition at line 99 of file timer.cc.
 
 
◆ elapsed()
      
        
          | uint64_t zyppng::Timer::elapsed | ( |  | ) | const | 
      
 
- Returns
- the time that has elapsed since the last call to start in milliseconds 
Definition at line 109 of file timer.cc.
 
 
◆ expires()
      
        
          | uint64_t zyppng::Timer::expires | ( |  | ) | const | 
      
 
- Returns
- the monotonic system time in ms when the timer is about to expire 
Definition at line 115 of file timer.cc.
 
 
◆ expire()
      
        
          | uint64_t zyppng::Timer::expire | ( |  | ) |  | 
      
 
Advances the internal clock of the timer, if the timer expires the sigExpired signal is emitted. 
- Returns
- the monotonic system time in ms when the timer is about to expire 
- Note
- There should not be any reason to call this manually, the 
- See also
- EventDispatcher is taking care of that 
Definition at line 125 of file timer.cc.
 
 
◆ isRunning()
      
        
          | bool zyppng::Timer::isRunning | ( |  | ) | const | 
      
 
- Returns
- if the timer is currently active 
Definition at line 144 of file timer.cc.
 
 
◆ start() [1/2]
      
        
          | void zyppng::Timer::start | ( |  | ) |  | 
      
 
Starts the timer, if the timer is already running this will restart the currently running timer 
Definition at line 149 of file timer.cc.
 
 
◆ start() [2/2]
      
        
          | void zyppng::Timer::start | ( | uint64_t | timeout | ) |  | 
      
 
Starts the timer, if the timer is already running this will restart the currently running timer. 
- Parameters
- 
  
    | timeout | the new timeout in ms |  
 
Definition at line 154 of file timer.cc.
 
 
◆ stop()
      
        
          | void zyppng::Timer::stop | ( |  | ) |  | 
      
 
Stops the timer if it is running. The. 
- See also
- sigExpired signal will not emit until 
- 
start was called again. 
Definition at line 173 of file timer.cc.
 
 
◆ sigExpired()
This signal is always emitted when the timer expires. 
Definition at line 120 of file timer.cc.
 
 
◆ EventDispatcher
The documentation for this class was generated from the following files: