source: rtems/cpukit/rtems/include/rtems/rtems/types.h @ 092f142a

4.104.114.84.95
Last change on this file since 092f142a was 092f142a, checked in by Ralf Corsepius <ralf.corsepius@…>, on 01/28/05 at 05:00:21

New header guard.

  • Property mode set to 100644
File size: 2.7 KB
Line 
1/**
2 * @file rtems/rtems/types.h
3 */
4
5/*
6 *  This include file defines the types used by the RTEMS API.
7 *
8 *  COPYRIGHT (c) 1989-1999.
9 *  On-Line Applications Research Corporation (OAR).
10 *
11 *  The license and distribution terms for this file may be
12 *  found in the file LICENSE in this distribution or at
13 *  http://www.rtems.com/license/LICENSE.
14 *
15 *  $Id$
16 */
17
18#ifndef _RTEMS_RTEMS_TYPES_H
19#define _RTEMS_RTEMS_TYPES_H
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25/*
26 *  RTEMS basic type definitions
27 */
28
29#include <rtems/stdint.h>
30
31/* backward compatibility types */
32typedef uint8_t        rtems_unsigned8;
33typedef uint16_t       rtems_unsigned16;
34typedef uint32_t       rtems_unsigned32;
35#if defined(uint64_t)
36/* FIXME: Some targets do not have 64-bit types */
37typedef uint64_t       rtems_unsigned64;
38#endif
39
40typedef int8_t         rtems_signed8;
41typedef int16_t        rtems_signed16;
42typedef int32_t        rtems_signed32;
43#if defined(int64_t)
44/* FIXME: Some targets do not have 64-bit types */
45typedef int64_t        rtems_signed64;
46#endif
47
48#include <rtems/score/heap.h>
49#include <rtems/score/object.h>
50#include <rtems/score/priority.h>
51#include <rtems/score/tod.h>
52#include <rtems/score/watchdog.h>
53#include <rtems/rtems/modes.h>
54#if defined(RTEMS_MULTIPROCESSING)
55#include <rtems/score/mpci.h>
56#include <rtems/score/mppkt.h>
57#endif
58
59typedef single_precision rtems_single;    /* single precision float */
60typedef double_precision rtems_double;    /* double precision float */
61
62typedef boolean          rtems_boolean;
63
64typedef uint32_t       rtems_name;
65typedef Objects_Id       rtems_id;
66
67typedef Context_Control            rtems_context;
68typedef Context_Control_fp         rtems_context_fp;
69typedef CPU_Interrupt_frame        rtems_interrupt_frame;
70
71/*
72 *  Region information block
73 */
74
75typedef Heap_Information_block region_information_block;
76
77/*
78 *  Time related
79 */
80
81typedef Watchdog_Interval rtems_interval;
82typedef TOD_Control       rtems_time_of_day;
83
84/*
85 *  Define the type for an RTEMS API task mode.
86 */
87
88typedef Modes_Control rtems_mode;
89
90/*
91 *  MPCI related entries
92 */
93
94#if defined(RTEMS_MULTIPROCESSING)
95typedef MP_packet_Classes          rtems_mp_packet_classes;
96typedef MP_packet_Prefix           rtems_packet_prefix;
97
98typedef MPCI_initialization_entry  rtems_mpci_initialization_entry;
99typedef MPCI_get_packet_entry      rtems_mpci_get_packet_entry;
100typedef MPCI_return_packet_entry   rtems_mpci_return_packet_entry;
101typedef MPCI_send_entry            rtems_mpci_send_packet_entry;
102typedef MPCI_receive_entry         rtems_mpci_receive_packet_entry;
103
104typedef MPCI_Entry rtems_mpci_entry;
105
106typedef MPCI_Control rtems_mpci_table;
107#endif
108
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114/* end of include file */
Note: See TracBrowser for help on using the repository browser.