-void GetNanoseconds( uint64_t& timeInNanoseconds );
-
-#define DALI_LOG_TIMER_START( timeVariable ) \
- uint64_t timeVariable##1; \
- Debug::GetNanoseconds( timeVariable##1 );
-
-#define DALI_LOG_TIMER_END( timeVariable, filter, level, preString) \
- uint64_t timeVariable##2; \
- Debug::GetNanoseconds( timeVariable##2 ); \
- DALI_LOG_INFO( filter, level, preString " %ld uSec\n", ((timeVariable##2-timeVariable##1)/1000));
+/**
+ * @brief Get the monotonic time since the clock's epoch.
+ *
+ * @param[out] timeInNanoseconds The time in nanoseconds since the reference point.
+ *
+ * @note The maximum value timeInNanoseconds can hold is 0xFFFFFFFFFFFFFFFF which is 1.844674407e+19. Therefore, this can overflow after approximately 584 years.
+ */
+void GetNanoseconds(uint64_t& timeInNanoseconds);
+
+#define DALI_LOG_TIMER_START(timeVariable) \
+ uint64_t timeVariable##1; \
+ Debug::GetNanoseconds(timeVariable##1);
+
+#define DALI_LOG_TIMER_END(timeVariable, filter, level, preString) \
+ uint64_t timeVariable##2; \
+ Debug::GetNanoseconds(timeVariable##2); \
+ DALI_LOG_INFO(filter, level, preString " %ld uSec\n", ((timeVariable##2 - timeVariable##1) / 1000));