    

 ## On this page

  

 

 # clock

 Last update: 16.07.2025 

<a name="l00001"></a> 1 

<a name="l00005"></a> 5 

<a name="l00006"></a> 6 \#pragma once

<a name="l00007"></a> 7 

<a name="l00008"></a> 8 \#include "core/time/i\_clock/i\_clock.h"

<a name="l00009"></a> 9 

<a name="l00014"></a> 14 namespace [simulation\_framework](namespacesimulation__framework.xhtml)

<a name="l00015"></a> 15 {

<a name="l00016"></a> 16 namespace [core](namespacecore.xhtml)

<a name="l00017"></a> 17 {

<a name="l00018"></a> 18 namespace [time](namespacetime.xhtml)

<a name="l00019"></a> 19 {

<a name="l00020"></a> 20 

<a name="l00022"></a> 22 

<a name="l00027"></a>[ 27](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml) class [Clock](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml) : public [IClock](classsimulation__framework_1_1core_1_1time_1_1IClock.xhtml)

<a name="l00028"></a> 28 {

<a name="l00029"></a> 29 public:

<a name="l00030"></a> 30 [Clock](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml)(const milliseconds&amp; ms = milliseconds(0));

<a name="l00031"></a> 31 void [SetNow](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml#a6742585d7fab0823c46e9008fe2c7400)(const milliseconds&amp; ms) override;

<a name="l00032"></a> 32 void [SetNow](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml#a6742585d7fab0823c46e9008fe2c7400)(const Timestamp&amp; timestamp) override;

<a name="l00033"></a> 33 milliseconds [GetNow](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml#a42892510ffaad796e1e6944e57b4541b)() const override;

<a name="l00034"></a> 34 Timestamp [GetNowAsTimestamp](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml#a1ce05facc1733248af0c7d0126904442)() const override;

<a name="l00035"></a> 35 void [IncrementBy](classsimulation__framework_1_1core_1_1time_1_1Clock.xhtml#a4b6110fac75c44e37fa2fef35e551fc5)(const milliseconds&amp; ms) override;

<a name="l00036"></a> 36 

<a name="l00037"></a> 37 private:

<a name="l00038"></a> 38 timepoint&lt;milliseconds&gt; ms_;

<a name="l00039"></a> 39 };

<a name="l00040"></a> 40 

<a name="l00041"></a> 41 } // namespace time

<a name="l00042"></a> 42 } // namespace core

<a name="l00043"></a> 43 } // namespace simulation\_framework