source: rtems-docs/c-user/rtems_data_types.rst @ 3384994

5
Last change on this file since 3384994 was 6c56401, checked in by Chris Johns <chrisj@…>, on 11/12/17 at 03:34:48

c-user: Fix index locations.

Update #3229.

  • Property mode set to 100644
File size: 11.1 KB
Line 
1.. comment SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. COMMENT: COPYRIGHT (c) 1988-2008.
4.. COMMENT: On-Line Applications Research Corporation (OAR).
5.. COMMENT: All rights reserved.
6
7.. index:: RTEMS Data Types
8.. index:: data types
9
10RTEMS Data Types
11****************
12
13Introduction
14============
15
16This chapter contains a complete list of the RTEMS primitive data types in
17alphabetical order.  This is intended to be an overview and the user is
18encouraged to look at the appropriate chapters in the manual for more
19information about the usage of the various data types.
20
21List of Data Types
22==================
23
24The following is a complete list of the RTEMS primitive data types in
25alphabetical order:
26
27.. index:: rtems_address
28
29``rtems_address``
30  The data type used to manage addresses.  It is equivalent to a ``void *``
31  pointer.
32
33.. index:: rtems_asr
34
35``rtems_asr``
36  The return type for an RTEMS ASR.
37
38.. index:: rtems_asr_entry
39
40``rtems_asr_entry``
41  The address of the entry point to an RTEMS ASR.
42
43.. index:: rtems_attribute
44
45``rtems_attribute``
46  The data type used to manage the attributes for RTEMS objects.  It is
47  primarily used as an argument to object create routines to specify
48  characteristics of the new object.
49
50.. index:: rtems_boolean
51
52``rtems_boolean``
53  May only take on the values of ``TRUE`` and ``FALSE``.  This type is
54  deprecated. Use ``bool`` instead.
55
56.. index:: rtems_context
57
58``rtems_context``
59  The CPU dependent data structure used to manage the integer and system
60  register portion of each task's context.
61
62.. index:: rtems_context_fp
63
64``rtems_context_fp``
65  The CPU dependent data structure used to manage the floating point portion of
66  each task's context.
67
68.. index:: rtems_device_driver
69
70``rtems_device_driver``
71  The return type for a RTEMS device driver routine.
72
73.. index:: rtems_device_driver_entry
74
75``rtems_device_driver_entry``
76  The entry point to a RTEMS device driver routine.
77
78.. index:: rtems_device_major_number
79
80``rtems_device_major_number``
81  The data type used to manage device major numbers.
82
83.. index:: rtems_device_minor_number
84
85``rtems_device_minor_number``
86  The data type used to manage device minor numbers.
87
88.. index:: rtems_double
89
90``rtems_double``
91  The RTEMS data type that corresponds to double precision floating point on
92  the target hardware.  This type is deprecated. Use ``double`` instead.
93
94.. index:: rtems_event_set
95
96``rtems_event_set``
97  The data type used to manage and manipulate RTEMS event sets with the Event
98  Manager.
99
100.. index:: rtems_extension
101
102``rtems_extension``
103  The return type for RTEMS user extension routines.
104
105.. index:: rtems_fatal_extension
106
107``rtems_fatal_extension``
108  The entry point for a fatal error user extension handler routine.
109
110.. index:: rtems_id
111
112``rtems_id``
113  The data type used to manage and manipulate RTEMS object IDs.
114
115.. index:: rtems_interrupt_frame
116
117``rtems_interrupt_frame``
118  The data structure that defines the format of the interrupt stack frame as it
119  appears to a user ISR.  This data structure is only defined on architectures
120  that pass the frame pointer to the ISR handler.
121
122.. index:: rtems_interrupt_level
123
124``rtems_interrupt_level``
125  The data structure used with the ``rtems_interrupt_disable``,
126  ``rtems_interrupt_enable``, and ``rtems_interrupt_flash`` routines.  This
127  data type is CPU dependent and usually corresponds to the contents of the
128  processor register containing the interrupt mask level.
129
130.. index:: rtems_interval
131
132``rtems_interval``
133  The data type used to manage and manipulate time intervals.  Intervals are
134  non-negative integers used to measure the length of time in clock ticks.
135
136.. index:: rtems_isr
137
138``rtems_isr``
139  The return type of a function implementing an RTEMS ISR.
140
141.. index:: rtems_isr_entry
142
143``rtems_isr_entry``
144  The address of the entry point to an RTEMS ISR.  It is equivalent to the
145  entry point of the function implementing the ISR.
146
147.. index:: rtems_mp_packet_classes
148
149``rtems_mp_packet_classes``
150  The enumerated type which specifies the categories of multiprocessing
151  messages.  For example, one of the classes is for messages that must be
152  processed by the Task Manager.
153
154.. index:: rtems_mode
155
156``rtems_mode``
157  The data type used to manage and dynamically manipulate the execution mode of
158  an RTEMS task.
159
160.. index:: rtems_mpci_entry
161
162``rtems_mpci_entry``
163  The return type of an RTEMS MPCI routine.
164
165.. index:: rtems_mpci_get_packet_entry
166
167``rtems_mpci_get_packet_entry``
168  The address of the entry point to the get packet routine for an MPCI
169  implementation.
170
171.. index:: rtems_mpci_initialization_entry
172
173``rtems_mpci_initialization_entry``
174  The address of the entry point to the initialization routine for an MPCI
175  implementation.
176
177.. index:: rtems_mpci_receive_packet_entry
178
179``rtems_mpci_receive_packet_entry``
180  The address of the entry point to the receive packet routine for an MPCI
181  implementation.
182
183.. index:: rtems_mpci_return_packet_entry
184
185``rtems_mpci_return_packet_entry``
186  The address of the entry point to the return packet routine for an MPCI
187  implementation.
188
189.. index:: rtems_mpci_send_packet_entry
190
191``rtems_mpci_send_packet_entry``
192  The address of the entry point to the send packet routine for an MPCI
193  implementation.
194
195.. index:: rtems_mpci_table
196
197``rtems_mpci_table``
198  The data structure containing the configuration information for an MPCI.
199
200.. index:: rtems_name
201
202``rtems_name``
203  The data type used to contain the name of a Classic API object.  It is an
204  unsigned thirty-two bit integer which can be treated as a numeric value or
205  initialized using ``rtems_build_name`` to contain four ASCII characters.
206
207.. index:: rtems_option
208
209``rtems_option``
210  The data type used to specify which behavioral options the caller desires.
211  It is commonly used with potentially blocking directives to specify whether
212  the caller is willing to block or return immediately with an error indicating
213  that the resource was not available.
214
215.. index:: rtems_packet_prefix
216
217``rtems_packet_prefix``
218  The data structure that defines the first bytes in every packet sent between
219  nodes in an RTEMS multiprocessor system.  It contains routing information
220  that is expected to be used by the MPCI layer.
221
222.. index:: rtems_signal_set
223
224``rtems_signal_set``
225  The data type used to manage and manipulate RTEMS signal sets with the Signal
226  Manager.
227
228.. index:: int8_t
229
230``int8_t``
231  The C99 data type that corresponds to signed eight bit integers.  This data
232  type is defined by RTEMS in a manner that ensures it is portable across
233  different target processors.
234
235.. index:: int16_t
236
237``int16_t``
238  The C99 data type that corresponds to signed sixteen bit integers.  This data
239  type is defined by RTEMS in a manner that ensures it is portable across
240  different target processors.
241
242.. index:: int32_t
243
244``int32_t``
245  The C99 data type that corresponds to signed thirty-two bit integers.  This
246  data type is defined by RTEMS in a manner that ensures it is portable across
247  different target processors.
248
249.. index:: int64_t
250
251``int64_t``
252  The C99 data type that corresponds to signed sixty-four bit integers.  This
253  data type is defined by RTEMS in a manner that ensures it is portable across
254  different target processors.
255
256.. index:: rtems_single
257
258``rtems_single``
259  The RTEMS data type that corresponds to single precision floating point on
260  the target hardware.  This type is deprecated. Use ``float`` instead.
261
262.. index:: rtems_status_codes
263
264``rtems_status_codes``
265  The return type for most RTEMS services.  This is an enumerated type of
266  approximately twenty-five values.  In general, when a service returns a
267  particular status code, it indicates that a very specific error condition has
268  occurred.
269
270.. index:: rtems_task
271
272``rtems_task``
273  The return type for an RTEMS Task.
274
275.. index:: rtems_task_argument
276
277``rtems_task_argument``
278  The data type for the argument passed to each RTEMS task. In RTEMS 4.7 and
279  older, this is an unsigned thirty-two bit integer.  In RTEMS 4.8 and newer,
280  this is based upon the C99 type ``uintptr_t`` which is guaranteed to be an
281  integer large enough to hold a pointer on the target architecture.
282
283.. index:: rtems_task_begin_extension
284
285``rtems_task_begin_extension``
286  The entry point for a task beginning execution user extension handler
287  routine.
288
289.. index:: rtems_task_create_extension
290
291``rtems_task_create_extension``
292  The entry point for a task creation execution user extension handler routine.
293
294.. index:: rtems_task_delete_extension
295
296``rtems_task_delete_extension``
297  The entry point for a task deletion user extension handler routine.
298
299.. index:: rtems_task_entry
300
301``rtems_task_entry``
302  The address of the entry point to an RTEMS ASR.  It is equivalent to the
303  entry point of the function implementing the ASR.
304
305.. index:: rtems_task_exitted_extension
306
307``rtems_task_exitted_extension``
308  The entry point for a task exitted user extension handler routine.
309
310.. index:: rtems_task_priority
311
312``rtems_task_priority``
313  The data type used to manage and manipulate task priorities.
314
315.. index:: rtems_task_restart_extension
316
317``rtems_task_restart_extension``
318  The entry point for a task restart user extension handler routine.
319
320.. index:: rtems_task_start_extension
321
322``rtems_task_start_extension``
323  The entry point for a task start user extension handler routine.
324
325.. index:: rtems_task_switch_extension
326
327``rtems_task_switch_extension``
328  The entry point for a task context switch user extension handler routine.
329
330.. index:: rtems_tcb
331
332``rtems_tcb``
333  The data structure associated with each task in an RTEMS system.
334
335.. index:: rtems_time_of_day
336
337``rtems_time_of_day``
338  The data structure used to manage and manipulate calendar time in RTEMS.
339
340.. index:: rtems_timer_service_routine
341
342``rtems_timer_service_routine``
343  The return type for an RTEMS Timer Service Routine.
344
345.. index:: rtems_timer_service_routine_entry
346
347``rtems_timer_service_routine_entry``
348  The address of the entry point to an RTEMS TSR.  It is equivalent to the
349  entry point of the function implementing the TSR.
350
351.. index:: rtems_vector_number
352
353``rtems_vector_number``
354  The data type used to manage and manipulate interrupt vector numbers.
355
356.. index:: uint8_t
357
358``uint8_t``
359  The C99 data type that corresponds to unsigned eight bit integers.  This data
360  type is defined by RTEMS in a manner that ensures it is portable across
361  different target processors.
362
363.. index:: uint16_t
364
365``uint16_t``
366  The C99 data type that corresponds to unsigned sixteen bit integers.  This
367  data type is defined by RTEMS in a manner that ensures it is portable across
368  different target processors.
369
370.. index:: uint32_t
371
372``uint32_t``
373  The C99 data type that corresponds to unsigned thirty-two bit integers.  This
374  data type is defined by RTEMS in a manner that ensures it is portable across
375  different target processors.
376
377.. index:: uint64_t
378
379``uint64_t``
380  The C99 data type that corresponds to unsigned sixty-four bit integers.  This
381  data type is defined by RTEMS in a manner that ensures it is portable across
382  different target processors.
383
384.. index:: uintptr_t
385
386``uintptr_t``
387  The C99 data type that corresponds to the unsigned integer type that is of
388  sufficient size to represent addresses as unsigned integers.  This data type
389  is defined by RTEMS in a manner that ensures it is portable across different
390  target processors.
Note: See TracBrowser for help on using the repository browser.