source: rtems/doc/user/datatypes.t @ a4a422a0

4.104.114.95
Last change on this file since a4a422a0 was a4a422a0, checked in by Ralf Corsepius <ralf.corsepius@…>, on 09/09/08 at 07:24:29

Add deprecation notices to "rtems_boolean", "rtems_single", "rtems_double".

  • Property mode set to 100644
File size: 10.5 KB
RevLine 
[f65b3668]1@c
[6449498]2@c  COPYRIGHT (c) 1988-2002.
[de8e187]3@c  On-Line Applications Research Corporation (OAR).
4@c  All rights reserved.
5@c
6@c  $Id$
7@c
8
9@chapter RTEMS Data Types
10
[7bb1884]11@section Introduction
12
[de8e187]13This chapter contains a complete list of the RTEMS primitive
14data types in alphabetical order.  This is intended to be
15an overview and the user is encouraged to look at the appropriate
16chapters in the manual for more information about the
17usage of the various data types.
18
[7bb1884]19@section List of Data Types
20
21The following is a complete list of the RTEMS primitive
22data types in alphabetical order:
23
24@itemize @bullet
25
26@findex rtems_address
[de8e187]27@item @code{@value{DIRPREFIX}address} is the data type used to manage
28addresses.  It is equivalent to
29@ifset is-C
30a "void *" pointer.
[7bb1884]31@end ifset
[de8e187]32@ifset is-Ada
33the System.Address data type.
[7bb1884]34@end ifset
[de8e187]35
[7bb1884]36@findex rtems_asr
[de8e187]37@item @code{@value{DIRPREFIX}asr} is the return type for an
38RTEMS ASR.
39
[7bb1884]40@findex rtems_asr_entry
[de8e187]41@item @code{@value{DIRPREFIX}asr_entry} is the address of
42the entry point to an RTEMS ASR.
43
[7bb1884]44@findex rtems_attribute
[de8e187]45@item @code{@value{DIRPREFIX}attribute} is the data type used
46to manage the attributes for RTEMS objects.  It is primarily
[7bb1884]47used as an argument to object create routines to specify
48characteristics of the new object.
[de8e187]49
[7bb1884]50@findex rtems_boolean
[de8e187]51@item @code{@value{DIRPREFIX}boolean} may only take on the
52values of @code{TRUE} and @code{FALSE}.
53
[a4a422a0]54This type is deprecated. Use "bool" instead.
55
[7bb1884]56@findex rtems_context
[de8e187]57@item @code{@value{DIRPREFIX}context} is the CPU dependent
58data structure used to manage the integer and system
59register portion of each task's context.
60
[7bb1884]61@findex rtems_context_fp
[de8e187]62@item @code{@value{DIRPREFIX}context_fp} is the CPU dependent
63data structure used to manage the floating point portion of
64each task's context.
65
[7bb1884]66@findex rtems_device_driver
[de8e187]67@item @code{@value{DIRPREFIX}device_driver} is the
68return type for a RTEMS device driver routine.
69
[7bb1884]70@findex rtems_device_driver_entry
[de8e187]71@item @code{@value{DIRPREFIX}device_driver_entry} is the
72entry point to a RTEMS device driver routine.
73
[7bb1884]74@findex rtems_device_major_number
[de8e187]75@item @code{@value{DIRPREFIX}device_major_number} is the
76data type used to manage device major numbers.
77
[7bb1884]78@findex rtems_device_minor_number
[de8e187]79@item @code{@value{DIRPREFIX}device_minor_number} is the
80data type used to manage device minor numbers.
81
[7bb1884]82@findex rtems_double
[de8e187]83@item @code{@value{DIRPREFIX}double} is the RTEMS data
84type that corresponds to double precision floating point
85on the target hardware.
86
[a4a422a0]87This type is deprecated. Use "double" instead.
88
[7bb1884]89@findex rtems_event_set
[de8e187]90@item @code{@value{DIRPREFIX}event_set} is the data
91type used to manage and manipulate RTEMS event sets
92with the Event Manager.
93
[7bb1884]94@findex rtems_extension
[de8e187]95@item @code{@value{DIRPREFIX}extension} is the return type
96for RTEMS user extension routines.
97 
[7bb1884]98@findex rtems_fatal_extension
[de8e187]99@item @code{@value{DIRPREFIX}fatal_extension} is the
100entry point for a fatal error user extension handler routine.
101
[7bb1884]102@findex rtems_id
[de8e187]103@item @code{@value{DIRPREFIX}id} is the data type used
104to manage and manipulate RTEMS object IDs.
105
[7bb1884]106@findex rtems_interrupt_frame
[de8e187]107@item @code{@value{DIRPREFIX}interrupt_frame} is the
108data structure that defines the format of the interrupt
109stack frame as it appears to a user ISR.  This data
110structure may not be defined on all ports.
111
[7bb1884]112@findex rtems_interrupt_level
[de8e187]113@item @code{@value{DIRPREFIX}interrupt_level} is the
114data structure used with the @code{@value{DIRPREFIX}interrupt_disable},
115@code{@value{DIRPREFIX}interrupt_enable}, and
116@code{@value{DIRPREFIX}interrupt_flash} routines.  This
117data type is CPU dependent and usually corresponds to
118the contents of the processor register containing
119the interrupt mask level.
120
[7bb1884]121@findex rtems_interval
[de8e187]122@item @code{@value{DIRPREFIX}interval} is the data
123type used to manage and manipulate time intervals.
[7bb1884]124Intervals are non-negative integers used to measure
125the length of time in clock ticks.
[de8e187]126
[7bb1884]127@findex rtems_isr
[de8e187]128@item @code{@value{DIRPREFIX}isr} is the return type
129of a function implementing an RTEMS ISR.
130
[7bb1884]131@findex rtems_isr_entry
[de8e187]132@item @code{@value{DIRPREFIX}isr_entry} is the address of
133the entry point to an RTEMS ISR.  It is equivalent to the
134entry point of the function implementing the ISR.
135
[7bb1884]136@findex rtems_mp_packet_classes
[de8e187]137@item @code{@value{DIRPREFIX}mp_packet_classes} is the
[7bb1884]138enumerated type which specifies the categories of
139multiprocessing messages.  For example, one of the
140classes is for messages that must be processed by
141the Task Manager.
142
143@findex rtems_mode
144@item @code{@value{DIRPREFIX}mode} is the data type
145used to manage and dynamically manipulate the execution
146mode of an RTEMS task.
147
148@findex rtems_mpci_entry
[de8e187]149@item @code{@value{DIRPREFIX}mpci_entry} is the return type
150of an RTEMS MPCI routine.
151
[7bb1884]152@findex rtems_mpci_get_packet_entry
[de8e187]153@item @code{@value{DIRPREFIX}mpci_get_packet_entry} is the address of
154the entry point to the get packet routine for an MPCI implementation.
155
[7bb1884]156@findex rtems_mpci_initialization_entry
[de8e187]157@item @code{@value{DIRPREFIX}mpci_initialization_entry} is the address of
158the entry point to the initialization routine for an MPCI implementation.
159
[7bb1884]160@findex rtems_mpci_receive_packet_entry
[de8e187]161@item @code{@value{DIRPREFIX}mpci_receive_packet_entry} is the address of
162the entry point to the receive packet routine for an MPCI implementation.
163
[7bb1884]164@findex rtems_mpci_return_packet_entry
[de8e187]165@item @code{@value{DIRPREFIX}mpci_return_packet_entry} is the address of
166the entry point to the return packet routine for an MPCI implementation.
167
[7bb1884]168@findex rtems_mpci_send_packet_entry
[de8e187]169@item @code{@value{DIRPREFIX}mpci_send_packet_entry} is the address of
170the entry point to the send packet routine for an MPCI implementation.
171
[7bb1884]172@findex rtems_mpci_table
[de8e187]173@item @code{@value{DIRPREFIX}mpci_table} is the data structure
174containing the configuration information for an MPCI.
175
[94fb30d4]176@findex rtems_name
177@item @code{@value{DIRPREFIX}name} is the data type used to
178contain the name of a Classic API object.  It is an unsigned
179thirty-two bit integer which can be treated as a numeric
180value or initialized using @code{@value{DIRPREFIX}build_name} to
181contain four ASCII characters.
182
[7bb1884]183@findex rtems_option
[de8e187]184@item @code{@value{DIRPREFIX}option} is the data type
185used to specify which behavioral options the caller desires.
186It is commonly used with potentially blocking directives to specify
187whether the caller is willing to block or return immediately with an error
188indicating that the resource was not available.
189
[7bb1884]190@findex rtems_packet_prefix
[de8e187]191@item @code{@value{DIRPREFIX}packet_prefix} is the data structure
192that defines the first bytes in every packet sent between nodes
193in an RTEMS multiprocessor system.  It contains routing information
194that is expected to be used by the MPCI layer.
195
[7bb1884]196@findex rtems_signal_set
[de8e187]197@item @code{@value{DIRPREFIX}signal_set} is the data
198type used to manage and manipulate RTEMS signal sets
199with the Signal Manager.
200
[2a517327]201@findex int8_t
202@item @code{int8_t} is the C99 data type that corresponds to signed eight
203bit integers.  This data type is defined by RTEMS in a manner that
[de8e187]204ensures it is portable across different target processors.
205
[2a517327]206@findex int16_t
207@item @code{int16_t} is the C99 data type that corresponds to signed
208sixteen bit integers.  This data type is defined by RTEMS in a manner
209that ensures it is portable across different target processors.
[de8e187]210
[2a517327]211@findex int32_t
212@item @code{int32_t} is the C99 data type that corresponds to signed
213thirty-two bit integers.  This data type is defined by RTEMS in a manner
214that ensures it is portable across different target processors.
[de8e187]215
[2a517327]216@findex int64_t
217@item @code{int64_t} is the C99 data type that corresponds to signed
218sixty-four bit integers.  This data type is defined by RTEMS in a manner
219that ensures it is portable across different target processors.
[de8e187]220
[7bb1884]221@findex rtems_single
[de8e187]222@item @code{@value{DIRPREFIX}single} is the RTEMS data
223type that corresponds to single precision floating point
224on the target hardware.
225
[a4a422a0]226This type is deprecated. Use "float" instead.
227
[7bb1884]228@findex rtems_status_codes
[de8e187]229@item @code{@value{DIRPREFIX}status_codes} is the
[7bb1884]230@findex rtems_task
[de8e187]231@item @code{@value{DIRPREFIX}task} is the return type for an
232RTEMS Task.
233
[7bb1884]234@findex rtems_task_argument
[de8e187]235@item @code{@value{DIRPREFIX}task_argument} is the data
[94fb30d4]236type for the argument passed to each RTEMS task. In RTEMS 4.7
237and older, this is an unsigned thirty-two bit integer.  In
238RTEMS 4.8 and newer, this is based upon the C99 type @code{uintptr_t}
239which is guaranteed to be an integer large enough to hold a
240pointer on the target architecture.
[de8e187]241
[7bb1884]242@findex rtems_task_begin_extension
[de8e187]243@item @code{@value{DIRPREFIX}task_begin_extension} is the
244entry point for a task beginning execution user extension handler routine.
245
[7bb1884]246@findex rtems_task_create_extension
[de8e187]247@item @code{@value{DIRPREFIX}task_create_extension} is the
248entry point for a task creation execution user extension handler routine.
249
[7bb1884]250@findex rtems_task_delete_extension
[de8e187]251@item @code{@value{DIRPREFIX}task_delete_extension} is the
252entry point for a task deletion user extension handler routine.
253
[7bb1884]254@findex rtems_task_entry
[de8e187]255@item @code{@value{DIRPREFIX}task_entry} is the address of
256the entry point to an RTEMS ASR.  It is equivalent to the
257entry point of the function implementing the ASR.
258
[7bb1884]259@findex rtems_task_exitted_extension
[de8e187]260@item @code{@value{DIRPREFIX}task_exitted_extension} is the
261entry point for a task exitted user extension handler routine.
262
[7bb1884]263@findex rtems_task_priority
[de8e187]264@item @code{@value{DIRPREFIX}task_priority} is the data type
265used to manage and manipulate task priorities.
266
[7bb1884]267@findex rtems_task_restart_extension
[de8e187]268@item @code{@value{DIRPREFIX}task_restart_extension} is the
269entry point for a task restart user extension handler routine.
270
[7bb1884]271@findex rtems_task_start_extension
[de8e187]272@item @code{@value{DIRPREFIX}task_start_extension} is the
273entry point for a task start user extension handler routine.
274
[7bb1884]275@findex rtems_task_switch_extension
[de8e187]276@item @code{@value{DIRPREFIX}task_switch_extension} is the
277entry point for a task context switch user extension handler routine.
278
[7bb1884]279@findex rtems_tcb
[de8e187]280@item @code{@value{DIRPREFIX}tcb} is the data structure associated
281with each task in an RTEMS system.
282
[7bb1884]283@findex rtems_time_of_day
[de8e187]284@item @code{@value{DIRPREFIX}time_of_day} is the data structure
285used to manage and manipulate calendar time in RTEMS.
286
[7bb1884]287@findex rtems_timer_service_routine
[de8e187]288@item @code{@value{DIRPREFIX}timer_service_routine} is the
289return type for an RTEMS Timer Service Routine.
290
[7bb1884]291@findex rtems_timer_service_routine_entry
[de8e187]292@item @code{@value{DIRPREFIX}timer_service_routine_entry} is the address of
293the entry point to an RTEMS TSR.  It is equivalent to the
294entry point of the function implementing the TSR.
295
[7bb1884]296@findex rtems_vector_number
[de8e187]297@item @code{@value{DIRPREFIX}vector_number} is the data
298type used to manage and manipulate interrupt vector numbers.
[7bb1884]299
300@end itemize
Note: See TracBrowser for help on using the repository browser.