/* * (c) Copyright, Real-Time Innovations, 2002-2024. * All rights reserved. * * No duplications, whole or partial, manual or electronic, may be made * without express written permission. Any such copies, or * revisions thereof, must display this notice unaltered. * This code contains trade secrets of Real-Time Innovations, Inc. */ #ifndef clock_system_h #define clock_system_h #include "clock/clock_interface.h" #include "clock/clock_dll.h" #ifdef __cplusplus extern "C" { #endif /*e \file * \brief system clock. */ /*e \defgroup RTISystemClockClass RTISystemClock * \ingroup RTIClockClass * * Low resolution (generally not good enough to use in performance * measurement) clock. Not synchronized to any time standard. * * @see RTIHighResolutionClock */ struct RTISystemClock; /*e \ingroup RTISystemClockClass * \brief Destroy a previously created system clock * * @pre unused system clock * * @post if valid, made invalid and resource returned. * * @exception none. */ extern RTIClockDllExport void RTISystemClock_delete(struct RTIClock *me); /*e \ingroup RTISystemClockClass * \brief Create a new system clock * * @pre Valid pointer to store the allocated clock pointer * * @post On success, the clock is created and ready to provide the current time. * * @exception RTI_LOG_PRECONDITION_FAILURE * @exception RTI_LOG_MALLOC_FAILURE * @exception RTI_LOG_CREATION_FAILURE_s * * @return Pointer to the newly created system clock on success, NULL otherwise. * * @see RTISystemClock_delete */ extern RTIClockDllExport struct RTIClock *RTISystemClock_new(void); #ifdef __cplusplus } /* extern "C" */ #endif #endif /* clock_system_h */