source: rtems/cpukit/include/rtems/posix/timer.h @ a6e7d5e4

Last change on this file since a6e7d5e4 was a6e7d5e4, checked in by Sebastian Huber <sebastian.huber@…>, on Nov 12, 2018 at 8:00:36 AM

score: Move internal structures to objectdata.h

Update #3598.

  • Property mode set to 100644
File size: 1.5 KB
Line 
1/**
2 * @file
3 *
4 * @brief POSIX Timers Internal Support
5 *
6 * This include files defines the internal support for implementation of
7 * POSIX Timers.
8 */
9
10/*
11 *  COPYRIGHT (c) 1989-2011.
12 *  On-Line Applications Research Corporation (OAR).
13 *
14 *  The license and distribution terms for this file may be
15 *  found in the file LICENSE in this distribution or at
16 *  http://www.rtems.org/license/LICENSE.
17 */
18
19#ifndef _RTEMS_POSIX_TIMER_H
20#define _RTEMS_POSIX_TIMER_H
21
22#include <rtems/score/objectdata.h>
23#include <rtems/score/watchdog.h>
24
25#include <pthread.h>
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31/**
32 * @defgroup POSIX_INTERNAL_TIMERS POSIX Timer Private Support
33 *
34 * @ingroup POSIXAPI
35 */
36/**@{*/
37
38/*
39 * Data for a timer
40 */
41typedef struct {
42  Objects_Control   Object;
43  Watchdog_Control  Timer;      /* Internal Timer                        */
44  pthread_t         thread_id;  /* Thread identifier                     */
45  char              state;      /* State of the timer                    */
46  struct sigevent   inf;        /* Information associated to the timer   */
47  struct itimerspec timer_data; /* Timing data of the timer              */
48  uint32_t          ticks;      /* Number of ticks of the initialization */
49  uint32_t          overrun;    /* Number of expirations of the timer    */
50  struct timespec   time;       /* Time at which the timer was started   */
51} POSIX_Timer_Control;
52
53extern const uint32_t _Configuration_POSIX_Maximum_timers;
54
55/** @} */
56
57#ifdef __cplusplus
58}
59#endif
60
61#endif
62/* end of include file */
Note: See TracBrowser for help on using the repository browser.