source: rtems/doc/user/datatypes.t @ 6676f1d

4.8
Last change on this file since 6676f1d was 6676f1d, checked in by Joel Sherrill <joel.sherrill@…>, on Aug 7, 2008 at 1:45:10 PM

2008-08-07 Joel Sherrill <joel.sherrill@…>

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