+void GetNanoseconds( uint64_t& timeInNanoseconds );
+
+/**
+ * @brief Sleeps until the monotonic time specified since some unspecified starting point (usually the boot time).
+ *
+ * If the time specified has already passed, then it returns immediately.
+ *
+ * @param[in] timeInNanoseconds The time to sleep until
+ *
+ * @note The maximum value timeInNanoseconds can hold is 0xFFFFFFFFFFFFFFFF which is 1.844674407e+19. Therefore, this can overflow after approximately 584 years.
+ */
+void SleepUntil( uint64_t timeInNanoseconds );