1 |
1026 |
ivang |
@c
|
2 |
|
|
@c COPYRIGHT (c) 1988-2002.
|
3 |
|
|
@c On-Line Applications Research Corporation (OAR).
|
4 |
|
|
@c All rights reserved.
|
5 |
|
|
@c
|
6 |
|
|
@c datatypes.t,v 1.4 2002/01/17 21:47:47 joel Exp
|
7 |
|
|
@c
|
8 |
|
|
|
9 |
|
|
@chapter RTEMS Data Types
|
10 |
|
|
|
11 |
|
|
@section Introduction
|
12 |
|
|
|
13 |
|
|
This chapter contains a complete list of the RTEMS primitive
|
14 |
|
|
data types in alphabetical order. This is intended to be
|
15 |
|
|
an overview and the user is encouraged to look at the appropriate
|
16 |
|
|
chapters in the manual for more information about the
|
17 |
|
|
usage of the various data types.
|
18 |
|
|
|
19 |
|
|
@section List of Data Types
|
20 |
|
|
|
21 |
|
|
The following is a complete list of the RTEMS primitive
|
22 |
|
|
data 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
|
28 |
|
|
addresses. It is equivalent to
|
29 |
|
|
@ifset is-C
|
30 |
|
|
a "void *" pointer.
|
31 |
|
|
@end ifset
|
32 |
|
|
@ifset is-Ada
|
33 |
|
|
the System.Address data type.
|
34 |
|
|
@end ifset
|
35 |
|
|
|
36 |
|
|
@findex rtems_asr
|
37 |
|
|
@item @code{@value{DIRPREFIX}asr} is the return type for an
|
38 |
|
|
RTEMS ASR.
|
39 |
|
|
|
40 |
|
|
@findex rtems_asr_entry
|
41 |
|
|
@item @code{@value{DIRPREFIX}asr_entry} is the address of
|
42 |
|
|
the entry point to an RTEMS ASR.
|
43 |
|
|
|
44 |
|
|
@findex rtems_attribute
|
45 |
|
|
@item @code{@value{DIRPREFIX}attribute} is the data type used
|
46 |
|
|
to manage the attributes for RTEMS objects. It is primarily
|
47 |
|
|
used as an argument to object create routines to specify
|
48 |
|
|
characteristics of the new object.
|
49 |
|
|
|
50 |
|
|
@findex rtems_boolean
|
51 |
|
|
@item @code{@value{DIRPREFIX}boolean} may only take on the
|
52 |
|
|
values of @code{TRUE} and @code{FALSE}.
|
53 |
|
|
|
54 |
|
|
@findex rtems_context
|
55 |
|
|
@item @code{@value{DIRPREFIX}context} is the CPU dependent
|
56 |
|
|
data structure used to manage the integer and system
|
57 |
|
|
register portion of each task's context.
|
58 |
|
|
|
59 |
|
|
@findex rtems_context_fp
|
60 |
|
|
@item @code{@value{DIRPREFIX}context_fp} is the CPU dependent
|
61 |
|
|
data structure used to manage the floating point portion of
|
62 |
|
|
each task's context.
|
63 |
|
|
|
64 |
|
|
@findex rtems_device_driver
|
65 |
|
|
@item @code{@value{DIRPREFIX}device_driver} is the
|
66 |
|
|
return type for a RTEMS device driver routine.
|
67 |
|
|
|
68 |
|
|
@findex rtems_device_driver_entry
|
69 |
|
|
@item @code{@value{DIRPREFIX}device_driver_entry} is the
|
70 |
|
|
entry point to a RTEMS device driver routine.
|
71 |
|
|
|
72 |
|
|
@findex rtems_device_major_number
|
73 |
|
|
@item @code{@value{DIRPREFIX}device_major_number} is the
|
74 |
|
|
data type used to manage device major numbers.
|
75 |
|
|
|
76 |
|
|
@findex rtems_device_minor_number
|
77 |
|
|
@item @code{@value{DIRPREFIX}device_minor_number} is the
|
78 |
|
|
data type used to manage device minor numbers.
|
79 |
|
|
|
80 |
|
|
@findex rtems_double
|
81 |
|
|
@item @code{@value{DIRPREFIX}double} is the RTEMS data
|
82 |
|
|
type that corresponds to double precision floating point
|
83 |
|
|
on the target hardware.
|
84 |
|
|
|
85 |
|
|
@findex rtems_event_set
|
86 |
|
|
@item @code{@value{DIRPREFIX}event_set} is the data
|
87 |
|
|
type used to manage and manipulate RTEMS event sets
|
88 |
|
|
with the Event Manager.
|
89 |
|
|
|
90 |
|
|
@findex rtems_extension
|
91 |
|
|
@item @code{@value{DIRPREFIX}extension} is the return type
|
92 |
|
|
for RTEMS user extension routines.
|
93 |
|
|
|
94 |
|
|
@findex rtems_fatal_extension
|
95 |
|
|
@item @code{@value{DIRPREFIX}fatal_extension} is the
|
96 |
|
|
entry 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
|
100 |
|
|
to manage and manipulate RTEMS object IDs.
|
101 |
|
|
|
102 |
|
|
@findex rtems_interrupt_frame
|
103 |
|
|
@item @code{@value{DIRPREFIX}interrupt_frame} is the
|
104 |
|
|
data structure that defines the format of the interrupt
|
105 |
|
|
stack frame as it appears to a user ISR. This data
|
106 |
|
|
structure may not be defined on all ports.
|
107 |
|
|
|
108 |
|
|
@findex rtems_interrupt_level
|
109 |
|
|
@item @code{@value{DIRPREFIX}interrupt_level} is the
|
110 |
|
|
data structure used with the @code{@value{DIRPREFIX}interrupt_disable},
|
111 |
|
|
@code{@value{DIRPREFIX}interrupt_enable}, and
|
112 |
|
|
@code{@value{DIRPREFIX}interrupt_flash} routines. This
|
113 |
|
|
data type is CPU dependent and usually corresponds to
|
114 |
|
|
the contents of the processor register containing
|
115 |
|
|
the interrupt mask level.
|
116 |
|
|
|
117 |
|
|
@findex rtems_interval
|
118 |
|
|
@item @code{@value{DIRPREFIX}interval} is the data
|
119 |
|
|
type used to manage and manipulate time intervals.
|
120 |
|
|
Intervals are non-negative integers used to measure
|
121 |
|
|
the length of time in clock ticks.
|
122 |
|
|
|
123 |
|
|
@findex rtems_isr
|
124 |
|
|
@item @code{@value{DIRPREFIX}isr} is the return type
|
125 |
|
|
of a function implementing an RTEMS ISR.
|
126 |
|
|
|
127 |
|
|
@findex rtems_isr_entry
|
128 |
|
|
@item @code{@value{DIRPREFIX}isr_entry} is the address of
|
129 |
|
|
the entry point to an RTEMS ISR. It is equivalent to the
|
130 |
|
|
entry point of the function implementing the ISR.
|
131 |
|
|
|
132 |
|
|
@findex rtems_mp_packet_classes
|
133 |
|
|
@item @code{@value{DIRPREFIX}mp_packet_classes} is the
|
134 |
|
|
enumerated type which specifies the categories of
|
135 |
|
|
multiprocessing messages. For example, one of the
|
136 |
|
|
classes is for messages that must be processed by
|
137 |
|
|
the Task Manager.
|
138 |
|
|
|
139 |
|
|
@findex rtems_mode
|
140 |
|
|
@item @code{@value{DIRPREFIX}mode} is the data type
|
141 |
|
|
used to manage and dynamically manipulate the execution
|
142 |
|
|
mode of an RTEMS task.
|
143 |
|
|
|
144 |
|
|
@findex rtems_mpci_entry
|
145 |
|
|
@item @code{@value{DIRPREFIX}mpci_entry} is the return type
|
146 |
|
|
of 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
|
150 |
|
|
the 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
|
154 |
|
|
the 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
|
158 |
|
|
the 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
|
162 |
|
|
the 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
|
166 |
|
|
the 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
|
170 |
|
|
containing the configuration information for an MPCI.
|
171 |
|
|
|
172 |
|
|
@findex rtems_option
|
173 |
|
|
@item @code{@value{DIRPREFIX}option} is the data type
|
174 |
|
|
used to specify which behavioral options the caller desires.
|
175 |
|
|
It is commonly used with potentially blocking directives to specify
|
176 |
|
|
whether the caller is willing to block or return immediately with an error
|
177 |
|
|
indicating that the resource was not available.
|
178 |
|
|
|
179 |
|
|
@findex rtems_packet_prefix
|
180 |
|
|
@item @code{@value{DIRPREFIX}packet_prefix} is the data structure
|
181 |
|
|
that defines the first bytes in every packet sent between nodes
|
182 |
|
|
in an RTEMS multiprocessor system. It contains routing information
|
183 |
|
|
that is expected to be used by the MPCI layer.
|
184 |
|
|
|
185 |
|
|
@findex rtems_signal_set
|
186 |
|
|
@item @code{@value{DIRPREFIX}signal_set} is the data
|
187 |
|
|
type used to manage and manipulate RTEMS signal sets
|
188 |
|
|
with the Signal Manager.
|
189 |
|
|
|
190 |
|
|
@findex rtems_signed8
|
191 |
|
|
@item @code{@value{DIRPREFIX}signed8} is the data
|
192 |
|
|
type that corresponds to signed eight bit integers.
|
193 |
|
|
This data type is defined by RTEMS in a manner that
|
194 |
|
|
ensures it is portable across different target processors.
|
195 |
|
|
|
196 |
|
|
@findex rtems_signed16
|
197 |
|
|
@item @code{@value{DIRPREFIX}signed16} is the data
|
198 |
|
|
type that corresponds to signed sixteen bit integers.
|
199 |
|
|
This data type is defined by RTEMS in a manner that
|
200 |
|
|
ensures it is portable across different target processors.
|
201 |
|
|
|
202 |
|
|
@findex rtems_signed32
|
203 |
|
|
@item @code{@value{DIRPREFIX}signed32} is the data
|
204 |
|
|
type that corresponds to signed thirty-two bit integers.
|
205 |
|
|
This data type is defined by RTEMS in a manner that
|
206 |
|
|
ensures it is portable across different target processors.
|
207 |
|
|
|
208 |
|
|
@findex rtems_signed64
|
209 |
|
|
@item @code{@value{DIRPREFIX}signed64} is the data
|
210 |
|
|
type that corresponds to signed sixty-four bit integers.
|
211 |
|
|
This data type is defined by RTEMS in a manner that
|
212 |
|
|
ensures it is portable across different target processors.
|
213 |
|
|
|
214 |
|
|
@findex rtems_single
|
215 |
|
|
@item @code{@value{DIRPREFIX}single} is the RTEMS data
|
216 |
|
|
type that corresponds to single precision floating point
|
217 |
|
|
on the target hardware.
|
218 |
|
|
|
219 |
|
|
@findex rtems_status_codes
|
220 |
|
|
@item @code{@value{DIRPREFIX}status_codes} is the
|
221 |
|
|
@findex rtems_task
|
222 |
|
|
@item @code{@value{DIRPREFIX}task} is the return type for an
|
223 |
|
|
RTEMS Task.
|
224 |
|
|
|
225 |
|
|
@findex rtems_task_argument
|
226 |
|
|
@item @code{@value{DIRPREFIX}task_argument} is the data
|
227 |
|
|
type for the argument passed to each RTEMS task.
|
228 |
|
|
|
229 |
|
|
@findex rtems_task_begin_extension
|
230 |
|
|
@item @code{@value{DIRPREFIX}task_begin_extension} is the
|
231 |
|
|
entry point for a task beginning execution user extension handler routine.
|
232 |
|
|
|
233 |
|
|
@findex rtems_task_create_extension
|
234 |
|
|
@item @code{@value{DIRPREFIX}task_create_extension} is the
|
235 |
|
|
entry point for a task creation execution user extension handler routine.
|
236 |
|
|
|
237 |
|
|
@findex rtems_task_delete_extension
|
238 |
|
|
@item @code{@value{DIRPREFIX}task_delete_extension} is the
|
239 |
|
|
entry point for a task deletion user extension handler routine.
|
240 |
|
|
|
241 |
|
|
@findex rtems_task_entry
|
242 |
|
|
@item @code{@value{DIRPREFIX}task_entry} is the address of
|
243 |
|
|
the entry point to an RTEMS ASR. It is equivalent to the
|
244 |
|
|
entry point of the function implementing the ASR.
|
245 |
|
|
|
246 |
|
|
@findex rtems_task_exitted_extension
|
247 |
|
|
@item @code{@value{DIRPREFIX}task_exitted_extension} is the
|
248 |
|
|
entry point for a task exitted user extension handler routine.
|
249 |
|
|
|
250 |
|
|
@findex rtems_task_priority
|
251 |
|
|
@item @code{@value{DIRPREFIX}task_priority} is the data type
|
252 |
|
|
used to manage and manipulate task priorities.
|
253 |
|
|
|
254 |
|
|
@findex rtems_task_restart_extension
|
255 |
|
|
@item @code{@value{DIRPREFIX}task_restart_extension} is the
|
256 |
|
|
entry point for a task restart user extension handler routine.
|
257 |
|
|
|
258 |
|
|
@findex rtems_task_start_extension
|
259 |
|
|
@item @code{@value{DIRPREFIX}task_start_extension} is the
|
260 |
|
|
entry point for a task start user extension handler routine.
|
261 |
|
|
|
262 |
|
|
@findex rtems_task_switch_extension
|
263 |
|
|
@item @code{@value{DIRPREFIX}task_switch_extension} is the
|
264 |
|
|
entry point for a task context switch user extension handler routine.
|
265 |
|
|
|
266 |
|
|
@findex rtems_tcb
|
267 |
|
|
@item @code{@value{DIRPREFIX}tcb} is the data structure associated
|
268 |
|
|
with each task in an RTEMS system.
|
269 |
|
|
|
270 |
|
|
@findex rtems_time_of_day
|
271 |
|
|
@item @code{@value{DIRPREFIX}time_of_day} is the data structure
|
272 |
|
|
used to manage and manipulate calendar time in RTEMS.
|
273 |
|
|
|
274 |
|
|
@findex rtems_timer_service_routine
|
275 |
|
|
@item @code{@value{DIRPREFIX}timer_service_routine} is the
|
276 |
|
|
return type for an RTEMS Timer Service Routine.
|
277 |
|
|
|
278 |
|
|
@findex rtems_timer_service_routine_entry
|
279 |
|
|
@item @code{@value{DIRPREFIX}timer_service_routine_entry} is the address of
|
280 |
|
|
the entry point to an RTEMS TSR. It is equivalent to the
|
281 |
|
|
entry point of the function implementing the TSR.
|
282 |
|
|
|
283 |
|
|
@findex rtems_unsigned8
|
284 |
|
|
@item @code{@value{DIRPREFIX}unsigned8} is the data
|
285 |
|
|
type that corresponds to unsigned eight bit integers.
|
286 |
|
|
This data type is defined by RTEMS in a manner that
|
287 |
|
|
ensures it is portable across different target processors.
|
288 |
|
|
|
289 |
|
|
@findex rtems_unsigned16
|
290 |
|
|
@item @code{@value{DIRPREFIX}unsigned16} is the data
|
291 |
|
|
type that corresponds to unsigned sixteen bit integers.
|
292 |
|
|
This data type is defined by RTEMS in a manner that
|
293 |
|
|
ensures it is portable across different target processors.
|
294 |
|
|
|
295 |
|
|
@findex rtems_unsigned32
|
296 |
|
|
@item @code{@value{DIRPREFIX}unsigned32} is the data
|
297 |
|
|
type that corresponds to unsigned thirty-two bit integers.
|
298 |
|
|
This data type is defined by RTEMS in a manner that
|
299 |
|
|
ensures it is portable across different target processors.
|
300 |
|
|
|
301 |
|
|
@findex rtems_unsigned64
|
302 |
|
|
@item @code{@value{DIRPREFIX}unsigned64} is the data
|
303 |
|
|
type that corresponds to unsigned sixty-four bit integers.
|
304 |
|
|
This data type is defined by RTEMS in a manner that
|
305 |
|
|
ensures it is portable across different target processors.
|
306 |
|
|
|
307 |
|
|
@findex rtems_vector_number
|
308 |
|
|
@item @code{@value{DIRPREFIX}vector_number} is the data
|
309 |
|
|
type used to manage and manipulate interrupt vector numbers.
|
310 |
|
|
|
311 |
|
|
@end itemize
|