From fd6dc8c8de4dbc7ecf8a82a597cd5b43476fc8e3 Mon Sep 17 00:00:00 2001 From: Amar Takhar Date: Sun, 17 Jan 2016 19:19:43 -0500 Subject: Split document into seperate files by section. --- c_user/rtems_data_types.rst | 379 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 379 insertions(+) create mode 100644 c_user/rtems_data_types.rst (limited to 'c_user/rtems_data_types.rst') diff --git a/c_user/rtems_data_types.rst b/c_user/rtems_data_types.rst new file mode 100644 index 0000000..9d3a51f --- /dev/null +++ b/c_user/rtems_data_types.rst @@ -0,0 +1,379 @@ +RTEMS Data Types +################ + +Introduction +============ + +This chapter contains a complete list of the RTEMS primitive +data types in alphabetical order. This is intended to be +an overview and the user is encouraged to look at the appropriate +chapters in the manual for more information about the +usage of the various data types. + +List of Data Types +================== + +The following is a complete list of the RTEMS primitive +data types in alphabetical order: + +- .. index:: rtems_address + + ``rtems_address`` is the data type used to manage + addresses. It is equivalent to + a "void \*" pointer. + +- .. index:: rtems_asr + + ``rtems_asr`` is the return type for an + RTEMS ASR. + +- .. index:: rtems_asr_entry + + ``rtems_asr_entry`` is the address of + the entry point to an RTEMS ASR. + +- .. index:: rtems_attribute + + ``rtems_attribute`` is the data type used + to manage the attributes for RTEMS objects. It is primarily + used as an argument to object create routines to specify + characteristics of the new object. + +- .. index:: rtems_boolean + + ``rtems_boolean`` may only take on the + values of ``TRUE`` and ``FALSE``. + This type is deprecated. Use "bool" instead. + +- .. index:: rtems_context + + ``rtems_context`` is the CPU dependent + data structure used to manage the integer and system + register portion of each task’s context. + +- .. index:: rtems_context_fp + + ``rtems_context_fp`` is the CPU dependent + data structure used to manage the floating point portion of + each task’s context. + +- .. index:: rtems_device_driver + + ``rtems_device_driver`` is the + return type for a RTEMS device driver routine. + +- .. index:: rtems_device_driver_entry + + ``rtems_device_driver_entry`` is the + entry point to a RTEMS device driver routine. + +- .. index:: rtems_device_major_number + + ``rtems_device_major_number`` is the + data type used to manage device major numbers. + +- .. index:: rtems_device_minor_number + + ``rtems_device_minor_number`` is the + data type used to manage device minor numbers. + +- .. index:: rtems_double + + ``rtems_double`` is the RTEMS data + type that corresponds to double precision floating point + on the target hardware. + This type is deprecated. Use "double" instead. + +- .. index:: rtems_event_set + + ``rtems_event_set`` is the data + type used to manage and manipulate RTEMS event sets + with the Event Manager. + +- .. index:: rtems_extension + + ``rtems_extension`` is the return type + for RTEMS user extension routines. + +- .. index:: rtems_fatal_extension + + ``rtems_fatal_extension`` is the + entry point for a fatal error user extension handler routine. + +- .. index:: rtems_id + + ``rtems_id`` is the data type used + to manage and manipulate RTEMS object IDs. + +- .. index:: rtems_interrupt_frame + + ``rtems_interrupt_frame`` is the + data structure that defines the format of the interrupt + stack frame as it appears to a user ISR. This data + structure may not be defined on all ports. + +- .. index:: rtems_interrupt_level + + ``rtems_interrupt_level`` is the + data structure used with the ``rtems_interrupt_disable``,``rtems_interrupt_enable``, and``rtems_interrupt_flash`` routines. This + data type is CPU dependent and usually corresponds to + the contents of the processor register containing + the interrupt mask level. + +- .. index:: rtems_interval + + ``rtems_interval`` is the data + type used to manage and manipulate time intervals. + Intervals are non-negative integers used to measure + the length of time in clock ticks. + +- .. index:: rtems_isr + + ``rtems_isr`` is the return type + of a function implementing an RTEMS ISR. + +- .. index:: rtems_isr_entry + + ``rtems_isr_entry`` is the address of + the entry point to an RTEMS ISR. It is equivalent to the + entry point of the function implementing the ISR. + +- .. index:: rtems_mp_packet_classes + + ``rtems_mp_packet_classes`` is the + enumerated type which specifies the categories of + multiprocessing messages. For example, one of the + classes is for messages that must be processed by + the Task Manager. + +- .. index:: rtems_mode + + ``rtems_mode`` is the data type + used to manage and dynamically manipulate the execution + mode of an RTEMS task. + +- .. index:: rtems_mpci_entry + + ``rtems_mpci_entry`` is the return type + of an RTEMS MPCI routine. + +- .. index:: rtems_mpci_get_packet_entry + + ``rtems_mpci_get_packet_entry`` is the address of + the entry point to the get packet routine for an MPCI implementation. + +- .. index:: rtems_mpci_initialization_entry + + ``rtems_mpci_initialization_entry`` is the address of + the entry point to the initialization routine for an MPCI implementation. + +- .. index:: rtems_mpci_receive_packet_entry + + ``rtems_mpci_receive_packet_entry`` is the address of + the entry point to the receive packet routine for an MPCI implementation. + +- .. index:: rtems_mpci_return_packet_entry + + ``rtems_mpci_return_packet_entry`` is the address of + the entry point to the return packet routine for an MPCI implementation. + +- .. index:: rtems_mpci_send_packet_entry + + ``rtems_mpci_send_packet_entry`` is the address of + the entry point to the send packet routine for an MPCI implementation. + +- .. index:: rtems_mpci_table + + ``rtems_mpci_table`` is the data structure + containing the configuration information for an MPCI. + +- .. index:: rtems_name + + ``rtems_name`` is the data type used to + contain the name of a Classic API object. It is an unsigned + thirty-two bit integer which can be treated as a numeric + value or initialized using ``rtems_build_name`` to + contain four ASCII characters. + +- .. index:: rtems_option + + ``rtems_option`` is the data type + used to specify which behavioral options the caller desires. + It is commonly used with potentially blocking directives to specify + whether the caller is willing to block or return immediately with an error + indicating that the resource was not available. + +- .. index:: rtems_packet_prefix + + ``rtems_packet_prefix`` is the data structure + that defines the first bytes in every packet sent between nodes + in an RTEMS multiprocessor system. It contains routing information + that is expected to be used by the MPCI layer. + +- .. index:: rtems_signal_set + + ``rtems_signal_set`` is the data + type used to manage and manipulate RTEMS signal sets + with the Signal Manager. + +- .. index:: int8_t + + ``int8_t`` is the C99 data type that corresponds to signed eight + bit integers. This data type is defined by RTEMS in a manner that + ensures it is portable across different target processors. + +- .. index:: int16_t + + ``int16_t`` is the C99 data type that corresponds to signed + sixteen bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: int32_t + + ``int32_t`` is the C99 data type that corresponds to signed + thirty-two bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: int64_t + + ``int64_t`` is the C99 data type that corresponds to signed + sixty-four bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: rtems_single + + ``rtems_single`` is the RTEMS data + type that corresponds to single precision floating point + on the target hardware. + This type is deprecated. Use "float" instead. + +- .. index:: rtems_status_codes + + ``rtems_status_codes`` is the return type for most + RTEMS services. This is an enumerated type of approximately twenty-five + values. In general, when a service returns a particular status code, it + indicates that a very specific error condition has occurred. + +- .. index:: rtems_task + + ``rtems_task`` is the return type for an + RTEMS Task. + +- .. index:: rtems_task_argument + + ``rtems_task_argument`` is the data + type for the argument passed to each RTEMS task. In RTEMS 4.7 + and older, this is an unsigned thirty-two bit integer. In + RTEMS 4.8 and newer, this is based upon the C99 type ``uintptr_t`` + which is guaranteed to be an integer large enough to hold a + pointer on the target architecture. + +- .. index:: rtems_task_begin_extension + + ``rtems_task_begin_extension`` is the + entry point for a task beginning execution user extension handler routine. + +- .. index:: rtems_task_create_extension + + ``rtems_task_create_extension`` is the + entry point for a task creation execution user extension handler routine. + +- .. index:: rtems_task_delete_extension + + ``rtems_task_delete_extension`` is the + entry point for a task deletion user extension handler routine. + +- .. index:: rtems_task_entry + + ``rtems_task_entry`` is the address of + the entry point to an RTEMS ASR. It is equivalent to the + entry point of the function implementing the ASR. + +- .. index:: rtems_task_exitted_extension + + ``rtems_task_exitted_extension`` is the + entry point for a task exitted user extension handler routine. + +- .. index:: rtems_task_priority + + ``rtems_task_priority`` is the data type + used to manage and manipulate task priorities. + +- .. index:: rtems_task_restart_extension + + ``rtems_task_restart_extension`` is the + entry point for a task restart user extension handler routine. + +- .. index:: rtems_task_start_extension + + ``rtems_task_start_extension`` is the + entry point for a task start user extension handler routine. + +- .. index:: rtems_task_switch_extension + + ``rtems_task_switch_extension`` is the + entry point for a task context switch user extension handler routine. + +- .. index:: rtems_tcb + + ``rtems_tcb`` is the data structure associated + with each task in an RTEMS system. + +- .. index:: rtems_time_of_day + + ``rtems_time_of_day`` is the data structure + used to manage and manipulate calendar time in RTEMS. + +- .. index:: rtems_timer_service_routine + + ``rtems_timer_service_routine`` is the + return type for an RTEMS Timer Service Routine. + +- .. index:: rtems_timer_service_routine_entry + + ``rtems_timer_service_routine_entry`` is the address of + the entry point to an RTEMS TSR. It is equivalent to the + entry point of the function implementing the TSR. + +- .. index:: rtems_vector_number + + ``rtems_vector_number`` is the data + type used to manage and manipulate interrupt vector numbers. + +- .. index:: uint8_t + + ``uint8_t`` is the C99 data type that corresponds to unsigned + eight bit integers. This data type is defined by RTEMS in a manner that + ensures it is portable across different target processors. + +- .. index:: uint16_t + + ``uint16_t`` is the C99 data type that corresponds to unsigned + sixteen bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: uint32_t + + ``uint32_t`` is the C99 data type that corresponds to unsigned + thirty-two bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: uint64_t + + ``uint64_t`` is the C99 data type that corresponds to unsigned + sixty-four bit integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +- .. index:: uintptr_t + + ``uintptr_t`` is the C99 data type that corresponds to the + unsigned integer type that is of sufficient size to represent addresses + as unsigned integers. This data type is defined by RTEMS in a manner + that ensures it is portable across different target processors. + +.. COMMENT: COPYRIGHT (c) 1988-2011. + +.. COMMENT: On-Line Applications Research Corporation (OAR). + +.. COMMENT: All rights reserved. + -- cgit v1.2.3