Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Examples

clock.h

00001 /** \addtogroup sys
00002  * @{
00003  */
00004 
00005 /**
00006  * \defgroup clock Clock library
00007  *
00008  * The clock library is the interface between Contiki and the platform
00009  * specific clock functionality. The clock library performs a single
00010  * function: measuring time. Additionally, the clock library provides
00011  * a macro, CLOCK_SECOND, which corresponds to one second of system
00012  * time.
00013  *
00014  * \note The clock library need in many cases not be used
00015  * directly. Rather, the \ref timer "timer library" or the \ref etimer
00016  * "event timers" should be used.
00017  *
00018  * \sa \ref timer "Timer library"
00019  * \sa \ref etimer "Event timers"
00020  *
00021  * @{
00022  */
00023 
00024 /*
00025  * Copyright (c) 2004, Swedish Institute of Computer Science.
00026  * All rights reserved.
00027  *
00028  * Redistribution and use in source and binary forms, with or without
00029  * modification, are permitted provided that the following conditions
00030  * are met:
00031  * 1. Redistributions of source code must retain the above copyright
00032  *    notice, this list of conditions and the following disclaimer.
00033  * 2. Redistributions in binary form must reproduce the above copyright
00034  *    notice, this list of conditions and the following disclaimer in the
00035  *    documentation and/or other materials provided with the distribution.
00036  * 3. Neither the name of the Institute nor the names of its contributors
00037  *    may be used to endorse or promote products derived from this software
00038  *    without specific prior written permission.
00039  *
00040  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
00041  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00042  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00043  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
00044  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00045  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
00046  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
00047  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00048  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
00049  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
00050  * SUCH DAMAGE.
00051  *
00052  * This file is part of the Contiki operating system.
00053  *
00054  * Author: Adam Dunkels <adam@sics.se>
00055  *
00056  * $Id: clock.h,v 1.1 2006/06/17 22:41:20 adamdunkels Exp $
00057  */
00058 #ifndef __CLOCK_H__
00059 #define __CLOCK_H__
00060 
00061 #include "contiki-conf.h"
00062 
00063 /**
00064  * Initialize the clock library.
00065  *
00066  * This function initializes the clock library and should be called
00067  * from the main() function of the system.
00068  *
00069  */
00070 void clock_init(void);
00071 
00072 /**
00073  * Get the current clock time.
00074  *
00075  * This function returns the current system clock time.
00076  *
00077  * \return The current clock time, measured in system ticks.
00078  */
00079 clock_time_t clock_time(void);
00080 
00081 void clock_delay(unsigned int);
00082 
00083 /**
00084  * A second, measured in system clock time.
00085  *
00086  * \hideinitializer
00087  */
00088 #ifdef CLOCK_CONF_SECOND
00089 #define CLOCK_SECOND CLOCK_CONF_SECOND
00090 #else
00091 #define CLOCK_SECOND (clock_time_t)32
00092 #endif
00093 
00094 #endif /* __CLOCK_H__ */
00095 
00096 /** @} */
00097 /** @} */

Generated on Thu Jun 22 17:45:43 2006 for Contiki 2.x by  doxygen 1.4.4