Generated from cl_timer.h with ROBODoc v3.2.3 on Sat Jan 18 07:05:18 2003

TABLE OF CONTENTS

  1. Component Library/Timer
  2. Component Library: Time Stamp/cl_get_time_stamp
  3. Component Library: Time Stamp/cl_get_time_stamp_sec
  4. Component Library: Timer/cl_pfn_timer_callback_t
  5. Component Library: Timer/cl_timer_construct
  6. Component Library: Timer/cl_timer_destroy
  7. Component Library: Timer/cl_timer_init
  8. Component Library: Timer/cl_timer_start
  9. Component Library: Timer/cl_timer_stop
  10. Component Library: Timer/cl_timer_trim

Component Library/Timer

NAME
    Timer

DESCRIPTION
    The Timer provides the ability to schedule a function to be invoked at 
    a given time in the future.

    The timer callback function must not perform any blocking operations.

    The timer functions operate on a cl_timer_t structure which should be 
    treated as opaque and should be manipulated only through the provided 
    functions.

SEE ALSO
    Structures:
        cl_timer_t

    Callbacks:
        cl_pfn_timer_callback_t

    Initialization:
        cl_timer_construct, cl_timer_init, cl_timer_destroy

    Manipulation:
        cl_timer_start, cl_timer_stop

Component Library: Time Stamp/cl_get_time_stamp

NAME
    cl_get_time_stamp

DESCRIPTION
    The cl_get_time_stamp function returns the current time stamp in 
    microseconds since the system was booted.

SYNOPSIS
uint64_t
cl_get_time_stamp( void );

RETURN VALUE
    Time elapsed, in microseconds, since the system was booted.

SEE ALSO
    Timer, cl_get_time_stamp_sec 

Component Library: Time Stamp/cl_get_time_stamp_sec

NAME
    cl_get_time_stamp_sec

DESCRIPTION
    The cl_get_time_stamp_sec function returns the current time stamp in 
    seconds since the system was booted.

SYNOPSIS
uint32_t
cl_get_time_stamp_sec( void );

RETURN VALUE
    Time elapsed, in seconds, since the system was booted.

SEE ALSO
    Timer, cl_get_time_stamp

Component Library: Timer/cl_pfn_timer_callback_t

NAME
    cl_pfn_timer_callback_t

DESCRIPTION
    The cl_pfn_timer_callback_t function type defines the prototype for 
    functions used to notify users of a timer expiration.

SYNOPSIS
typedef void 
(*cl_pfn_timer_callback_t)( 
    IN void*    context );

PARAMETERS
    context 
        [in] Value specified in a previous call to cl_timer_init.

RETURN VALUE
    This function does not return a value.

NOTES
    This function type is provided as function prototype reference for the 
    function provided by users as a parameter to the cl_timer_init function.

SEE ALSO
    Timer, cl_timer_init

Component Library: Timer/cl_timer_construct

NAME
    cl_timer_construct

DESCRIPTION
    The cl_timer_construct function initializes the state of a timer.

SYNOPSIS
void
cl_timer_construct(
    IN  cl_timer_t* const   p_timer );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure whose state to initialize.

RETURN VALUE
    This function does not return a value.

NOTES
    Allows calling cl_timer_destroy without first calling cl_timer_init.

    Calling cl_timer_construct is a prerequisite to calling any other
    timer function except cl_timer_init.

SEE ALSO
    Timer, cl_timer_init, cl_timer_destroy

Component Library: Timer/cl_timer_destroy

NAME
    cl_timer_destroy

DESCRIPTION
    The cl_timer_destroy function performs any necessary cleanup of a timer.

SYNOPSIS
void
cl_timer_destroy( 
    IN  cl_timer_t* const   p_timer );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure to destroy.

RETURN VALUE
    This function does not return a value.

NOTES
    cl_timer_destroy cancels any pending callbacks.

    This function should only be called after a call to cl_timer_construct 
    or cl_timer_init.

SEE ALSO
    Timer, cl_timer_construct, cl_timer_init 

Component Library: Timer/cl_timer_init

NAME
    cl_timer_init

DESCRIPTION
    The cl_timer_init function initializes a timer for use.

SYNOPSIS
cl_status_t
cl_timer_init( 
    IN  cl_timer_t* const       p_timer, 
    IN  cl_pfn_timer_callback_t pfn_callback, 
    IN  const void* const       context );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure to initialize.

    pfn_callback 
        [in] Address of a callback function to be invoked when a timer expires.
        See the cl_pfn_timer_callback_t function type definition for details 
        about the callback function. 

    context 
        [in] Value to pass to the callback function.

RETURN VALUES
    CL_SUCCESS if the timer was successfully initialized. 

    CL_ERROR otherwise.

NOTES
    Allows calling cl_timer_start and cl_timer_stop.

SEE ALSO
    Timer, cl_timer_construct, cl_timer_destroy, cl_timer_start, 
    cl_timer_stop, cl_pfn_timer_callback_t 

Component Library: Timer/cl_timer_start

NAME
    cl_timer_start

DESCRIPTION
    The cl_timer_start function sets a timer to expire after a given interval.

SYNOPSIS
cl_status_t
cl_timer_start( 
    IN  cl_timer_t* const   p_timer, 
    IN  const uint32_t      time_ms );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure to schedule.

    time_ms 
        [in] Time, in milliseconds, before the timer should expire.

RETURN VALUES
    CL_SUCCESS if the timer was successfully scheduled.

    CL_ERROR otherwise.

NOTES
    cl_timer_start implicitly stops the timer before being scheduled.

    The interval specified by the time_ms parameter is a minimum interval.  
    The timer is guaranteed to expire no sooner than the desired interval, but
    may take longer to expire.

SEE ALSO
    Timer, cl_timer_stop, cl_timer_trim

Component Library: Timer/cl_timer_stop

NAME
    cl_timer_stop

DESCRIPTION
    The cl_timer_stop function stops a pending timer from expiring.

SYNOPSIS
void
cl_timer_stop( 
    IN  cl_timer_t* const   p_timer );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure.

RETURN VALUE
    This function does not return a value.

SEE ALSO
    Timer, cl_timer_start, cl_timer_trim

Component Library: Timer/cl_timer_trim

NAME
    cl_timer_trim

DESCRIPTION
    The cl_timer_trim function pulls in the absolute expiration 
    time of a timer if the current expiration time exceeds the specified
    interval.

    sets a timer to expire after a given 
    interval if that interval is less than the current timer expiration.

SYNOPSIS
cl_status_t
cl_timer_trim(  
    IN  cl_timer_t* const   p_timer, 
    IN  const uint32_t      time_ms );

PARAMETERS
    p_timer 
        [in] Pointer to a cl_timer_t structure to schedule.

    time_ms 
        [in] Maximum time, in milliseconds, before the timer should expire.

RETURN VALUES
    CL_SUCCESS if the timer was successfully scheduled.

    CL_ERROR otherwise.

NOTES
    cl_timer_trim has no effect if the time interval is greater than the
    remaining time when the timer is set.

    If the new interval time is less than the remaining time, cl_timer_trim
    implicitly stops the timer before reseting it.

    If the timer is reset, it is guaranteed to expire no sooner than the 
    new interval, but may take longer to expire.

SEE ALSO
    Timer, cl_timer_start, cl_timer_stop