summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-04-18 15:02:20 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-04-18 15:02:20 +0000
commit067a96ad0c3b0818d71d9aaadaee4b520d940de1 (patch)
treed04eed432a0534ebfb0830d6f7e49ce78ff098a4 /cpukit/rtems
parent2008-04-18 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-067a96ad0c3b0818d71d9aaadaee4b520d940de1.tar.bz2
2008-04-18 Joel Sherrill <joel.sherrill@oarcorp.com>
* rtems/include/rtems.h, rtems/include/rtems/rtems/asr.h, rtems/include/rtems/rtems/attr.h, rtems/include/rtems/rtems/barrier.h, rtems/include/rtems/rtems/barriermp.h, rtems/include/rtems/rtems/cache.h, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/dpmem.h, rtems/include/rtems/rtems/event.h, rtems/include/rtems/rtems/eventmp.h, rtems/include/rtems/rtems/eventset.h, rtems/include/rtems/rtems/intr.h, rtems/include/rtems/rtems/message.h, rtems/include/rtems/rtems/modes.h, rtems/include/rtems/rtems/mp.h, rtems/include/rtems/rtems/msgmp.h, rtems/include/rtems/rtems/object.h, rtems/include/rtems/rtems/options.h, rtems/include/rtems/rtems/part.h, rtems/include/rtems/rtems/partmp.h, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/region.h, rtems/include/rtems/rtems/regionmp.h, rtems/include/rtems/rtems/rtemsapi.h, rtems/include/rtems/rtems/sem.h, rtems/include/rtems/rtems/semmp.h, rtems/include/rtems/rtems/signal.h, rtems/include/rtems/rtems/signalmp.h, rtems/include/rtems/rtems/status.h, rtems/include/rtems/rtems/support.h, rtems/include/rtems/rtems/taskmp.h, rtems/include/rtems/rtems/tasks.h, rtems/include/rtems/rtems/timer.h, rtems/include/rtems/rtems/types.h, rtems/inline/rtems/rtems/asr.inl, rtems/inline/rtems/rtems/attr.inl, rtems/inline/rtems/rtems/barrier.inl, rtems/inline/rtems/rtems/dpmem.inl, rtems/inline/rtems/rtems/event.inl, rtems/inline/rtems/rtems/eventset.inl, rtems/inline/rtems/rtems/message.inl, rtems/inline/rtems/rtems/modes.inl, rtems/inline/rtems/rtems/options.inl, rtems/inline/rtems/rtems/part.inl, rtems/inline/rtems/rtems/ratemon.inl, rtems/inline/rtems/rtems/region.inl, rtems/inline/rtems/rtems/sem.inl, rtems/inline/rtems/rtems/status.inl, rtems/inline/rtems/rtems/support.inl, rtems/inline/rtems/rtems/tasks.inl, rtems/inline/rtems/rtems/timer.inl: Initial conversion of Classic API header files to Doxygen. * rtems/Doxyfile: New file.
Diffstat (limited to '')
-rw-r--r--cpukit/rtems/Doxyfile1079
-rw-r--r--cpukit/rtems/include/rtems.h40
-rw-r--r--cpukit/rtems/include/rtems/rtems/asr.h62
-rw-r--r--cpukit/rtems/include/rtems/rtems/attr.h25
-rw-r--r--cpukit/rtems/include/rtems/rtems/barrier.h33
-rw-r--r--cpukit/rtems/include/rtems/rtems/barriermp.h18
-rw-r--r--cpukit/rtems/include/rtems/rtems/cache.h58
-rw-r--r--cpukit/rtems/include/rtems/rtems/clock.h36
-rw-r--r--cpukit/rtems/include/rtems/rtems/config.h21
-rw-r--r--cpukit/rtems/include/rtems/rtems/dpmem.h76
-rw-r--r--cpukit/rtems/include/rtems/rtems/event.h74
-rw-r--r--cpukit/rtems/include/rtems/rtems/eventmp.h67
-rw-r--r--cpukit/rtems/include/rtems/rtems/eventset.h60
-rw-r--r--cpukit/rtems/include/rtems/rtems/intr.h86
-rw-r--r--cpukit/rtems/include/rtems/rtems/message.h136
-rw-r--r--cpukit/rtems/include/rtems/rtems/modes.h38
-rw-r--r--cpukit/rtems/include/rtems/rtems/mp.h34
-rw-r--r--cpukit/rtems/include/rtems/rtems/msgmp.h73
-rw-r--r--cpukit/rtems/include/rtems/rtems/object.h16
-rw-r--r--cpukit/rtems/include/rtems/rtems/options.h22
-rw-r--r--cpukit/rtems/include/rtems/rtems/part.h76
-rw-r--r--cpukit/rtems/include/rtems/rtems/partmp.h73
-rw-r--r--cpukit/rtems/include/rtems/rtems/ratemon.h137
-rw-r--r--cpukit/rtems/include/rtems/rtems/region.h142
-rw-r--r--cpukit/rtems/include/rtems/rtems/regionmp.h71
-rw-r--r--cpukit/rtems/include/rtems/rtems/rtemsapi.h18
-rw-r--r--cpukit/rtems/include/rtems/rtems/sem.h152
-rw-r--r--cpukit/rtems/include/rtems/rtems/semmp.h96
-rw-r--r--cpukit/rtems/include/rtems/rtems/signal.h44
-rw-r--r--cpukit/rtems/include/rtems/rtems/signalmp.h65
-rw-r--r--cpukit/rtems/include/rtems/rtems/status.h19
-rw-r--r--cpukit/rtems/include/rtems/rtems/support.h37
-rw-r--r--cpukit/rtems/include/rtems/rtems/taskmp.h75
-rw-r--r--cpukit/rtems/include/rtems/rtems/tasks.h285
-rw-r--r--cpukit/rtems/include/rtems/rtems/timer.h174
-rw-r--r--cpukit/rtems/include/rtems/rtems/types.h27
-rw-r--r--cpukit/rtems/inline/rtems/rtems/asr.inl55
-rw-r--r--cpukit/rtems/inline/rtems/rtems/attr.inl111
-rw-r--r--cpukit/rtems/inline/rtems/rtems/barrier.inl16
-rw-r--r--cpukit/rtems/inline/rtems/rtems/dpmem.inl47
-rw-r--r--cpukit/rtems/inline/rtems/rtems/event.inl16
-rw-r--r--cpukit/rtems/inline/rtems/rtems/eventset.inl46
-rw-r--r--cpukit/rtems/inline/rtems/rtems/message.inl40
-rw-r--r--cpukit/rtems/inline/rtems/rtems/modes.inl72
-rw-r--r--cpukit/rtems/inline/rtems/rtems/options.inl32
-rw-r--r--cpukit/rtems/inline/rtems/rtems/part.inl88
-rw-r--r--cpukit/rtems/inline/rtems/rtems/ratemon.inl72
-rw-r--r--cpukit/rtems/inline/rtems/rtems/region.inl62
-rw-r--r--cpukit/rtems/inline/rtems/rtems/sem.inl48
-rw-r--r--cpukit/rtems/inline/rtems/rtems/status.inl32
-rw-r--r--cpukit/rtems/inline/rtems/rtems/support.inl28
-rw-r--r--cpukit/rtems/inline/rtems/rtems/tasks.inl48
-rw-r--r--cpukit/rtems/inline/rtems/rtems/timer.inl72
53 files changed, 2549 insertions, 1881 deletions
diff --git a/cpukit/rtems/Doxyfile b/cpukit/rtems/Doxyfile
new file mode 100644
index 0000000000..68b7acfcc9
--- /dev/null
+++ b/cpukit/rtems/Doxyfile
@@ -0,0 +1,1079 @@
+# Doxyfile 1.3.4
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = RTEMS Classic API
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = classic_doxy
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
+# (Japanese with English messages), Korean, Norwegian, Polish, Portuguese,
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# This tag can be used to specify the encoding used in the generated output.
+# The encoding is not always determined by the language that is chosen,
+# but also whether or not the output is meant for Windows or non-Windows users.
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
+# forces the Windows encoding (this is the default for the Windows binary),
+# whereas setting the tag to NO uses a Unix-style encoding (the default for
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. It is allowed to use relative paths in the argument list.
+
+STRIP_FROM_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explict @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# reimplements.
+
+INHERIT_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 8
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = include inline
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
+
+FILE_PATTERNS = *.h *.inl
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+
+INPUT_FILTER =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+
+SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet
+
+HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output dir.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimised for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assigments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed.
+
+PREDEFINED = FALSE=0 \
+ CPU_USE_GENERIC_BITFIELD_DATA=0
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superceded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similiar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes that
+# lay further from the root node will be omitted. Note that setting this option to
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that a graph may be further truncated if the graph's image dimensions are
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
diff --git a/cpukit/rtems/include/rtems.h b/cpukit/rtems/include/rtems.h
index 249aa1cc04..e4441ec069 100644
--- a/cpukit/rtems/include/rtems.h
+++ b/cpukit/rtems/include/rtems.h
@@ -1,14 +1,13 @@
/**
* @file rtems.h
- */
-
-/*
+ *
* This include file contains information about RTEMS executive that
* is required by the application and is CPU independent. It includes
* two (2) CPU dependent files to tailor its data structures for a
* particular processor.
- *
- * COPYRIGHT (c) 1989-2008.
+ */
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -21,6 +20,13 @@
#ifndef _RTEMS_H
#define _RTEMS_H
+/**
+ * @defgroup ClassicRTEMS Classic API RTEMS Header
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -72,57 +78,53 @@ extern "C" {
#define RTEMS_HAS_HARDWARE_FP CPU_HARDWARE_FP
-/*
+/**
* The following define the constants which may be used in name searches.
*/
-
#define RTEMS_SEARCH_ALL_NODES OBJECTS_SEARCH_ALL_NODES
#define RTEMS_SEARCH_OTHER_NODES OBJECTS_SEARCH_OTHER_NODES
#define RTEMS_SEARCH_LOCAL_NODE OBJECTS_SEARCH_LOCAL_NODE
#define RTEMS_WHO_AM_I OBJECTS_WHO_AM_I
-/*
+/**
* Parameters and return id's for _Objects_Get_next
*/
-
#define RTEMS_OBJECT_ID_INITIAL_INDEX OBJECTS_ID_INITIAL_INDEX
#define RTEMS_OBJECT_ID_FINAL_INDEX OBJECTS_ID_FINAL_INDEX
#define RTEMS_OBJECT_ID_INITIAL(api, class, node) OBJECTS_ID_INITIAL(api, class, node)
#define RTEMS_OBJECT_ID_FINAL OBJECTS_ID_FINAL
-/*
+/**
* The following constant defines the minimum stack size which every
* thread must exceed.
*/
-
#define RTEMS_MINIMUM_STACK_SIZE STACK_MINIMUM_SIZE
-/*
+/**
* Constant for indefinite wait. (actually an illegal interval)
*/
-
#define RTEMS_NO_TIMEOUT WATCHDOG_NO_TIMEOUT
-/*
+/**
* An MPCI must support packets of at least this size.
*/
-
#define RTEMS_MINIMUM_PACKET_SIZE MP_PACKET_MINIMUM_PACKET_SIZE
-/*
- * The following constant defines the number of uint32_t 's
+/**
+ * The following constant defines the number of uint32_t's
* in a packet which must be converted to native format in a
* heterogeneous system. In packets longer than
- * MP_PACKET_MINIMUN_HETERO_CONVERSION uint32_t 's, some of the "extra" data
+ * MP_PACKET_MINIMUN_HETERO_CONVERSION uint32_t's, some of the "extra" data
* may a user message buffer which is not automatically endian swapped.
*/
-
#define RTEMS_MINIMUN_HETERO_CONVERSION MP_PACKET_MINIMUN_HETERO_CONVERSION
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/asr.h b/cpukit/rtems/include/rtems/rtems/asr.h
index 6fb7f3db91..4fcade6d28 100644
--- a/cpukit/rtems/include/rtems/rtems/asr.h
+++ b/cpukit/rtems/include/rtems/rtems/asr.h
@@ -1,13 +1,12 @@
/**
* @file rtems/rtems/asr.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Asynchronous Signal Handler. This Handler provides the low-level
* support required by the Signal Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -26,35 +25,36 @@ extern "C" {
#include <rtems/rtems/modes.h>
-/*
+/**
+ * @defgroup ClassicASR Classic API ASR Support
*
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following type defines the control block used to manage
* each signal set.
*/
-
typedef uint32_t rtems_signal_set;
-/*
+/**
* Return type for ASR Handler
*/
-
typedef void rtems_asr;
-/*
+/**
* The following type corresponds to the applications asynchronous
* signal processing routine.
*/
-
typedef rtems_asr ( *rtems_asr_entry )(
rtems_signal_set
);
-/*
- *
+/**
* The following defines the control structure used to manage
* signals. Each thread has a copy of this record.
*/
-
typedef struct {
boolean is_enabled; /* are ASRs enabled currently? */
rtems_asr_entry handler; /* address of RTEMS_ASR */
@@ -69,37 +69,69 @@ typedef struct {
* be used to compose a signal set.
*/
+/** This defines the bit in the signal set associated with signal 0. */
#define RTEMS_SIGNAL_0 0x00000001
+/** This defines the bit in the signal set associated with signal 1. */
#define RTEMS_SIGNAL_1 0x00000002
+/** This defines the bit in the signal set associated with signal 2. */
#define RTEMS_SIGNAL_2 0x00000004
+/** This defines the bit in the signal set associated with signal 3. */
#define RTEMS_SIGNAL_3 0x00000008
+/** This defines the bit in the signal set associated with signal 4. */
#define RTEMS_SIGNAL_4 0x00000010
+/** This defines the bit in the signal set associated with signal 5. */
#define RTEMS_SIGNAL_5 0x00000020
+/** This defines the bit in the signal set associated with signal 6. */
#define RTEMS_SIGNAL_6 0x00000040
+/** This defines the bit in the signal set associated with signal 7. */
#define RTEMS_SIGNAL_7 0x00000080
+/** This defines the bit in the signal set associated with signal 8. */
#define RTEMS_SIGNAL_8 0x00000100
+/** This defines the bit in the signal set associated with signal 9. */
#define RTEMS_SIGNAL_9 0x00000200
+/** This defines the bit in the signal set associated with signal 10. */
#define RTEMS_SIGNAL_10 0x00000400
+/** This defines the bit in the signal set associated with signal 11. */
#define RTEMS_SIGNAL_11 0x00000800
+/** This defines the bit in the signal set associated with signal 12. */
#define RTEMS_SIGNAL_12 0x00001000
+/** This defines the bit in the signal set associated with signal 13. */
#define RTEMS_SIGNAL_13 0x00002000
+/** This defines the bit in the signal set associated with signal 14. */
#define RTEMS_SIGNAL_14 0x00004000
+/** This defines the bit in the signal set associated with signal 15. */
#define RTEMS_SIGNAL_15 0x00008000
+/** This defines the bit in the signal set associated with signal 16. */
#define RTEMS_SIGNAL_16 0x00010000
+/** This defines the bit in the signal set associated with signal 17. */
#define RTEMS_SIGNAL_17 0x00020000
+/** This defines the bit in the signal set associated with signal 18. */
#define RTEMS_SIGNAL_18 0x00040000
+/** This defines the bit in the signal set associated with signal 19. */
#define RTEMS_SIGNAL_19 0x00080000
+/** This defines the bit in the signal set associated with signal 20. */
#define RTEMS_SIGNAL_20 0x00100000
+/** This defines the bit in the signal set associated with signal 21. */
#define RTEMS_SIGNAL_21 0x00200000
+/** This defines the bit in the signal set associated with signal 22. */
#define RTEMS_SIGNAL_22 0x00400000
+/** This defines the bit in the signal set associated with signal 23. */
#define RTEMS_SIGNAL_23 0x00800000
+/** This defines the bit in the signal set associated with signal 24. */
#define RTEMS_SIGNAL_24 0x01000000
+/** This defines the bit in the signal set associated with signal 25. */
#define RTEMS_SIGNAL_25 0x02000000
+/** This defines the bit in the signal set associated with signal 26. */
#define RTEMS_SIGNAL_26 0x04000000
+/** This defines the bit in the signal set associated with signal 27. */
#define RTEMS_SIGNAL_27 0x08000000
+/** This defines the bit in the signal set associated with signal 28. */
#define RTEMS_SIGNAL_28 0x10000000
+/** This defines the bit in the signal set associated with signal 29. */
#define RTEMS_SIGNAL_29 0x20000000
+/** This defines the bit in the signal set associated with signal 30. */
#define RTEMS_SIGNAL_30 0x40000000
+/** This defines the bit in the signal set associated with signal 31. */
#define RTEMS_SIGNAL_31 0x80000000
#ifndef __RTEMS_APPLICATION__
@@ -110,5 +142,7 @@ typedef struct {
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/attr.h b/cpukit/rtems/include/rtems/rtems/attr.h
index f37e8caa33..8c1bf99b2d 100644
--- a/cpukit/rtems/include/rtems/rtems/attr.h
+++ b/cpukit/rtems/include/rtems/rtems/attr.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/attr.h
- */
-
-/*
+ *
* This include file contains all information about the Object Attributes
* Handler.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -23,6 +22,13 @@
extern "C" {
#endif
+/**
+ * @defgroup ClassicAttributes Classic API Attributes
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
/* types */
typedef uint32_t rtems_attribute;
@@ -74,17 +80,14 @@ typedef uint32_t rtems_attribute;
#define ATTRIBUTES_REQUIRED 0
#endif
-/*
- * _Attributes_Handler_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief _Attributes_Handler_initialization
*
* This routine performs initialization for this handler.
*
* NOTE: There is no initialization required in C. Conditional compilation
* takes care of this in C.
*/
-
#define _Attributes_Handler_initialization()
#ifndef __RTEMS_APPLICATION__
@@ -95,5 +98,7 @@ typedef uint32_t rtems_attribute;
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/barrier.h b/cpukit/rtems/include/rtems/rtems/barrier.h
index 4d0a57398e..95264aba31 100644
--- a/cpukit/rtems/include/rtems/rtems/barrier.h
+++ b/cpukit/rtems/include/rtems/rtems/barrier.h
@@ -1,20 +1,19 @@
/**
* @file rtems/rtems/barrier.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Barrier Manager.
*
* Directives provided are:
*
- * + create a barrier
- * + get an ID of a barrier
- * + delete a barrier
- * + wait for a barrier
- * + signal a barrier
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a barrier
+ * - get an ID of a barrier
+ * - delete a barrier
+ * - wait for a barrier
+ * - signal a barrier
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -27,6 +26,13 @@
#ifndef _RTEMS_RTEMS_BARRIER_H
#define _RTEMS_RTEMS_BARRIER_H
+/**
+ * @defgroup ClassicBarrier Classic API Barrier
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifndef RTEMS_BARRIER_EXTERN
#define RTEMS_BARRIER_EXTERN extern
#endif
@@ -45,7 +51,6 @@ extern "C" {
/**
* This type defines the control block used to manage each barrier.
*/
-
typedef struct {
/** This is used to manage a barrier as an object. */
Objects_Control Object;
@@ -59,7 +64,6 @@ typedef struct {
* The following defines the information control block used to manage
* this class of objects.
*/
-
RTEMS_BARRIER_EXTERN Objects_Information _Barrier_Information;
/**
@@ -70,7 +74,6 @@ RTEMS_BARRIER_EXTERN Objects_Information _Barrier_Information;
* @param[in] maximum_barriers is the total number of barriers allowed to
* concurrently be active in the system.
*/
-
void _Barrier_Manager_initialization(
uint32_t maximum_barriers
);
@@ -92,7 +95,6 @@ void _Barrier_Manager_initialization(
*
* @return a status code indicating success or the reason for failure.
*/
-
rtems_status_code rtems_barrier_create(
rtems_name name,
rtems_attribute attribute_set,
@@ -116,7 +118,6 @@ rtems_status_code rtems_barrier_create(
*
* @return a status code indicating success or the reason for failure.
*/
-
rtems_status_code rtems_barrier_ident(
rtems_name name,
rtems_id *id
@@ -195,5 +196,7 @@ rtems_status_code _Barrier_Translate_core_barrier_return_code (
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/barriermp.h b/cpukit/rtems/include/rtems/rtems/barriermp.h
index c09b1fc6ff..c26b65339e 100644
--- a/cpukit/rtems/include/rtems/rtems/barriermp.h
+++ b/cpukit/rtems/include/rtems/rtems/barriermp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/barriermp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Barrier Manager.
- *
- * COPYRIGHT (c) 1989-2006.
+ */
+
+/* COPYRIGHT (c) 1989-2006.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,6 +18,13 @@
#ifndef _RTEMS_RTEMS_SEMMP_H
#define _RTEMS_RTEMS_SEMMP_H
+/**
+ * @defgroup ClassicBarrierMP Classic API Barrier MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**{*/
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -137,5 +143,7 @@ Barrier_MP_Packet *_Barrier_MP_Get_packet ( void );
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/cache.h b/cpukit/rtems/include/rtems/rtems/cache.h
index 17645346c3..c90b240f2b 100644
--- a/cpukit/rtems/include/rtems/rtems/cache.h
+++ b/cpukit/rtems/include/rtems/rtems/cache.h
@@ -1,11 +1,10 @@
/**
* @file rtems/rtems/cache.h
+ *
+ * Cache Manager
*/
-/*
- * Cache Manager
- *
- * COPYRIGHT (c) 1989-1999.
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -38,97 +37,112 @@ extern "C" {
#include <rtems/system.h>
#include <sys/types.h>
+/**
+ * @defgroup ClassicCache Classic API Cache
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
/*
* These functions will ONLY do something if the
* libcpu support includes data cache routines AND
* the CPU model supports data caching.
*/
-/*
+/**
* This function is called to flush the data cache by performing cache
* copybacks. It must determine how many cache lines need to be copied
* back and then perform the copybacks.
*/
void rtems_cache_flush_multiple_data_lines( const void *, size_t );
-/*
+/**
* This function is responsible for performing a data cache invalidate.
* It must determine how many cache lines need to be invalidated and then
* perform the invalidations.
*/
void rtems_cache_invalidate_multiple_data_lines( const void *, size_t );
-/*
+/**
* This function is responsible for performing a data cache flush.
* It flushes the entire cache.
*/
void rtems_cache_flush_entire_data( void );
-/*
+/**
* This function is responsible for performing a data cache
* invalidate. It invalidates the entire cache.
*/
void rtems_cache_invalidate_entire_data( void );
-/*
+/**
* This function returns the data cache granularity.
*/
int rtems_cache_get_data_line_size( void );
-/*
+/**
* This function freezes the data cache.
*/
void rtems_cache_freeze_data( void );
-/*
+/**
* This function unfreezes the data cache.
*/
void rtems_cache_unfreeze_data( void );
-/*
- * These functions enable/disable the data cache.
+/**
+ * This function enables the data cache.
*/
void rtems_cache_enable_data( void );
+
+/**
+ * This function disables the data cache.
+ */
void rtems_cache_disable_data( void );
-/*
+/**
* These functions will ONLY do something if the
* libcpu support includes instruction cache routines AND
* the CPU model supports instruction caching.
*/
-/*
+/**
* This function is responsible for performing an instruction cache
* invalidate. It must determine how many cache lines need to be invalidated
* and then perform the invalidations.
*/
void rtems_cache_invalidate_multiple_instruction_lines( const void *, size_t );
-/*
+/**
* This function is responsible for performing an instruction cache
* invalidate. It invalidates the entire cache.
*/
void rtems_cache_invalidate_entire_instruction( void );
-/*
+/**
* This function returns the instruction cache granularity.
*/
int rtems_cache_get_instruction_line_size( void );
-/*
+/**
* This function freezes the instruction cache.
*/
void rtems_cache_freeze_instruction( void );
-/*
+/**
* This function unfreezes the instruction cache.
*/
void rtems_cache_unfreeze_instruction( void );
-/*
- * These functions enable/disable the instruction cache.
+/**
+ * This function enables the instruction cache.
*/
void rtems_cache_enable_instruction( void );
+
+/**
+ * This function disables the instruction cache.
+ */
void rtems_cache_disable_instruction( void );
@@ -136,5 +150,7 @@ void rtems_cache_disable_instruction( void );
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/clock.h b/cpukit/rtems/include/rtems/rtems/clock.h
index d467f353fd..a6fc6bbb6a 100644
--- a/cpukit/rtems/include/rtems/rtems/clock.h
+++ b/cpukit/rtems/include/rtems/rtems/clock.h
@@ -1,21 +1,20 @@
/**
* @file rtems/rtems/clock.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Clock Manager. This manager provides facilities to set, obtain,
* and continually update the current date and time.
*
* This manager provides directives to:
*
- * + set the current date and time
- * + obtain the current date and time
- * + set the nanoseconds since last clock tick handler
- * + announce a clock tick
- * + obtain the system uptime
- *
- * COPYRIGHT (c) 1989-2008.
+ * - set the current date and time
+ * - obtain the current date and time
+ * - set the nanoseconds since last clock tick handler
+ * - announce a clock tick
+ * - obtain the system uptime
+ */
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -28,16 +27,23 @@
#ifndef _RTEMS_RTEMS_CLOCK_H
#define _RTEMS_RTEMS_CLOCK_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include <rtems/score/tod.h>
#include <rtems/score/watchdog.h>
#include <rtems/rtems/status.h>
#include <rtems/rtems/types.h>
/**
+ * @defgroup ClassicClock Classic API Clock
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
* List of things which can be returned by the rtems_clock_get directive.
*/
typedef enum {
@@ -259,5 +265,7 @@ Watchdog_Interval _TOD_To_seconds(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/config.h b/cpukit/rtems/include/rtems/rtems/config.h
index 3cc64cfe97..c12c72b2a1 100644
--- a/cpukit/rtems/include/rtems/rtems/config.h
+++ b/cpukit/rtems/include/rtems/rtems/config.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/config.h
- */
-
-/*
+ *
* This include file contains the table of user defined configuration
* parameters specific for the RTEMS API.
- *
- * COPYRIGHT (c) 1989-2006.
+ */
+
+/* COPYRIGHT (c) 1989-2006.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -26,7 +25,14 @@ extern "C" {
#include <rtems/rtems/types.h>
#include <rtems/rtems/tasks.h>
-/*
+/**
+ * @defgroup ClassicConfig Classic API Configuration
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following records define the Configuration Table. The
* information contained in this table is required in all
* RTEMS systems, whether single or multiprocessor. This
@@ -34,7 +40,6 @@ extern "C" {
*
* + required number of each object type
*/
-
typedef struct {
uint32_t maximum_tasks;
uint32_t maximum_timers;
@@ -53,5 +58,7 @@ typedef struct {
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/dpmem.h b/cpukit/rtems/include/rtems/rtems/dpmem.h
index 37fbc2f445..d14cef2c98 100644
--- a/cpukit/rtems/include/rtems/rtems/dpmem.h
+++ b/cpukit/rtems/include/rtems/rtems/dpmem.h
@@ -1,8 +1,6 @@
/**
* @file rtems/rtems/dpmem.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Dual Ported Memory Manager. This manager provides a mechanism
* for converting addresses between internal and external representations
@@ -10,14 +8,15 @@
*
* Directives provided are:
*
- * + create a port
- * + get ID of a port
- * + delete a port
- * + convert external to internal address
- * + convert internal to external address
+ * - create a port
+ * - get ID of a port
+ * - delete a port
+ * - convert external to internal address
+ * - convert internal to external address
*
- *
- * COPYRIGHT (c) 1989-2007.
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -42,12 +41,18 @@ extern "C" {
#include <rtems/rtems/support.h>
#include <rtems/rtems/status.h>
-/*
+/**
+ * @defgroup ClassicDPMEM Classic API Dual Ported Memory
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following structure defines the port control block. Each port
* has a control block associated with it. This control block contains
* all information required to support the port related operations.
*/
-
typedef struct {
Objects_Control Object;
void *internal_base; /* base internal address */
@@ -55,28 +60,22 @@ typedef struct {
uint32_t length; /* length of dual-ported area */
} Dual_ported_memory_Control;
-/*
+/**
* The following define the internal Dual Ported Memory information.
*/
-
RTEMS_DPMEM_EXTERN Objects_Information _Dual_ported_memory_Information;
-/*
- * _Dual_ported_memory_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief _Dual_ported_memory_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Dual_ported_memory_Manager_initialization(
uint32_t maximum_ports
);
-/*
- * rtems_port_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_port_create
*
* This routine implements the rtems_port_create directive. The port
* will have the name name. The port maps onto an area of dual ported
@@ -84,7 +83,6 @@ void _Dual_ported_memory_Manager_initialization(
* as the internal and external starting addresses, respectively.
* It returns the id of the created port in ID.
*/
-
rtems_status_code rtems_port_create(
rtems_name name,
void *internal_start,
@@ -93,60 +91,48 @@ rtems_status_code rtems_port_create(
Objects_Id *id
);
-/*
- * rtems_port_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_port_ident
*
* This routine implements the rtems_port_ident directive. This directive
* returns the port ID associated with name. If more than one port is
* named name, then the port to which the ID belongs is arbitrary.
*/
-
rtems_status_code rtems_port_ident(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_port_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_port_delete
*
* This routine implements the rtems_port_delete directive. It deletes
* the port associated with ID.
*/
-
rtems_status_code rtems_port_delete(
Objects_Id id
);
-/*
- * rtems_port_external_to_internal
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_port_external_to_internal
*
* This routine implements the rtems_port_external_to_internal directive.
* It returns the internal port address which maps to the provided
* external port address for the specified port ID.
*/
-
rtems_status_code rtems_port_external_to_internal(
Objects_Id id,
void *external,
void **internal
);
-/*
- * rtems_port_internal_to_external
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_port_internal_to_external
*
* This routine implements the Port_internal_to_external directive.
* It returns the external port address which maps to the provided
* internal port address for the specified port ID.
*/
-
rtems_status_code rtems_port_internal_to_external(
Objects_Id id,
void *internal,
@@ -161,5 +147,7 @@ rtems_status_code rtems_port_internal_to_external(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/event.h b/cpukit/rtems/include/rtems/rtems/event.h
index 68687af31e..584c76eb8c 100644
--- a/cpukit/rtems/include/rtems/rtems/event.h
+++ b/cpukit/rtems/include/rtems/rtems/event.h
@@ -1,19 +1,18 @@
/**
* @file rtems/rtems/event.h
- */
-
-/*
+ *
* This include file contains the information pertaining to the Event
* Manager. This manager provides a high performance method of communication
* and synchronization.
*
* Directives provided are:
*
- * + send an event set to a task
- * + receive event condition
+ * - send an event set to a task
+ * - receive event condition
*
- *
- * COPYRIGHT (c) 1989-2008.
+ */
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -43,43 +42,41 @@ extern "C" {
#include <rtems/score/watchdog.h>
#include <rtems/rtems/eventset.h>
-/*
+/**
+ * @defgroup ClassicEvent Classic API Event
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* This constant is passed as the event_in to the
* rtems_event_receive directive to determine which events are pending.
*/
-
#define EVENT_CURRENT 0
-/*
- * Event_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Event_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Event_Manager_initialization( void );
-/*
- * rtems_event_send
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_event_send
*
* This routine implements the rtems_event_send directive. It sends
* event_in to the task specified by ID. If the task is blocked
* waiting to receive events and the posting of event_in satisfies
* the task's event condition, then it is unblocked.
*/
-
rtems_status_code rtems_event_send (
Objects_Id id,
rtems_event_set event_in
);
-/*
- * rtems_event_receive
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_event_receive
*
* This routine implements the rtems_event_receive directive. This
* directive is invoked when the calling task wishes to receive
@@ -92,7 +89,6 @@ rtems_status_code rtems_event_send (
* parameter. This directive returns the events received in the
* event_out parameter.
*/
-
rtems_status_code rtems_event_receive (
rtems_event_set event_in,
rtems_option option_set,
@@ -100,10 +96,8 @@ rtems_status_code rtems_event_receive (
rtems_event_set *event_out
);
-/*
- * _Event_Seize
- *
- * DESCRIPTION:
+/**
+ * @brief Event_Seize
*
* This routine determines if the event condition event_in is
* satisfied. If so or if the no_wait option is enabled in option_set,
@@ -111,7 +105,6 @@ rtems_status_code rtems_event_receive (
* conditions is true, then the calling task is blocked with an
* optional timeout of ticks clock ticks.
*/
-
void _Event_Seize (
rtems_event_set event_in,
rtems_option option_set,
@@ -119,23 +112,18 @@ void _Event_Seize (
rtems_event_set *event_out
);
-/*
- * _Event_Surrender
- *
- * DESCRIPTION:
+/**
+ * @brief Event_Surrender
*
* This routine determines if the event condition of the_thread
* has been satisfied. If so, it unblocks the_thread.
*/
-
void _Event_Surrender (
Thread_Control *the_thread
);
-/*
- * _Event_Timeout
- *
- * DESCRIPTION:
+/**
+ * @brief Event_Timeout
*
* This routine is invoked when a task's event receive request
* has not been satisfied after the specified timeout interval.
@@ -143,18 +131,14 @@ void _Event_Surrender (
* code will be set in it's control block to indicate that a timeout
* has occurred.
*/
-
void _Event_Timeout (
Objects_Id id,
void *ignored
);
-/*
- * The following defines the synchronization flag used by the
- * Event Manager to insure that signals sent to the currently
- * executing thread are received properly.
+/**
+ * @brief he following defines the synchronization flag used by the
*/
-
RTEMS_EVENT_EXTERN volatile Thread_blocking_operation_States _Event_Sync_state;
#if defined(RTEMS_MULTIPROCESSING)
@@ -168,5 +152,7 @@ RTEMS_EVENT_EXTERN volatile Thread_blocking_operation_States _Event_Sync_state;
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/eventmp.h b/cpukit/rtems/include/rtems/rtems/eventmp.h
index e3b149b7d6..2ebed71b3f 100644
--- a/cpukit/rtems/include/rtems/rtems/eventmp.h
+++ b/cpukit/rtems/include/rtems/rtems/eventmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/eventmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Event Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -29,21 +28,26 @@ extern "C" {
#include <rtems/score/thread.h>
#include <rtems/score/watchdog.h>
-/*
+/**
+ * @defgroup ClassicEventMP Classic API Event MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following enumerated type defines the list of
* remote event operations.
*/
-
typedef enum {
EVENT_MP_SEND_REQUEST = 0,
EVENT_MP_SEND_RESPONSE = 1
} Event_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote event operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Event_MP_Remote_operations operation;
@@ -51,64 +55,50 @@ typedef struct {
} Event_MP_Packet;
/*
- * _Event_MP_Send_process_packet
- *
- * DESCRIPTION:
+ * @brief Event_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*
- * This routine is not needed since there are no process
+ * @note This routine is not needed since there are no process
* packets to be sent by this manager.
*/
-/*
- * _Event_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Event_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Event_MP_Send_request_packet (
Event_MP_Remote_operations operation,
Objects_Id event_id,
rtems_event_set event_in
);
-/*
- * _Event_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Event_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Event_MP_Send_response_packet (
Event_MP_Remote_operations operation,
Thread_Control *the_thread
);
-/*
- *
- * _Event_MP_Process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Event_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Event_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
/*
- * _Event_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+ * @brief Event_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
@@ -119,9 +109,7 @@ void _Event_MP_Process_packet (
*/
/*
- * _Event_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+ * @brief Event_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
@@ -131,19 +119,18 @@ void _Event_MP_Process_packet (
* deleted by this manager.
*/
-/*
- * _Event_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Event_MP_Get_packet
*
* This function is used to obtain a event mp packet.
*/
-
Event_MP_Packet *_Event_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/eventset.h b/cpukit/rtems/include/rtems/rtems/eventset.h
index 77fbabf763..6458cb92c4 100644
--- a/cpukit/rtems/include/rtems/rtems/eventset.h
+++ b/cpukit/rtems/include/rtems/rtems/eventset.h
@@ -1,13 +1,12 @@
/**
* @file rtems/rtems/eventset.h
- */
-
-/*
+ *
* This include file contains the information pertaining to the
* Event Sets Handler. This handler provides methods for the manipulation
* of event sets which will be sent and received by tasks.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -20,63 +19,98 @@
#ifndef _RTEMS_RTEMS_EVENTSET_H
#define _RTEMS_RTEMS_EVENTSET_H
+/**
+ * @defgroup ClassicEventSet Classic API Event Set
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
-/*
+/**
* The following defines the type used to control event sets.
*/
-
typedef uint32_t rtems_event_set;
-/*
+/**
* The following constants define the individual events which may
* be used to compose an event set.
*/
-
#define RTEMS_PENDING_EVENTS 0 /* receive pending events */
#define RTEMS_ALL_EVENTS 0xFFFFFFFF
+/** This defines the bit in the event set associated with event 0. */
#define RTEMS_EVENT_0 0x00000001
+/** This defines the bit in the event set associated with event 1. */
#define RTEMS_EVENT_1 0x00000002
+/** This defines the bit in the event set associated with event 2. */
#define RTEMS_EVENT_2 0x00000004
+/** This defines the bit in the event set associated with event 3. */
#define RTEMS_EVENT_3 0x00000008
+/** This defines the bit in the event set associated with event 4. */
#define RTEMS_EVENT_4 0x00000010
+/** This defines the bit in the event set associated with event 5. */
#define RTEMS_EVENT_5 0x00000020
+/** This defines the bit in the event set associated with event 6. */
#define RTEMS_EVENT_6 0x00000040
+/** This defines the bit in the event set associated with event 7. */
#define RTEMS_EVENT_7 0x00000080
+/** This defines the bit in the event set associated with event 8. */
#define RTEMS_EVENT_8 0x00000100
+/** This defines the bit in the event set associated with event 9. */
#define RTEMS_EVENT_9 0x00000200
+/** This defines the bit in the event set associated with event 10. */
#define RTEMS_EVENT_10 0x00000400
+/** This defines the bit in the event set associated with event 11. */
#define RTEMS_EVENT_11 0x00000800
+/** This defines the bit in the event set associated with event 12. */
#define RTEMS_EVENT_12 0x00001000
+/** This defines the bit in the event set associated with event 13. */
#define RTEMS_EVENT_13 0x00002000
+/** This defines the bit in the event set associated with event 14. */
#define RTEMS_EVENT_14 0x00004000
+/** This defines the bit in the event set associated with event 15. */
#define RTEMS_EVENT_15 0x00008000
+/** This defines the bit in the event set associated with event 16. */
#define RTEMS_EVENT_16 0x00010000
+/** This defines the bit in the event set associated with event 17. */
#define RTEMS_EVENT_17 0x00020000
+/** This defines the bit in the event set associated with event 18. */
#define RTEMS_EVENT_18 0x00040000
+/** This defines the bit in the event set associated with event 19. */
#define RTEMS_EVENT_19 0x00080000
+/** This defines the bit in the event set associated with event 20. */
#define RTEMS_EVENT_20 0x00100000
+/** This defines the bit in the event set associated with event 21. */
#define RTEMS_EVENT_21 0x00200000
+/** This defines the bit in the event set associated with event 22. */
#define RTEMS_EVENT_22 0x00400000
+/** This defines the bit in the event set associated with event 23. */
#define RTEMS_EVENT_23 0x00800000
+/** This defines the bit in the event set associated with event 24. */
#define RTEMS_EVENT_24 0x01000000
+/** This defines the bit in the event set associated with event 25. */
#define RTEMS_EVENT_25 0x02000000
+/** This defines the bit in the event set associated with event 26. */
#define RTEMS_EVENT_26 0x04000000
+/** This defines the bit in the event set associated with event 27. */
#define RTEMS_EVENT_27 0x08000000
+/** This defines the bit in the event set associated with event 29. */
#define RTEMS_EVENT_28 0x10000000
+/** This defines the bit in the event set associated with event 29. */
#define RTEMS_EVENT_29 0x20000000
+/** This defines the bit in the event set associated with event 30. */
#define RTEMS_EVENT_30 0x40000000
+/** This defines the bit in the event set associated with event 31. */
#define RTEMS_EVENT_31 0x80000000
-
-/*
+/**
* The following constant is the value of an event set which
* has no events pending.
*/
-
#define EVENT_SETS_NONE_PENDING 0
#ifndef __RTEMS_APPLICATION__
@@ -87,5 +121,7 @@ typedef uint32_t rtems_event_set;
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/intr.h b/cpukit/rtems/include/rtems/rtems/intr.h
index 281cf8e57b..500040693c 100644
--- a/cpukit/rtems/include/rtems/rtems/intr.h
+++ b/cpukit/rtems/include/rtems/rtems/intr.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/intr.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Interrupt Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -25,138 +24,119 @@ extern "C" {
#include <rtems/score/isr.h>
-/*
- * Interrupt level type
+/**
+ * @defgroup ClassicINTR Classic API Interrupt
+ *
+ * This encapsulates functionality which XXX
*/
+/**@{*/
+/**
+ * Interrupt level type
+ */
typedef ISR_Level rtems_interrupt_level;
-/*
+/**
* The following type defines the control block used to manage
* the vectors.
*/
-
typedef ISR_Vector_number rtems_vector_number;
-/*
+/**
* Return type for ISR Handler
*/
-
typedef void rtems_isr;
-/*
+/**
* Pointer to an ISR Handler
*/
-
typedef rtems_isr ( *rtems_isr_entry )(
rtems_vector_number
);
-/*
- * _Interrupt_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Interrupt_Manager_initialization
*
* This routine initializes the interrupt manager.
*
*/
-
void _Interrupt_Manager_initialization( void );
-/*
- * rtems_interrupt_catch
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_catch
*
* This routine implements the rtems_interrupt_catch directive. This
* directive installs new_isr_handler as the RTEMS interrupt service
* routine for vector. The previous RTEMS interrupt service
* routine is returned in old_isr_handler.
*/
-
rtems_status_code rtems_interrupt_catch(
rtems_isr_entry new_isr_handler,
rtems_vector_number vector,
rtems_isr_entry *old_isr_handler
);
-/*
- * rtems_interrupt_disable
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_disable
*
* This routine disables all maskable interrupts and returns the
* previous level in _isr_cookie.
*/
-
#define rtems_interrupt_disable( _isr_cookie ) \
_ISR_Disable(_isr_cookie)
-/*
- * rtems_interrupt_enable
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_enable
*
* This routine enables maskable interrupts to the level indicated
* _isr_cookie.
*/
-
#define rtems_interrupt_enable( _isr_cookie ) \
_ISR_Enable(_isr_cookie)
-/*
- * rtems_interrupt_flash
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_flash
*
* This routine temporarily enables maskable interrupts to the
* level in _isr_cookie before redisabling them.
*/
-
#define rtems_interrupt_flash( _isr_cookie ) \
_ISR_Flash(_isr_cookie)
-/*
- * rtems_interrupt_is_in_progress
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_is_in_progress
*
* This function returns TRUE if the processor is currently servicing
* an interrupt and FALSE otherwise. A return value of TRUE indicates
* that the caller is an interrupt service routine, NOT a thread. The
* directives available to an interrupt service routine are restricted.
*/
-
#define rtems_interrupt_is_in_progress() \
_ISR_Is_in_progress()
-/*
- * rtems_interrupt_cause
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_cause
*
* This routine generates an interrupt.
*
* NOTE: No implementation.
*/
-
#define rtems_interrupt_cause( _interrupt_to_cause )
-/*
- * rtems_interrupt_cause
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_interrupt_clear
*
* This routine clears the specified interrupt.
*
* NOTE: No implementation.
*/
-
#define rtems_interrupt_clear( _interrupt_to_clear )
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/message.h b/cpukit/rtems/include/rtems/rtems/message.h
index 9425ddf3af..4cd6b7ba94 100644
--- a/cpukit/rtems/include/rtems/rtems/message.h
+++ b/cpukit/rtems/include/rtems/rtems/message.h
@@ -1,24 +1,23 @@
/**
* @file rtems/rtems/message.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Message Queue Manager. This manager provides a mechanism for
* communication and synchronization between tasks using messages.
*
* Directives provided are:
*
- * + create a queue
- * + get ID of a queue
- * + delete a queue
- * + put a message at the rear of a queue
- * + put a message at the front of a queue
- * + broadcast N messages to a queue
- * + receive message from a queue
- * + flush all messages on a queue
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a queue
+ * - get ID of a queue
+ * - delete a queue
+ * - put a message at the rear of a queue
+ * - put a message at the front of a queue
+ * - broadcast N messages to a queue
+ * - receive message from a queue
+ * - flush all messages on a queue
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -46,22 +45,27 @@ extern "C" {
#include <rtems/rtems/attr.h>
#include <rtems/score/coremsg.h>
+/**
+ * @defgroup ClassicMessageQueue Classic API Message Queue
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
/*
* The following enumerated type details the modes in which a message
* may be submitted to a message queue. The message may be posted
* in a send or urgent fashion.
*/
-
typedef enum {
MESSAGE_QUEUE_SEND_REQUEST = 0,
MESSAGE_QUEUE_URGENT_REQUEST = 1
} Message_queue_Submit_types;
-/*
+/**
* The following records define the control block used to manage
* each message queue.
*/
-
typedef struct {
Objects_Control Object;
rtems_attribute attribute_set;
@@ -72,25 +76,19 @@ typedef struct {
* The following defines the information control block used to
* manage this class of objects.
*/
-
RTEMS_MESSAGE_EXTERN Objects_Information _Message_queue_Information;
-/*
- * _Message_queue_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Message_queue_Manager_initialization(
uint32_t maximum_message_queues
);
-/*
- * rtems_message_queue_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_create
*
* This routine implements the rtems_message_queue_create directive. The
* message queue will have the name name. If the attribute_set indicates
@@ -99,7 +97,6 @@ void _Message_queue_Manager_initialization(
* messages that will be held. It returns the id of the created
* message queue in ID.
*/
-
rtems_status_code rtems_message_queue_create(
rtems_name name,
uint32_t count,
@@ -108,10 +105,8 @@ rtems_status_code rtems_message_queue_create(
Objects_Id *id
);
-/*
- * rtems_message_queue_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_ident
*
* This routine implements the rtems_message_queue_ident directive.
* This directive returns the message queue ID associated with NAME.
@@ -121,30 +116,24 @@ rtems_status_code rtems_message_queue_create(
* The search can be limited to a particular node or allowed to
* encompass all nodes.
*/
-
rtems_status_code rtems_message_queue_ident(
rtems_name name,
uint32_t node,
Objects_Id *id
);
-/*
- * rtems_message_queue_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_delete
*
* This routine implements the rtems_message_queue_delete directive. The
* message queue indicated by ID is deleted.
*/
-
rtems_status_code rtems_message_queue_delete(
Objects_Id id
);
-/*
- * rtems_message_queue_send
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_send
*
* This routine implements the rtems_message_queue_send directive.
* This directive sends the message buffer to the message queue
@@ -156,17 +145,14 @@ rtems_status_code rtems_message_queue_delete(
* then the message buffer will be placed at the REAR of the
* chain of pending messages for this message queue.
*/
-
rtems_status_code rtems_message_queue_send(
Objects_Id id,
void *buffer,
size_t size
);
-/*
- * rtems_message_queue_urgent
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_urgent
*
* This routine implements the rtems_message_queue_urgent directive.
* This directive has the same behavior as rtems_message_queue_send
@@ -174,24 +160,20 @@ rtems_status_code rtems_message_queue_send(
* be placed at the FRONT of the chain of pending messages rather
* than at the REAR.
*/
-
rtems_status_code rtems_message_queue_urgent(
Objects_Id id,
void *buffer,
size_t size
);
-/*
- * rtems_message_queue_broadcast
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_broadcast
*
* This routine implements the rtems_message_queue_broadcast directive.
* This directive sends the message buffer to all of the tasks blocked
* waiting for a message on the message queue indicated by ID.
* If no tasks are waiting, then the message buffer will not be queued.
*/
-
rtems_status_code rtems_message_queue_broadcast(
Objects_Id id,
void *buffer,
@@ -199,10 +181,8 @@ rtems_status_code rtems_message_queue_broadcast(
uint32_t *count
);
-/*
- * rtems_message_queue_receive
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_receive
*
* This routine implements the rtems_message_queue_receive directive.
* This directive is invoked when the calling task wishes to receive
@@ -212,7 +192,6 @@ rtems_status_code rtems_message_queue_broadcast(
* then the task will be blocked until a message arrives or until,
* optionally, timeout clock ticks have passed.
*/
-
rtems_status_code rtems_message_queue_receive(
Objects_Id id,
void *buffer,
@@ -221,43 +200,35 @@ rtems_status_code rtems_message_queue_receive(
rtems_interval timeout
);
-/*
- * rtems_message_queue_flush
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_flush
*
* This routine implements the rtems_message_queue_flush directive.
* This directive takes all outstanding messages for the message
* queue indicated by ID and returns them to the inactive message
* chain. The number of messages flushed is returned in COUNT.
*/
-
rtems_status_code rtems_message_queue_flush(
Objects_Id id,
uint32_t *count
);
-/*
- * rtems_message_queue_get_number_pending
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_message_queue_get_number_pending
*
* This routine implements the rtems_message_queue_get_number_pending
* directive. This directive returns the number of pending
* messages for the message queue indicated by ID
* chain. The number of messages pending is returned in COUNT.
*/
-
rtems_status_code rtems_message_queue_get_number_pending(
Objects_Id id,
uint32_t *count
);
-/*
- * _Message_queue_Submit
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Submit
*
* This routine implements the directives rtems_message_queue_send
* and rtems_message_queue_urgent. It processes a message that is
@@ -266,7 +237,6 @@ rtems_status_code rtems_message_queue_get_number_pending(
* at the rear of the queue or it will be processed as an urgent message
* which will be inserted at the front of the queue.
*/
-
rtems_status_code _Message_queue_Submit(
Objects_Id id,
void *buffer,
@@ -274,36 +244,30 @@ rtems_status_code _Message_queue_Submit(
Message_queue_Submit_types submit_type
);
-/*
- * _Message_queue_Allocate
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Allocate
*
* This function allocates a message queue control block from
* the inactive chain of free message queue control blocks.
*/
-
Message_queue_Control *_Message_queue_Allocate (
uint32_t count,
uint32_t max_message_size
);
-/*
- * _Message_queue_Translate_core_message_queue_return_code
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Translate_core_message_queue_return_code
*
* This function returns a RTEMS status code based on the core message queue
* status code specified.
*/
-
rtems_status_code _Message_queue_Translate_core_message_queue_return_code (
uint32_t the_message_queue_status
);
-/*
- *
- * _Message_queue_Core_message_queue_mp_support
+#if defined(RTEMS_MULTIPROCESSING)
+/**
+ * @brief Message_queue_Core_message_queue_mp_support
*
* Input parameters:
* the_thread - the remote thread the message was submitted to
@@ -311,8 +275,6 @@ rtems_status_code _Message_queue_Translate_core_message_queue_return_code (
*
* Output parameters: NONE
*/
-
-#if defined(RTEMS_MULTIPROCESSING)
void _Message_queue_Core_message_queue_mp_support (
Thread_Control *the_thread,
Objects_Id id
diff --git a/cpukit/rtems/include/rtems/rtems/modes.h b/cpukit/rtems/include/rtems/rtems/modes.h
index 5a6131297c..b2d9ee9fb6 100644
--- a/cpukit/rtems/include/rtems/rtems/modes.h
+++ b/cpukit/rtems/include/rtems/rtems/modes.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/modes.h
- */
-
-/*
+ *
* This include file contains all constants and structures associated
* with the RTEMS thread and RTEMS_ASR modes.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,24 +18,29 @@
#ifndef _RTEMS_RTEMS_MODES_H
#define _RTEMS_RTEMS_MODES_H
+/**
+ * @defgroup ClassicModes Classic API Modes
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
#include <rtems/score/isr.h>
-/*
+/**
* The following type defines the control block used to manage
* each a mode set.
*/
-
typedef uint32_t Modes_Control;
-/*
+/**
* The following constants define the individual modes and masks
* which may be used to compose a mode set and to alter modes.
*/
-
#define RTEMS_ALL_MODE_MASKS 0x0000ffff
#define RTEMS_DEFAULT_MODES 0x00000000
@@ -56,25 +60,21 @@ typedef uint32_t Modes_Control;
#define RTEMS_ASR 0x00000000 /* enable RTEMS_ASR */
#define RTEMS_NO_ASR 0x00000400 /* disable RTEMS_ASR */
-/*
+/**
* The number of bits for interrupt levels is CPU dependent.
* RTEMS supports 0 to 256 levels in bits 0-7 of the mode.
*/
-/*PAGE
- *
- * RTEMS_INTERRUPT_LEVEL
- *
- * DESCRIPTION:
+/**
+ * @brief RTEMS_INTERRUPT_LEVEL
*
* This function returns the processor dependent interrupt
* level which corresponds to the requested interrupt level.
*
- * NOTE: RTEMS supports 256 interrupt levels using the least
- * significant eight bits of MODES.CONTROL. On any
- * particular CPU, fewer than 256 levels may be supported.
+ * @note RTEMS supports 256 interrupt levels using the least
+ * significant eight bits of MODES.CONTROL. On any
+ * particular CPU, fewer than 256 levels may be supported.
*/
-
#define RTEMS_INTERRUPT_LEVEL( _mode_set ) \
( (_mode_set) & RTEMS_INTERRUPT_MASK )
diff --git a/cpukit/rtems/include/rtems/rtems/mp.h b/cpukit/rtems/include/rtems/rtems/mp.h
index cebdb2a175..3e050d73af 100644
--- a/cpukit/rtems/include/rtems/rtems/mp.h
+++ b/cpukit/rtems/include/rtems/rtems/mp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/mp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,37 +18,38 @@
#ifndef _RTEMS_RTEMS_MP_H
#define _RTEMS_RTEMS_MP_H
+/**
+ * @defgroup ClassicMP Classic API Multiprocessing
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
-/*
- *
- * _Multiprocessing_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Multiprocessing_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Multiprocessing_Manager_initialization ( void );
-/*
- *
- * rtems_multiprocessing_announce
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_multiprocessing_announce
*
* This routine implements the MULTIPROCESSING_ANNOUNCE directive.
* It is invoked by the MPCI layer to indicate that an MPCI packet
* has been received.
*/
-
void rtems_multiprocessing_announce ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/msgmp.h b/cpukit/rtems/include/rtems/rtems/msgmp.h
index 2b9b41da15..ea9568f639 100644
--- a/cpukit/rtems/include/rtems/rtems/msgmp.h
+++ b/cpukit/rtems/include/rtems/rtems/msgmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/msgmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Message Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -30,11 +29,17 @@ extern "C" {
#include <rtems/score/thread.h>
#include <rtems/score/watchdog.h>
-/*
+/**
+ * @defgroup ClassicMsgMP Classic API Message Queue MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**{*/
+
+/**
* The following enumerated type defines the list of
* remote message queue operations.
*/
-
typedef enum {
MESSAGE_QUEUE_MP_ANNOUNCE_CREATE = 0,
MESSAGE_QUEUE_MP_ANNOUNCE_DELETE = 1,
@@ -53,11 +58,10 @@ typedef enum {
MESSAGE_QUEUE_MP_GET_NUMBER_PENDING_RESPONSE = 14
} Message_queue_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote message queue operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Message_queue_MP_Remote_operations operation;
@@ -70,15 +74,12 @@ typedef struct {
CORE_message_queue_Buffer Buffer;
} Message_queue_MP_Packet;
-/*
- * _Message_queue_MP_Send_process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*/
-
void _Message_queue_MP_Send_process_packet (
Message_queue_MP_Remote_operations operation,
Objects_Id message_queue_id,
@@ -86,15 +87,12 @@ void _Message_queue_MP_Send_process_packet (
Objects_Id proxy_id
);
-/*
- * _Message_queue_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Message_queue_MP_Send_request_packet (
Message_queue_MP_Remote_operations operation,
Objects_Id message_queue_id,
@@ -104,76 +102,63 @@ rtems_status_code _Message_queue_MP_Send_request_packet (
Watchdog_Interval timeout
);
-/*
- * _Message_queue_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Message_queue_MP_Send_response_packet (
Message_queue_MP_Remote_operations operation,
Objects_Id message_queue_id,
Thread_Control *the_thread
);
-/*
- *
- * _Message_queue_MP_Process_packet
+/**
*
- * DESCRIPTION:
+ @brief * _Message_queue_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Message_queue_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
-/*
- * _Message_queue_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
* the remote node must be informed of this.
*/
-
void _Message_queue_MP_Send_object_was_deleted (
Thread_Control *the_proxy
);
-/*
- * _Message_queue_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
* the remote node must be informed of this.
*/
-
void _Message_queue_MP_Send_extract_proxy (
void *argument
);
-/*
- * _Message_queue_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Message_queue_MP_Get_packet
*
* This function is used to obtain a message queue mp packet.
*/
-
Message_queue_MP_Packet *_Message_queue_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/object.h b/cpukit/rtems/include/rtems/rtems/object.h
index bb989df22c..367e5ef224 100644
--- a/cpukit/rtems/include/rtems/rtems/object.h
+++ b/cpukit/rtems/include/rtems/rtems/object.h
@@ -1,9 +1,8 @@
/**
- * @file rtems/classinfo.h
+ * @file rtems/rtems/object.h
*/
-
-/*
- * COPYRIGHT (c) 1989-2008.
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -26,6 +25,13 @@ extern "C" {
#include <rtems/rtems/types.h>
/**
+ * @defgroup ClassicClassInfo Classic API Class Information
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* This structure is used to return information to the application
* about the objects configured for a specific API/Class combination.
*/
@@ -325,5 +331,7 @@ rtems_status_code rtems_object_get_class_information(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/options.h b/cpukit/rtems/include/rtems/rtems/options.h
index 70f17d700c..a0f5c444d6 100644
--- a/cpukit/rtems/include/rtems/rtems/options.h
+++ b/cpukit/rtems/include/rtems/rtems/options.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/options.h
- */
-
-/*
+ *
* This include file contains information which defines the
* options available on many directives.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -23,18 +22,23 @@
extern "C" {
#endif
-/*
+/**
+ * @defgroup ClassicOptions Classic API Options
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following type defines the control block used to manage
* option sets.
*/
-
typedef uint32_t rtems_option;
-/*
+/**
* The following constants define the individual options which may
* be used to compose an option set.
*/
-
#define RTEMS_DEFAULT_OPTIONS 0x00000000
#define RTEMS_WAIT 0x00000000 /* wait on resource */
diff --git a/cpukit/rtems/include/rtems/rtems/part.h b/cpukit/rtems/include/rtems/rtems/part.h
index 0e2eb496c4..fda28714c7 100644
--- a/cpukit/rtems/include/rtems/rtems/part.h
+++ b/cpukit/rtems/include/rtems/rtems/part.h
@@ -1,8 +1,6 @@
/**
* @file rtems/rtems/part.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Partition Manager. This manager provides facilities to
* dynamically allocate memory in fixed-sized units which are returned
@@ -10,13 +8,14 @@
*
* Directives provided are:
*
- * + create a partition
- * + get an ID of a partition
- * + delete a partition
- * + get a buffer from a partition
- * + return a buffer to a partition
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a partition
+ * - get an ID of a partition
+ * - delete a partition
+ * - get a buffer from a partition
+ * - return a buffer to a partition
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -44,10 +43,16 @@ extern "C" {
#include <rtems/rtems/support.h>
#include <rtems/rtems/types.h>
-/*
- * The following defines the control block used to manage each partition.
+/**
+ * @defgroup ClassicPart Classic API Partition
+ *
+ * This encapsulates functionality which XXX
*/
+/**@{*/
+/**
+ * The following defines the control block used to manage each partition.
+ */
typedef struct {
Objects_Control Object;
void *starting_address; /* physical address */
@@ -58,29 +63,23 @@ typedef struct {
Chain_Control Memory; /* buffer chain */
} Partition_Control;
-/*
+/**
* The following defines the information control block used to
* manage this class of objects.
*/
-
RTEMS_PART_EXTERN Objects_Information _Partition_Information;
-/*
- * _Partition_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Partition_Manager_initialization(
uint32_t maximum_partitions
);
-/*
- * rtems_partition_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_partition_create
*
* This routine implements the rtems_partition_create directive. The
* partition will have the name name. The memory area managed by
@@ -90,7 +89,6 @@ void _Partition_Manager_initialization(
* the partition is global or local. It returns the id of the
* created partition in ID.
*/
-
rtems_status_code rtems_partition_create(
rtems_name name,
void *starting_address,
@@ -100,10 +98,8 @@ rtems_status_code rtems_partition_create(
Objects_Id *id
);
-/*
- * rtems_partition_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_partition_ident
*
* This routine implements the rtems_partition_ident directive.
* This directive returns the partition ID associated with name.
@@ -113,51 +109,41 @@ rtems_status_code rtems_partition_create(
* The search can be limited to a particular node or allowed to
* encompass all nodes.
*/
-
rtems_status_code rtems_partition_ident(
rtems_name name,
uint32_t node,
Objects_Id *id
);
-/*
- * rtems_partition_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_partition_delete
*
* This routine implements the rtems_partition_delete directive. The
* partition indicated by ID is deleted.
*/
-
rtems_status_code rtems_partition_delete(
Objects_Id id
);
-/*
- * rtems_partition_get_buffer
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_partition_get_buffer
*
* This routine implements the rtems_partition_get_buffer directive. It
* attempts to allocate a buffer from the partition associated with ID.
* If a buffer is allocated, its address is returned in buffer.
*/
-
rtems_status_code rtems_partition_get_buffer(
Objects_Id id,
void **buffer
);
-/*
- * rtems_partition_return_buffer
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_partition_return_buffer
*
* This routine implements the rtems_partition_return_buffer directive. It
* frees the buffer to the partition associated with ID. The buffer must
* have been previously allocated from the same partition.
*/
-
rtems_status_code rtems_partition_return_buffer(
Objects_Id id,
void *buffer
@@ -174,5 +160,7 @@ rtems_status_code rtems_partition_return_buffer(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/partmp.h b/cpukit/rtems/include/rtems/rtems/partmp.h
index 9369dc286c..9401e19b1a 100644
--- a/cpukit/rtems/include/rtems/rtems/partmp.h
+++ b/cpukit/rtems/include/rtems/rtems/partmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/partmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Partition Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -30,11 +29,17 @@ extern "C" {
#include <rtems/rtems/part.h>
-/*
+/**
+ * @defgroup ClassicPartMP Classic API Partition MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**{*/
+
+/**
* The following enumerated type defines the list of
* remote partition operations.
*/
-
typedef enum {
PARTITION_MP_ANNOUNCE_CREATE = 0,
PARTITION_MP_ANNOUNCE_DELETE = 1,
@@ -45,11 +50,10 @@ typedef enum {
PARTITION_MP_RETURN_BUFFER_RESPONSE = 6
} Partition_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote partition operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Partition_MP_Remote_operations operation;
@@ -58,15 +62,12 @@ typedef struct {
Objects_Id proxy_id;
} Partition_MP_Packet;
-/*
- * _Partition_MP_Send_process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*/
-
void _Partition_MP_Send_process_packet (
Partition_MP_Remote_operations operation,
Objects_Id partition_id,
@@ -74,54 +75,43 @@ void _Partition_MP_Send_process_packet (
Objects_Id proxy_id
);
-/*
- * _Partition_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Partition_MP_Send_request_packet (
Partition_MP_Remote_operations operation,
Objects_Id partition_id,
void *buffer
);
-/*
- * _Partition_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Partition_MP_Send_response_packet (
Partition_MP_Remote_operations operation,
Objects_Id partition_id,
Thread_Control *the_thread
);
-/*
- *
- * _Partition_MP_Process_packet
+/**
*
- * DESCRIPTION:
+ * @brief Partition_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Partition_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
-/*
- * _Partition_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
@@ -130,34 +120,31 @@ void _Partition_MP_Process_packet (
* This routine is not needed by the Partition since a partition
* cannot be deleted when buffers are in use.
*/
+#warning "Why is there no prototype for Partition_MP_Send_object_was_deleted"
-/*
- * _Partition_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
* the remote node must be informed of this.
*/
-
void _Partition_MP_Send_extract_proxy (
void *argument
);
-/*
- * _Partition_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_MP_Get_packet
*
* This function is used to obtain a partition mp packet.
*/
-
Partition_MP_Packet *_Partition_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/ratemon.h b/cpukit/rtems/include/rtems/rtems/ratemon.h
index 8645dec4a9..622b1c3e1a 100644
--- a/cpukit/rtems/include/rtems/rtems/ratemon.h
+++ b/cpukit/rtems/include/rtems/rtems/ratemon.h
@@ -1,21 +1,20 @@
/**
* @file rtems/rtems/ratemon.h
- */
-
-/*
+ *
* This include file contains all the constants, structures, and
* prototypes associated with the Rate Monotonic Manager. This manager
* provides facilities to implement tasks which execute in a periodic fashion.
*
* Directives provided are:
*
- * + create a rate monotonic timer
- * + cancel a period
- * + delete a rate monotonic timer
- * + conclude current and start the next period
- * + obtain status information on a period
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a rate monotonic timer
+ * - cancel a period
+ * - delete a rate monotonic timer
+ * - conclude current and start the next period
+ * - obtain status information on a period
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -34,6 +33,13 @@
#include <rtems/bspIo.h>
+/**
+ * @defgroup ClassicRateMon Classic API Rate Monotonic
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -43,7 +49,7 @@ extern "C" {
* resolution.
*/
#ifndef __RTEMS_USE_TICKS_RATE_MONOTONIC_STATISTICS__
- /*
+ /**
* Enable the nanosecond accurate statistics
*
* When not defined, the older style tick accurate granularity
@@ -60,11 +66,10 @@ extern "C" {
#include <string.h>
-/*
+/**
* The following enumerated type defines the states in which a
* period may be.
*/
-
typedef enum {
RATE_MONOTONIC_INACTIVE, /* off chain, never initialized */
RATE_MONOTONIC_OWNER_IS_BLOCKING, /* on chain, owner is blocking on it */
@@ -75,17 +80,15 @@ typedef enum {
/* rtems_rate_monotonic_period */
} rtems_rate_monotonic_period_states;
-/*
+/**
* The following constant is the interval passed to the rate_monontonic_period
* directive to obtain status information.
*/
-
#define RTEMS_PERIOD_STATUS WATCHDOG_NO_TIMEOUT
-/*
+/**
* The following defines the statistics kept on each period instance.
*/
-
typedef struct {
uint32_t count;
uint32_t missed_count;
@@ -109,10 +112,9 @@ typedef struct {
#endif
} rtems_rate_monotonic_period_statistics;
-/*
+/**
* The following defines the period status structure.
*/
-
typedef struct {
Objects_Id owner;
rtems_rate_monotonic_period_states state;
@@ -128,11 +130,10 @@ typedef struct {
#endif
} rtems_rate_monotonic_period_status;
-/*
+/**
* The following structure defines the control block used to manage
* each period.
*/
-
typedef struct {
Objects_Control Object;
Watchdog_Control Timer;
@@ -154,109 +155,86 @@ typedef struct {
RTEMS_RATEMON_EXTERN Objects_Information _Rate_monotonic_Information;
-/*
+/**
* _Rate_monotonic_Manager_initialization
*
- * DESCRIPTION:
- *
* This routine performs the initialization necessary for this manager.
*/
-
void _Rate_monotonic_Manager_initialization(
uint32_t maximum_periods
);
-/*
- * rtems_rate_monotonic_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_create
*
* This routine implements the rate_monotonic_create directive. The
* period will have the name name. It returns the id of the
* created period in ID.
*/
-
rtems_status_code rtems_rate_monotonic_create(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_rate_monotonic_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_ident
*
* This routine implements the rtems_rate_monotonic_ident directive.
* This directive returns the period ID associated with name.
* If more than one period is named name, then the period
* to which the ID belongs is arbitrary.
*/
-
rtems_status_code rtems_rate_monotonic_ident(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_rate_monotonic_cancel
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_cancel
*
* This routine implements the rtems_rate_monotonic_cancel directive. This
* directive stops the period associated with ID from continuing to
* run.
*/
-
rtems_status_code rtems_rate_monotonic_cancel(
Objects_Id id
);
-/*
- * rtems_rate_monotonic_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_delete
*
* This routine implements the rtems_rate_monotonic_delete directive. The
* period indicated by ID is deleted.
*/
-
rtems_status_code rtems_rate_monotonic_delete(
Objects_Id id
);
-/*
- * rtems_rate_monotonic_get_status
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_get_status
*
* This routine implements the rtems_rate_monotonic_get_status directive.
* Information about the period indicated by ID is returned.
*
*/
-
rtems_status_code rtems_rate_monotonic_get_status(
Objects_Id id,
rtems_rate_monotonic_period_status *status
);
-/*
- * rtems_rate_monotonic_get_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_get_statistics
*
* This routine implements the rtems_rate_monotonic_get_statistics directive.
* Statistics gathered from the use of this period are returned.
*/
-
rtems_status_code rtems_rate_monotonic_get_statistics(
Objects_Id id,
rtems_rate_monotonic_period_statistics *statistics
);
-/*
- * rtems_rate_monotonic_reset_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_reset_statistics
*
* This directive allows a thread to reset the statistics information
* on a specific period instance.
@@ -265,20 +243,16 @@ rtems_status_code rtems_rate_monotonic_reset_statistics(
Objects_Id id
);
-/*
- * rtems_rate_monotonic_reset_all_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_reset_all_statistics
*
* This directive allows a thread to reset the statistics information
* on ALL period instances.
*/
void rtems_rate_monotonic_reset_all_statistics( void );
-/*
- * rtems_rate_monotonic_report_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_report_statistics
*
* This directive allows a thread to print the statistics information
* on ALL period instances which have non-zero counts using printk.
@@ -288,36 +262,29 @@ void rtems_rate_monotonic_report_statistics_with_plugin(
rtems_printk_plugin_t print
);
-/*
- * rtems_rate_monotonic_report_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_report_statistics
*
* This directive allows a thread to print the statistics information
* on ALL period instances which have non-zero counts using printk.
*/
void rtems_rate_monotonic_report_statistics( void );
-/*
- * rtems_rate_monotonic_period
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_rate_monotonic_period
*
* This routine implements the rtems_rate_monotonic_period directive. When
* length is non-zero, this directive initiates the period associated with
* ID from continuing for a period of length. If length is zero, then
* result is set to indicate the current state of the period.
*/
-
rtems_status_code rtems_rate_monotonic_period(
Objects_Id id,
rtems_interval length
);
-/*
- * _Rate_monotonic_Timeout
- *
- * DESCRIPTION:
+/**
+ * @brief _Rate_monotonic_Timeout
*
* This routine is invoked when the period represented
* by ID expires. If the task which owns this period is blocked
@@ -326,20 +293,16 @@ rtems_status_code rtems_rate_monotonic_period(
* period to expire, then the period is placed in the EXPIRED
* state and not restarted.
*/
-
void _Rate_monotonic_Timeout(
Objects_Id id,
void *ignored
);
-/*
- * _Rate_monotonic_Reset_statistics
- *
- * DESCRIPTION:
+/**
+ * @brief _Rate_monotonic_Reset_statistics
*
* This method resets the statistics information for a period instance.
*/
-
#ifdef RTEMS_ENABLE_NANOSECOND_RATE_MONOTONIC_STATISTICS
#define _Rate_monotonic_Reset_wall_time_statistics( _the_period ) \
do { \
@@ -381,5 +344,7 @@ void _Rate_monotonic_Timeout(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/region.h b/cpukit/rtems/include/rtems/rtems/region.h
index 78cd7796a9..aff2648265 100644
--- a/cpukit/rtems/include/rtems/rtems/region.h
+++ b/cpukit/rtems/include/rtems/rtems/region.h
@@ -1,21 +1,20 @@
/**
* @file rtems/rtems/region.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Region Manager. This manager provides facilities to dynamically
* allocate memory in variable sized units which are returned as segments.
*
* Directives provided are:
*
- * + create a region
- * + get an ID of a region
- * + delete a region
- * + get a segment from a region
- * + return a segment to a region
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a region
+ * - get an ID of a region
+ * - delete a region
+ * - get a segment from a region
+ * - return a segment to a region
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -28,14 +27,6 @@
#ifndef _RTEMS_RTEMS_REGION_H
#define _RTEMS_RTEMS_REGION_H
-#ifndef RTEMS_REGION_EXTERN
-#define RTEMS_REGION_EXTERN extern
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include <stddef.h>
#include <rtems/score/object.h>
@@ -48,7 +39,22 @@ extern "C" {
#include <rtems/rtems/support.h>
#include <rtems/rtems/types.h>
-/*
+/**
+ * @defgroup ClassicRegion Classic API Region
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+#ifndef RTEMS_REGION_EXTERN
+#define RTEMS_REGION_EXTERN extern
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
* The following records define the control block used to manage
* each region.
*/
@@ -65,29 +71,23 @@ typedef struct {
Heap_Control Memory;
} Region_Control;
-/*
+/**
* The following defines the information control block used to
* manage this class of objects.
*/
-
RTEMS_REGION_EXTERN Objects_Information _Region_Information;
-/*
- * _Region_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Region_Manager_initialization(
uint32_t maximum_regions
);
-/*
- * rtems_region_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_create
*
* This routine implements the rtems_region_create directive. The
* region will have the name name. The memory area managed by
@@ -97,7 +97,6 @@ void _Region_Manager_initialization(
* thread queue discipline is used by the region. It returns the
* id of the created region in ID.
*/
-
rtems_status_code rtems_region_create(
rtems_name name,
void *starting_address,
@@ -107,86 +106,69 @@ rtems_status_code rtems_region_create(
Objects_Id *id
);
-/*
- * rtems_region_extend
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_extend
*
* This routine implements the rtems_region_extend directive. The
* region will have the name name. The memory area managed by
* the region will be attempted to be grown by length bytes using
* the memory starting at starting_address.
*/
-
rtems_status_code rtems_region_extend(
Objects_Id id,
void *starting_address,
uint32_t length
);
-/*
- * rtems_region_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_ident
*
* This routine implements the rtems_region_ident directive.
* This directive returns the region ID associated with name.
* If more than one region is named name, then the region
* to which the ID belongs is arbitrary.
*/
-
rtems_status_code rtems_region_ident(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_region_get_information
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_get_information
*
* This routine implements the rtems_region_get_information directive.
* This directive returns information about the heap associated with
* this region.
*/
-
rtems_status_code rtems_region_get_information(
Objects_Id id,
Heap_Information_block *the_info
);
-/*
- * rtems_region_get_free_information
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_get_free_information
*
* This routine implements the rtems_region_get_free_information directive.
* This directive returns information about the free blocks in the
* heap associated with this region.
*/
-
rtems_status_code rtems_region_get_free_information(
Objects_Id id,
Heap_Information_block *the_info
);
-/*
- * rtems_region_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_delete
*
* This routine implements the rtems_region_delete directive. The
* region indicated by ID is deleted.
*/
-
rtems_status_code rtems_region_delete(
Objects_Id id
);
-/*
- * rtems_region_get_segment
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_get_segment
*
* This routine implements the rtems_region_get_segment directive. It
* attempts to allocate a segment from the region associated with ID.
@@ -196,7 +178,6 @@ rtems_status_code rtems_region_delete(
* timeout of timeout clock ticks. Whether the task blocks or returns
* immediately is based on the no_wait option in the option_set.
*/
-
rtems_status_code rtems_region_get_segment(
Objects_Id id,
uint32_t size,
@@ -205,25 +186,20 @@ rtems_status_code rtems_region_get_segment(
void **segment
);
-/*
- * rtems_region_get_segment_size
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_get_segment_size
*
* This routine implements the rtems_region_get_segment_size directive. It
* returns the size in bytes of the specified user memory area.
*/
-
rtems_status_code rtems_region_get_segment_size(
Objects_Id id,
void *segment,
size_t *size
);
-/*
- * rtems_region_return_segment
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_return_segment
*
* This routine implements the rtems_region_return_segment directive. It
* frees the segment to the region associated with ID. The segment must
@@ -233,16 +209,13 @@ rtems_status_code rtems_region_get_segment_size(
* many subsequent tasks as possible will be unblocked with their requests
* satisfied.
*/
-
rtems_status_code rtems_region_return_segment(
Objects_Id id,
void *segment
);
-/*
- * rtems_region_resize_segment
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_region_resize_segment
*
* This routine implements the rtems_region_resize_segment directive. It
* tries to resize segment in the region associated with 'id' to the new size
@@ -261,7 +234,6 @@ rtems_status_code rtems_region_return_segment(
* 'old_size' the old size in bytes of the user memory area of the specified
* segment.
*/
-
rtems_status_code rtems_region_resize_segment(
Objects_Id id,
void *segment,
@@ -271,21 +243,27 @@ rtems_status_code rtems_region_resize_segment(
#ifndef __RTEMS_APPLICATION__
#include <rtems/rtems/region.inl>
+/**
+ * @brief Region_Process_queue
+ *
+ * This is a helper routine which is invoked any time memory is
+ * freed. It looks at the set of waiting tasks and attempts to
+ * satisfy all outstanding requests.
+ */
extern void _Region_Process_queue(Region_Control *the_region);
+
#endif
+
#if defined(RTEMS_MULTIPROCESSING)
#include <rtems/rtems/regionmp.h>
#endif
-/*
- * _Region_Debug_Walk
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_Debug_Walk
*
* This routine is invoked to verify the integrity of a heap associated
* with the_region.
*/
-
#ifdef RTEMS_DEBUG
#define _Region_Debug_Walk( _the_region, _source ) \
@@ -304,5 +282,7 @@ extern void _Region_Process_queue(Region_Control *the_region);
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/regionmp.h b/cpukit/rtems/include/rtems/rtems/regionmp.h
index 2b0eeac29a..5c4a61cd04 100644
--- a/cpukit/rtems/include/rtems/rtems/regionmp.h
+++ b/cpukit/rtems/include/rtems/rtems/regionmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/regionmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Region Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -30,11 +29,17 @@ extern "C" {
#include <rtems/rtems/options.h>
#include <rtems/rtems/region.h>
-/*
+/**
+ * @defgroup ClassicRegionMP Classic API Region MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following enumerated type defines the list of
* remote region operations.
*/
-
typedef enum {
REGION_MP_ANNOUNCE_CREATE = 0,
REGION_MP_ANNOUNCE_DELETE = 1,
@@ -45,11 +50,10 @@ typedef enum {
REGION_MP_RETURN_SEGMENT_RESPONSE = 6
} Region_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote region operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Region_MP_Remote_operations operation;
@@ -60,15 +64,12 @@ typedef struct {
void *segment;
} Region_MP_Packet;
-/*
- * _Region_MP_Send_process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*/
-
void _Region_MP_Send_process_packet (
Region_MP_Remote_operations operation,
Objects_Id region_id,
@@ -76,15 +77,12 @@ void _Region_MP_Send_process_packet (
Objects_Id proxy_id
);
-/*
- * _Region_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Region_MP_Send_request_packet (
Region_MP_Remote_operations operation,
Objects_Id region_id,
@@ -94,39 +92,30 @@ rtems_status_code _Region_MP_Send_request_packet (
rtems_interval timeout
);
-/*
- * _Region_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Region_MP_Send_response_packet (
Region_MP_Remote_operations operation,
Objects_Id region_id,
Thread_Control *the_thread
);
-/*
- *
- * _Region_MP_Process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Region_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
/*
- * _Region_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+ * @brief _Region_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
@@ -136,33 +125,29 @@ void _Region_MP_Process_packet (
* cannot be deleted when segments are in use.
*/
-/*
- * _Region_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
* the remote node must be informed of this.
*/
-
void _Region_MP_Send_extract_proxy (
void *argument
);
-/*
- * _Region_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _Region_MP_Get_packet
*
* This function is used to obtain a region mp packet.
*/
-
Region_MP_Packet *_Region_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/rtemsapi.h b/cpukit/rtems/include/rtems/rtems/rtemsapi.h
index d1c2a0538c..b89f90e96f 100644
--- a/cpukit/rtems/include/rtems/rtems/rtemsapi.h
+++ b/cpukit/rtems/include/rtems/rtems/rtemsapi.h
@@ -1,11 +1,10 @@
/**
* @file rtems/rtems/rtemsapi.h
+ *
+ * RTEMS API Support
*/
-/*
- * RTEMS API Support
- *
- * COPYRIGHT (c) 1989-1999.
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -20,18 +19,25 @@
#include <rtems/config.h>
-/*PAGE
+/**
+ * @defgroup ClassicRTEMS Classic RTEMS Support
*
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* _RTEMS_API_Initialize
*
* This routine initializes the RTEMS API by invoking the initialization
* routine for each RTEMS manager with the appropriate parameters
* from the configuration_table.
*/
-
void _RTEMS_API_Initialize(
rtems_configuration_table *configuration_table
);
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/sem.h b/cpukit/rtems/include/rtems/rtems/sem.h
index a5cb09f3fd..9b64e9a810 100644
--- a/cpukit/rtems/include/rtems/rtems/sem.h
+++ b/cpukit/rtems/include/rtems/rtems/sem.h
@@ -1,8 +1,6 @@
/**
* @file rtems/rtems/sem.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Semaphore Manager. This manager utilizes standard Dijkstra
* counting semaphores to provide synchronization and mutual exclusion
@@ -10,13 +8,14 @@
*
* Directives provided are:
*
- * + create a semaphore
- * + get an ID of a semaphore
- * + delete a semaphore
- * + acquire a semaphore
- * + release a semaphore
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a semaphore
+ * - get an ID of a semaphore
+ * - delete a semaphore
+ * - acquire a semaphore
+ * - release a semaphore
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -45,10 +44,16 @@ extern "C" {
#include <rtems/score/object.h>
#include <rtems/score/coresem.h>
-/*
- * The following defines the control block used to manage each semaphore.
+/**
+ * @defgroup ClassicSem Classic API Semaphore
+ *
+ * This encapsulates functionality which XXX
*/
+/**@{*/
+/**
+ * The following defines the control block used to manage each semaphore.
+ */
typedef struct {
Objects_Control Object;
rtems_attribute attribute_set;
@@ -58,29 +63,23 @@ typedef struct {
} Core_control;
} Semaphore_Control;
-/*
+/**
* The following defines the information control block used to manage
* this class of objects.
*/
-
RTEMS_SEM_EXTERN Objects_Information _Semaphore_Information;
-/*
- * _Semaphore_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Semaphore_Manager_initialization(
uint32_t maximum_semaphores
);
-/*
- * rtems_semaphore_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_semaphore_create
*
* This routine implements the rtems_semaphore_create directive. The
* semaphore will have the name name. The starting count for
@@ -88,7 +87,6 @@ void _Semaphore_Manager_initialization(
* the semaphore is global or local and the thread queue
* discipline. It returns the id of the created semaphore in ID.
*/
-
rtems_status_code rtems_semaphore_create(
rtems_name name,
uint32_t count,
@@ -97,10 +95,8 @@ rtems_status_code rtems_semaphore_create(
rtems_id *id
);
-/*
- * rtems_semaphore_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_semaphore_ident
*
* This routine implements the rtems_semaphore_ident directive.
* This directive returns the semaphore ID associated with name.
@@ -110,30 +106,24 @@ rtems_status_code rtems_semaphore_create(
* The search can be limited to a particular node or allowed to
* encompass all nodes.
*/
-
rtems_status_code rtems_semaphore_ident(
rtems_name name,
uint32_t node,
rtems_id *id
);
-/*
- * rtems_semaphore_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_semaphore_delete
*
* This routine implements the rtems_semaphore_delete directive. The
* semaphore indicated by ID is deleted.
*/
-
rtems_status_code rtems_semaphore_delete(
rtems_id id
);
-/*
- * rtems_semaphore_obtain
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_semaphore_obtain
*
* This routine implements the rtems_semaphore_obtain directive. It
* attempts to obtain a unit from the semaphore associated with ID.
@@ -143,17 +133,14 @@ rtems_status_code rtems_semaphore_delete(
* clock ticks. Whether the task blocks or returns immediately
* is based on the RTEMS_NO_WAIT option in the option_set.
*/
-
rtems_status_code rtems_semaphore_obtain(
rtems_id id,
uint32_t option_set,
rtems_interval timeout
);
-/*
- * rtems_semaphore_release
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_semaphore_release
*
* This routine implements the rtems_semaphore_release directive. It
* frees a unit to the semaphore associated with ID. If a task was
@@ -161,112 +148,51 @@ rtems_status_code rtems_semaphore_obtain(
* be readied and the unit given to that task. Otherwise, the unit
* will be returned to the semaphore.
*/
-
rtems_status_code rtems_semaphore_release(
rtems_id id
);
-/*
- * rtems_semaphore_flush
- *
- * This directive allows a thread to flush the threads
+/**
+ * @brief rtems_semaphore_flush
* pending on the semaphore.
*/
-
rtems_status_code rtems_semaphore_flush(
rtems_id id
);
-/*
- * _Semaphore_Seize
- *
- * DESCRIPTION:
+/**
+ * @brief _Semaphore_Seize
*
* This routine attempts to receive a unit from the_semaphore.
* If a unit is available or if the RTEMS_NO_WAIT option is enabled in
* option_set, then the routine returns. Otherwise, the calling task
* is blocked until a unit becomes available.
*/
-
boolean _Semaphore_Seize(
Semaphore_Control *the_semaphore,
uint32_t option_set
);
-/*
- * _Semaphore_Translate_core_mutex_return_code
- *
- * DESCRIPTION:
+/**
+ * @brief _Semaphore_Translate_core_mutex_return_code
*
* This function returns a RTEMS status code based on the mutex
* status code specified.
*/
-
rtems_status_code _Semaphore_Translate_core_mutex_return_code (
uint32_t the_mutex_status
);
-/*
- * _Semaphore_Translate_core_semaphore_return_code
- *
- * DESCRIPTION:
+/**
+ * @brief _Semaphore_Translate_core_semaphore_return_code
*
* This function returns a RTEMS status code based on the semaphore
* status code specified.
*/
-
rtems_status_code _Semaphore_Translate_core_semaphore_return_code (
uint32_t the_mutex_status
);
-/*PAGE
- *
- * _Semaphore_Core_mutex_mp_support
- *
- * DESCRIPTION:
- *
- * This function processes the global actions necessary for remote
- * accesses to a global semaphore based on a core mutex. This function
- * is called by the core.
- */
-
-#if defined(RTEMS_MULTIPROCESSING)
-void _Semaphore_Core_mutex_mp_support (
- Thread_Control *the_thread,
- rtems_id id
-);
-#endif
-
-/*PAGE
- *
- * _Semaphore_Core_mp_support
- *
- * DESCRIPTION:
- *
- * This function processes the global actions necessary for remote
- * accesses to a global semaphore based on a core semaphore. This function
- * is called by the core.
- */
-
-void _Semaphore_Core_semaphore_mp_support (
- Thread_Control *the_thread,
- rtems_id id
-);
-
-/*PAGE
- *
- * _POSIX_Semaphore_MP_support
- *
- * DESCRIPTION:
- *
- * XXX
- */
-
-void _POSIX_Semaphore_MP_support(
- Thread_Control *the_thread,
- Objects_Id id
-);
-
#ifndef __RTEMS_APPLICATION__
#include <rtems/rtems/sem.inl>
#endif
@@ -278,5 +204,7 @@ void _POSIX_Semaphore_MP_support(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/semmp.h b/cpukit/rtems/include/rtems/rtems/semmp.h
index 9af338bbf7..cabbe1d3ae 100644
--- a/cpukit/rtems/include/rtems/rtems/semmp.h
+++ b/cpukit/rtems/include/rtems/rtems/semmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/semmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Semaphore Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -30,11 +29,17 @@ extern "C" {
#include <rtems/score/thread.h>
#include <rtems/score/watchdog.h>
-/*
+/**
+ * @defgroup ClassicSEM Classic API Semaphore MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following enumerated type defines the list of
* remote semaphore operations.
*/
-
typedef enum {
SEMAPHORE_MP_ANNOUNCE_CREATE = 0,
SEMAPHORE_MP_ANNOUNCE_DELETE = 1,
@@ -45,11 +50,10 @@ typedef enum {
SEMAPHORE_MP_RELEASE_RESPONSE = 6
} Semaphore_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote semaphore operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Semaphore_MP_Remote_operations operation;
@@ -58,15 +62,12 @@ typedef struct {
Objects_Id proxy_id;
} Semaphore_MP_Packet;
-/*
- * _Semaphore_MP_Send_process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*/
-
void _Semaphore_MP_Send_process_packet (
Semaphore_MP_Remote_operations operation,
Objects_Id semaphore_id,
@@ -74,15 +75,12 @@ void _Semaphore_MP_Send_process_packet (
Objects_Id proxy_id
);
-/*
- * _Semaphore_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Semaphore_MP_Send_request_packet (
Semaphore_MP_Remote_operations operation,
Objects_Id semaphore_id,
@@ -90,73 +88,81 @@ rtems_status_code _Semaphore_MP_Send_request_packet (
rtems_interval timeout
);
-/*
- * _Semaphore_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Semaphore_MP_Send_response_packet (
Semaphore_MP_Remote_operations operation,
Objects_Id semaphore_id,
Thread_Control *the_thread
);
-/*
- *
- * _Semaphore_MP_Process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Semaphore_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
-/*
- * _Semaphore_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
* the remote node must be informed of this.
*/
-
void _Semaphore_MP_Send_object_was_deleted (
Thread_Control *the_proxy
);
-/*
- * _Semaphore_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
* the remote node must be informed of this.
*/
-
void _Semaphore_MP_Send_extract_proxy (
void *argument
);
-/*
- * _Semaphore_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_MP_Get_packet
*
* This function is used to obtain a semaphore mp packet.
*/
-
Semaphore_MP_Packet *_Semaphore_MP_Get_packet ( void );
+/**
+ * @brief _Semaphore_Core_mutex_mp_support
+ *
+ * This function processes the global actions necessary for remote
+ * accesses to a global semaphore based on a core mutex. This function
+ * is called by the core.
+ */
+void _Semaphore_Core_mutex_mp_support (
+ Thread_Control *the_thread,
+ rtems_id id
+);
+
+/**
+ * @brief Semaphore_Core_mp_support
+ *
+ * This function processes the global actions necessary for remote
+ * accesses to a global semaphore based on a core semaphore. This function
+ * is called by the core.
+ */
+void _Semaphore_Core_semaphore_mp_support (
+ Thread_Control *the_thread,
+ rtems_id id
+);
+
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/rtems/include/rtems/rtems/signal.h b/cpukit/rtems/include/rtems/rtems/signal.h
index a516970ca4..5fe1702327 100644
--- a/cpukit/rtems/include/rtems/rtems/signal.h
+++ b/cpukit/rtems/include/rtems/rtems/signal.h
@@ -1,8 +1,6 @@
/**
* @file rtems/rtems/signal.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Signal Manager. This manager provides capabilities required
* for asynchronous communication between tasks via signal sets.
@@ -11,8 +9,9 @@
*
* + establish an asynchronous signal routine
* + send a signal set to a task
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -25,9 +24,12 @@
#ifndef _RTEMS_RTEMS_SIGNAL_H
#define _RTEMS_RTEMS_SIGNAL_H
-#ifdef __cplusplus
-extern "C" {
-#endif
+/**
+ * @defgroup ClassicSignal Classic API Signal
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
#include <rtems/rtems/asr.h>
#include <rtems/rtems/modes.h>
@@ -35,41 +37,35 @@ extern "C" {
#include <rtems/rtems/status.h>
#include <rtems/rtems/types.h>
-/*
- * _Signal_Manager_initialization
- *
- * DESCRIPTION:
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**
+ * @brief _Signal_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Signal_Manager_initialization( void );
-/*
- * rtems_signal_catch
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_signal_catch
*
* This routine implements the rtems_signal_catch directive. This directive
* is used to establish asr_handler as the Asynchronous Signal Routine
* (RTEMS_ASR) for the calling task. The asr_handler will execute with a
* mode of mode_set.
*/
-
rtems_status_code rtems_signal_catch(
rtems_asr_entry asr_handler,
rtems_mode mode_set
);
-/*
- * rtems_signal_send
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_signal_send
*
* This routine implements the rtems_signal_send directive. This directive
* sends the signal_set to the task specified by ID.
*/
-
rtems_status_code rtems_signal_send(
Objects_Id id,
rtems_signal_set signal_set
@@ -83,5 +79,7 @@ rtems_status_code rtems_signal_send(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/signalmp.h b/cpukit/rtems/include/rtems/rtems/signalmp.h
index a706beae80..bf359473cd 100644
--- a/cpukit/rtems/include/rtems/rtems/signalmp.h
+++ b/cpukit/rtems/include/rtems/rtems/signalmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/signalmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the Multiprocessing Support in the Signal Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -29,21 +28,26 @@ extern "C" {
#include <rtems/score/thread.h>
#include <rtems/score/watchdog.h>
-/*
+/**
+ * @defgroup ClassicSignalMP Classic API Signal MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**{*/
+
+/**
* The following enumerated type defines the list of
* remote signal operations.
*/
-
typedef enum {
SIGNAL_MP_SEND_REQUEST = 0,
SIGNAL_MP_SEND_RESPONSE = 1
} Signal_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote signal operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
Signal_MP_Remote_operations operation;
@@ -51,9 +55,7 @@ typedef struct {
} Signal_MP_Packet;
/*
- * _Signal_MP_Send_process_packet
- *
- * DESCRIPTION:
+ * @brief Signal_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
@@ -62,53 +64,41 @@ typedef struct {
* packets to be sent by this manager.
*/
-/*
- * _Signal_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Signal_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _Signal_MP_Send_request_packet (
Signal_MP_Remote_operations operation,
Objects_Id task_id,
rtems_signal_set signal_in
);
-/*
- * _Signal_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Signal_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _Signal_MP_Send_response_packet (
Signal_MP_Remote_operations operation,
Thread_Control *the_thread
);
-/*
- *
- * _Signal_MP_Process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Signal_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _Signal_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
/*
- * _Signal_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+ * @brief Signal_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
@@ -119,9 +109,7 @@ void _Signal_MP_Process_packet (
*/
/*
- * _Signal_MP_Send_extract_proxy
- *
- * DESCRIPTION:
+ * @brief Signal_MP_Send_extract_proxy
*
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
@@ -131,19 +119,18 @@ void _Signal_MP_Process_packet (
* deleted by this manager.
*/
-/*
- * _Signal_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief Signal_MP_Get_packet
*
* This function is used to obtain a signal mp packet.
*/
-
Signal_MP_Packet *_Signal_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/status.h b/cpukit/rtems/include/rtems/rtems/status.h
index d088f01917..644f2cbee6 100644
--- a/cpukit/rtems/include/rtems/rtems/status.h
+++ b/cpukit/rtems/include/rtems/rtems/status.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/status.h
- */
-
-/*
+ *
* This include file contains the status codes returned from the
* executive directives.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,6 +18,13 @@
#ifndef _RTEMS_RTEMS_STATUS_H
#define _RTEMS_RTEMS_STATUS_H
+/**
+ * @defgroup ClassicStatus Classic API Status
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -77,12 +83,13 @@ rtems_status_code _Status_Object_name_errors_to_status[] = {
/*
* Applications are allowed to use the macros to compare status codes.
*/
-
#include <rtems/rtems/status.inl>
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/support.h b/cpukit/rtems/include/rtems/rtems/support.h
index 1b8a240946..2260821788 100644
--- a/cpukit/rtems/include/rtems/rtems/support.h
+++ b/cpukit/rtems/include/rtems/rtems/support.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/support.h
- */
-
-/*
+ *
* This include file contains information about support functions for
* the RTEMS API.
- *
- * COPYRIGHT (c) 1989-2008.
+ */
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -25,27 +24,39 @@ extern "C" {
#include <rtems/rtems/types.h>
-/** @brief milliseconds to microseconds
+/**
+ * @defgroup ClassicSupport Classic API Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
+ * @brief milliseconds to microseconds
*
* This is the public milliseconds to microseconds conversion.
*/
#define RTEMS_MILLISECONDS_TO_MICROSECONDS(_ms) \
TOD_MILLISECONDS_TO_MICROSECONDS(_ms)
-/** @brief milliseconds to ticks
+/**
+ * @brief milliseconds to ticks
*
* This is the public milliseconds to ticks conversion.
*/
#define RTEMS_MILLISECONDS_TO_TICKS(_ms) \
TOD_MILLISECONDS_TO_TICKS(_ms)
-/** @brief microseconds to ticks
+/**
+ * @brief microseconds to ticks
+ *
* This is the public microseconds to tick conversion.
*/
#define RTEMS_MICROSECONDS_TO_TICKS(_ms) \
TOD_MICROSECONDS_TO_TICKS(_ms)
-/** @brief get workspace information
+/**
+ * @brief get workspace information
*
* This returns information about the heap that is used as
* the RTEMS Executive Workspace.
@@ -58,7 +69,8 @@ boolean rtems_workspace_get_information(
Heap_Information_block *the_info
);
-/** @brief get workspace information
+/**
+ * @brief get workspace information
*
* This returns information about the heap that is used as
* the RTEMS Executive Workspace.
@@ -73,7 +85,8 @@ boolean rtems_workspace_allocate(
void **pointer
);
-/** @brief free workspace
+/**
+ * @brief free workspace
*
* This frees the workspace that was allocated from
* the RTEMS Executive Workspace.
@@ -94,5 +107,7 @@ boolean rtems_workspace_free(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/taskmp.h b/cpukit/rtems/include/rtems/rtems/taskmp.h
index 9adae0ced6..03e1dfbfb8 100644
--- a/cpukit/rtems/include/rtems/rtems/taskmp.h
+++ b/cpukit/rtems/include/rtems/rtems/taskmp.h
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/taskmp.h
- */
-
-/*
+ *
* This include file contains all the constants and structures associated
* with the multiprocessing support in the task manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,10 +18,6 @@
#ifndef _RTEMS_RTEMS_TASKMP_H
#define _RTEMS_RTEMS_TASKMP_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include <rtems/score/mppkt.h>
#include <rtems/score/object.h>
#include <rtems/rtems/options.h>
@@ -30,11 +25,20 @@ extern "C" {
#include <rtems/rtems/tasks.h>
#include <rtems/score/thread.h>
-/*
+/**
+ * @defgroup ClassicTaskMP Classic API Task MP Support
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+/**
* The following enumerated type defines the list of
* remote task operations.
*/
-
typedef enum {
RTEMS_TASKS_MP_ANNOUNCE_CREATE = 0,
RTEMS_TASKS_MP_ANNOUNCE_DELETE = 1,
@@ -50,11 +54,10 @@ typedef enum {
RTEMS_TASKS_MP_SET_NOTE_RESPONSE = 11
} RTEMS_tasks_MP_Remote_operations;
-/*
+/**
* The following data structure defines the packet used to perform
* remote task operations.
*/
-
typedef struct {
rtems_packet_prefix Prefix;
RTEMS_tasks_MP_Remote_operations operation;
@@ -64,30 +67,24 @@ typedef struct {
uint32_t note;
} RTEMS_tasks_MP_Packet;
-/*
- * _RTEMS_tasks_MP_Send_process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Send_process_packet
*
* This routine performs a remote procedure call so that a
* process operation can be performed on another node.
*/
-
void _RTEMS_tasks_MP_Send_process_packet (
RTEMS_tasks_MP_Remote_operations operation,
Objects_Id task_id,
rtems_name name
);
-/*
- * _RTEMS_tasks_MP_Send_request_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Send_request_packet
*
* This routine performs a remote procedure call so that a
* directive operation can be initiated on another node.
*/
-
rtems_status_code _RTEMS_tasks_MP_Send_request_packet (
RTEMS_tasks_MP_Remote_operations operation,
Objects_Id task_id,
@@ -96,38 +93,29 @@ rtems_status_code _RTEMS_tasks_MP_Send_request_packet (
uint32_t note
);
-/*
- * _RTEMS_tasks_MP_Send_response_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Send_response_packet
*
* This routine performs a remote procedure call so that a
* directive can be performed on another node.
*/
-
void _RTEMS_tasks_MP_Send_response_packet (
RTEMS_tasks_MP_Remote_operations operation,
Thread_Control *the_thread
);
-/*
- *
- * _RTEMS_tasks_MP_Process_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Process_packet
*
* This routine performs the actions specific to this package for
* the request from another node.
*/
-
void _RTEMS_tasks_MP_Process_packet (
rtems_packet_prefix *the_packet_prefix
);
-/*
- * _RTEMS_tasks_MP_Send_object_was_deleted
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Send_object_was_deleted
*
* This routine is invoked indirectly by the thread queue
* when a proxy has been removed from the thread queue and
@@ -140,8 +128,6 @@ void _RTEMS_tasks_MP_Process_packet (
/*
* _RTEMS_tasks_MP_Send_extract_proxy
*
- * DESCRIPTION:
- *
* This routine is invoked when a task is deleted and it
* has a proxy which must be removed from a thread queue and
* the remote node must be informed of this.
@@ -151,19 +137,18 @@ void _RTEMS_tasks_MP_Process_packet (
*
*/
-/*
- * _RTEMS_tasks_MP_Get_packet
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_MP_Get_packet
*
* This function is used to obtain a task mp packet.
*/
-
RTEMS_tasks_MP_Packet *_RTEMS_tasks_MP_Get_packet ( void );
#ifdef __cplusplus
}
#endif
+/**@}*/
+
#endif
/* end of file */
diff --git a/cpukit/rtems/include/rtems/rtems/tasks.h b/cpukit/rtems/include/rtems/rtems/tasks.h
index af579f87b5..bf30b32d7b 100644
--- a/cpukit/rtems/include/rtems/rtems/tasks.h
+++ b/cpukit/rtems/include/rtems/rtems/tasks.h
@@ -1,29 +1,28 @@
/**
* @file rtems/rtems/tasks.h
- */
-
-/*
+ *
* This include file contains all constants and structures associated
* with RTEMS tasks. This manager provides a comprehensive set of directives
* to create, delete, and administer tasks.
*
* Directives provided are:
*
- * + create a task
- * + get an ID of a task
- * + start a task
- * + restart a task
- * + delete a task
- * + suspend a task
- * + resume a task
- * + set a task's priority
- * + change the current task's mode
- * + get a task notepad entry
- * + set a task notepad entry
- * + wake up after interval
- * + wake up when specified
- *
- * COPYRIGHT (c) 1989-2007.
+ * - create a task
+ * - get an ID of a task
+ * - start a task
+ * - restart a task
+ * - delete a task
+ * - suspend a task
+ * - resume a task
+ * - set a task's priority
+ * - change the current task's mode
+ * - get a task notepad entry
+ * - set a task notepad entry
+ * - wake up after interval
+ * - wake up when specified
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -36,14 +35,6 @@
#ifndef _RTEMS_RTEMS_TASKS_H
#define _RTEMS_RTEMS_TASKS_H
-#ifndef RTEMS_TASKS_EXTERN
-#define RTEMS_TASKS_EXTERN extern
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include <rtems/score/object.h>
#include <rtems/score/states.h>
#include <rtems/score/thread.h>
@@ -53,23 +44,35 @@ extern "C" {
#include <rtems/rtems/attr.h>
#include <rtems/rtems/status.h>
-/*
- * Constant to be used as the ID of current task
+#ifndef RTEMS_TASKS_EXTERN
+#define RTEMS_TASKS_EXTERN extern
+#endif
+
+/**
+ * @defgroup ClassicTasks Classic API Tasks
+ *
+ * This encapsulates functionality which X XX
*/
+/**@{*/
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * Constant to be used as the ID of current task
+ */
#define RTEMS_SELF OBJECTS_ID_OF_SELF
-/*
+/**
* This constant is passed to the rtems_task_wake_after directive as the
* interval when a task wishes to yield the CPU.
*/
-
#define RTEMS_YIELD_PROCESSOR WATCHDOG_NO_TIMEOUT
-/*
+/**
* Define the type for an RTEMS API task priority.
*/
-
typedef Priority_Control rtems_task_priority;
#define RTEMS_NO_PRIORITY RTEMS_CURRENT_PRIORITY
@@ -77,71 +80,79 @@ typedef Priority_Control rtems_task_priority;
#define RTEMS_MINIMUM_PRIORITY (PRIORITY_MINIMUM + 1)
#define RTEMS_MAXIMUM_PRIORITY PRIORITY_MAXIMUM
-/*
+/**
* The following constant is passed to rtems_task_set_priority when the
* caller wants to obtain the current priority.
*/
-
#define RTEMS_CURRENT_PRIORITY PRIORITY_MINIMUM
-/*
- * Notepads constants (indices into notepad array)
- */
-
-#define RTEMS_NOTEPAD_FIRST 0 /* lowest numbered notepad */
-#define RTEMS_NOTEPAD_0 0 /* notepad location 0 */
-#define RTEMS_NOTEPAD_1 1 /* notepad location 1 */
-#define RTEMS_NOTEPAD_2 2 /* notepad location 2 */
-#define RTEMS_NOTEPAD_3 3 /* notepad location 3 */
-#define RTEMS_NOTEPAD_4 4 /* notepad location 4 */
-#define RTEMS_NOTEPAD_5 5 /* notepad location 5 */
-#define RTEMS_NOTEPAD_6 6 /* notepad location 6 */
-#define RTEMS_NOTEPAD_7 7 /* notepad location 7 */
-#define RTEMS_NOTEPAD_8 8 /* notepad location 8 */
-#define RTEMS_NOTEPAD_9 9 /* notepad location 9 */
-#define RTEMS_NOTEPAD_10 10 /* notepad location 10 */
-#define RTEMS_NOTEPAD_11 11 /* notepad location 11 */
-#define RTEMS_NOTEPAD_12 12 /* notepad location 12 */
-#define RTEMS_NOTEPAD_13 13 /* notepad location 13 */
-#define RTEMS_NOTEPAD_14 14 /* notepad location 14 */
-#define RTEMS_NOTEPAD_15 15 /* notepad location 15 */
-#define RTEMS_NOTEPAD_LAST RTEMS_NOTEPAD_15 /* highest numbered notepad */
+/** This is used to indicate the lowest numbered notepad */
+#define RTEMS_NOTEPAD_FIRST 0
+/** This is used to indicate the notepad location 0. */
+#define RTEMS_NOTEPAD_0 0
+/** This is used to indicate the notepad location 1. */
+#define RTEMS_NOTEPAD_1 1
+/** This is used to indicate the notepad location 2. */
+#define RTEMS_NOTEPAD_2 2
+/** This is used to indicate the notepad location 3. */
+#define RTEMS_NOTEPAD_3 3
+/** This is used to indicate the notepad location 4. */
+#define RTEMS_NOTEPAD_4 4
+/** This is used to indicate the notepad location 5. */
+#define RTEMS_NOTEPAD_5 5
+/** This is used to indicate the notepad location 6. */
+#define RTEMS_NOTEPAD_6 6
+/** This is used to indicate the notepad location 7. */
+#define RTEMS_NOTEPAD_7 7
+/** This is used to indicate the notepad location 8. */
+#define RTEMS_NOTEPAD_8 8
+/** This is used to indicate the notepad location 9. */
+#define RTEMS_NOTEPAD_9 9
+/** This is used to indicate the notepad location 10. */
+#define RTEMS_NOTEPAD_10 10
+/** This is used to indicate the notepad location 11. */
+#define RTEMS_NOTEPAD_11 11
+/** This is used to indicate the notepad location 12. */
+#define RTEMS_NOTEPAD_12 12
+/** This is used to indicate the notepad location 13. */
+#define RTEMS_NOTEPAD_13 13
+/** This is used to indicate the notepad location 14. */
+#define RTEMS_NOTEPAD_14 14
+/** This is used to indicate the notepad location 15. */
+#define RTEMS_NOTEPAD_15 15
+/** This is used to indicate the highest numbered notepad. */
+#define RTEMS_NOTEPAD_LAST RTEMS_NOTEPAD_15
#define RTEMS_NUMBER_NOTEPADS (RTEMS_NOTEPAD_LAST+1)
-/*
+/**
* External API name for Thread_Control
*/
-
typedef Thread_Control rtems_tcb;
-/*
+/**
* The following defines the "return type" of an RTEMS task.
*/
-
typedef void rtems_task;
-/*
+/**
* The following defines the argument to an RTEMS task.
*/
-
typedef uintptr_t rtems_task_argument;
-/*
+/**
* The following defines the type for the entry point of an RTEMS task.
*/
-
typedef rtems_task ( *rtems_task_entry )(
rtems_task_argument
);
-/*
+/**
* The following records define the Initialization Tasks Table.
* Each entry contains the information required by RTEMS to
* create and start a user task automatically at executive
* initialization time.
*/
-
typedef struct {
rtems_name name; /* task name */
size_t stack_size; /* task stack size */
@@ -152,12 +163,10 @@ typedef struct {
rtems_task_argument argument; /* task argument */
} rtems_initialization_tasks_table;
-/*
+/**
* This is the API specific information required by each thread for
* the RTEMS API to function correctly.
*/
-
-
typedef struct {
uint32_t Notepads[ RTEMS_NUMBER_NOTEPADS ];
rtems_event_set pending_events;
@@ -169,25 +178,19 @@ typedef struct {
* The following defines the information control block used to
* manage this class of objects.
*/
-
RTEMS_TASKS_EXTERN Objects_Information _RTEMS_tasks_Information;
-/*
- * _RTEMS_tasks_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief _RTEMS_tasks_Manager_initialization
*
* This routine initializes all Task Manager related data structures.
*/
-
void _RTEMS_tasks_Manager_initialization(
uint32_t maximum_tasks
);
-/*
- * rtems_task_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_create
*
* This routine implements the rtems_task_create directive. The task
* will have the name name. The attribute_set can be used to indicate
@@ -196,7 +199,6 @@ void _RTEMS_tasks_Manager_initialization(
* execution with initial_priority and initial_modes. It returns the
* id of the created task in ID.
*/
-
rtems_status_code rtems_task_create(
rtems_name name,
rtems_task_priority initial_priority,
@@ -206,10 +208,8 @@ rtems_status_code rtems_task_create(
Objects_Id *id
);
-/*
- * rtems_task_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_ident
*
* This routine implements the rtems_task_ident directive.
* This directive returns the task ID associated with name.
@@ -219,233 +219,194 @@ rtems_status_code rtems_task_create(
* The search can be limited to a particular node or allowed to
* encompass all nodes.
*/
-
rtems_status_code rtems_task_ident(
rtems_name name,
uint32_t node,
Objects_Id *id
);
-/*
- * rtems_task_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_delete
*
* This routine implements the rtems_task_delete directive. The
* task indicated by ID is deleted.
*/
-
rtems_status_code rtems_task_delete(
Objects_Id id
);
-/*
- * rtems_task_get_note
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_get_note
*
* This routine implements the rtems_task_get_note directive. The
* value of the indicated notepad for the task associated with ID
* is returned in note.
*/
-
rtems_status_code rtems_task_get_note(
Objects_Id id,
uint32_t notepad,
uint32_t *note
);
-/*
- * rtems_task_set_note
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_set_note
*
* This routine implements the rtems_task_set_note directive. The
* value of the indicated notepad for the task associated with ID
* is returned in note.
*/
-
rtems_status_code rtems_task_set_note(
Objects_Id id,
uint32_t notepad,
uint32_t note
);
-/*
- * rtems_task_mode
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_mode
*
* This routine implements the rtems_task_mode directive. The current
* values of the modes indicated by mask of the calling task are changed
* to that indicated in mode_set. The former mode of the task is
* returned in mode_set.
*/
-
rtems_status_code rtems_task_mode(
rtems_mode mode_set,
rtems_mode mask,
rtems_mode *previous_mode_set
);
-/*
- * rtems_task_restart
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_restart
*
* This routine implements the rtems_task_restart directive. The
* task associated with ID is restarted at its initial entry
* point with the new argument.
*/
-
rtems_status_code rtems_task_restart(
Objects_Id id,
uint32_t arg
);
-/*
- * rtems_task_suspend
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_suspend
*
* This routine implements the rtems_task_suspend directive. The
* SUSPENDED state is set for task associated with ID.
*/
-
rtems_status_code rtems_task_suspend(
Objects_Id id
);
-/*
- * rtems_task_resume
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_resume
*
* This routine implements the rtems_task_resume Directive. The
* SUSPENDED state is cleared for task associated with ID.
*/
-
rtems_status_code rtems_task_resume(
Objects_Id id
);
-/*
- * rtems_task_set_priority
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_set_priority
*
* This routine implements the rtems_task_set_priority directive. The
* current priority of the task associated with ID is set to
* new_priority. The former priority of that task is returned
* in old_priority.
*/
-
rtems_status_code rtems_task_set_priority(
Objects_Id id,
rtems_task_priority new_priority,
rtems_task_priority *old_priority
);
-/*
- * rtems_task_start
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_start
*
* This routine implements the rtems_task_start directive. The
* starting execution point of the task associated with ID is
* set to entry_point with the initial argument.
*/
-
rtems_status_code rtems_task_start(
Objects_Id id,
rtems_task_entry entry_point,
rtems_task_argument argument
);
-/*
- * rtems_task_wake_when
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_wake_when
*
* This routine implements the rtems_task_wake_when directive. The
* calling task is blocked until the current time of day is
* equal to that indicated by time_buffer.
*/
-
rtems_status_code rtems_task_wake_when(
rtems_time_of_day *time_buffer
);
-/*
- * rtems_task_wake_after
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_task_wake_after
*
* This routine implements the rtems_task_wake_after directive. The
* calling task is blocked until the indicated number of clock
* ticks have occurred.
*/
-
rtems_status_code rtems_task_wake_after(
rtems_interval ticks
);
-/*
- * rtems_task_is_suspended
- *
+/**
+ * @brief rtems_task_is_suspended
+
* This directive returns a status indicating whether or not
* the specified task is suspended.
*/
-
rtems_status_code rtems_task_is_suspended(
Objects_Id id
);
-/*
- * rtems_task_variable_add
+/**
+ * @brief rtems_task_variable_add
*
* This directive adds a per task variable.
*/
-
rtems_status_code rtems_task_variable_add(
rtems_id tid,
void **ptr,
void (*dtor)(void *)
);
-/*
- * rtems_task_variable_get
+/**
+ * @brief rtems_task_variable_get
*
* This directive gets the value of a task variable.
*/
-
rtems_status_code rtems_task_variable_get(
rtems_id tid,
void **ptr,
void **result
);
-/*
- * rtems_task_variable_delete
+/**
+ * @brief rtems_task_variable_delete
*
* This directive removes a per task variable.
*/
-
rtems_status_code rtems_task_variable_delete(
rtems_id tid,
void **ptr
);
-/*
- * rtems_task_self
+/**
+ * @brief rtems_task_self
*
* This directive returns the ID of the currently executing task.
*/
-
rtems_id rtems_task_self(void);
-/*
- * _RTEMS_tasks_Initialize_user_tasks
+/**
+ * @brief _RTEMS_tasks_Initialize_user_tasks
*
* This routine creates and starts all configured user
* initialzation threads.
@@ -454,11 +415,10 @@ rtems_id rtems_task_self(void);
*
* Output parameters: NONE
*/
-
void _RTEMS_tasks_Initialize_user_tasks( void );
-/*
- * _RTEMS_Tasks_Invoke_task_variable_dtor(
+/**
+ * @brief _RTEMS_Tasks_Invoke_task_variable_dtor(
*
* This routine invokes the optional user provided destructor on the
* task variable and frees the memory for the task variable.
@@ -467,7 +427,6 @@ void _RTEMS_tasks_Initialize_user_tasks( void );
*
* Output parameters: NONE
*/
-
void _RTEMS_Tasks_Invoke_task_variable_dtor(
Thread_Control *the_thread,
rtems_task_variable_t *tvp
@@ -484,5 +443,7 @@ void _RTEMS_Tasks_Invoke_task_variable_dtor(
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/timer.h b/cpukit/rtems/include/rtems/rtems/timer.h
index fdb9185d00..980132a448 100644
--- a/cpukit/rtems/include/rtems/rtems/timer.h
+++ b/cpukit/rtems/include/rtems/rtems/timer.h
@@ -1,8 +1,6 @@
/**
* @file rtems/rtems/timer.h
- */
-
-/*
+ *
* This include file contains all the constants, structures, and
* prototypes associated with the Timer Manager. This manager provides
* facilities to configure, initiate, cancel, and delete timers which will
@@ -10,20 +8,21 @@
*
* Directives provided are:
*
- * + create a timer
- * + get an ID of a timer
- * + delete a timer
- * + set timer to fire in context of clock tick
+ * - create a timer
+ * - get an ID of a timer
+ * - delete a timer
+ * - set timer to fire in context of clock tick
* - after a number of ticks have passed
* - when a specified date and time has been reached
- * + initiate the timer server task
- * + set timer to fire in context of the timer server task
+ * - initiate the timer server task
+ * - set timer to fire in context of the timer server task
* - after a number of ticks have passed
* - when a specified date and time has been reached
- * + reset a timer
- * + cancel a time
- *
- * COPYRIGHT (c) 1989-2007.
+ * - reset a timer
+ * - cancel a time
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -50,11 +49,17 @@ extern "C" {
#include <rtems/rtems/clock.h>
#include <rtems/rtems/attr.h>
-/*
+/**
+ * @defgroup ClassicTimer Classic API Timer
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
+/**
* The following enumerated type details the classes to which a timer
* may belong.
*/
-
typedef enum {
TIMER_INTERVAL,
TIMER_INTERVAL_ON_TASK,
@@ -63,10 +68,9 @@ typedef enum {
TIMER_DORMANT
} Timer_Classes;
-/*
+/**
* The following types define a pointer to a timer service routine.
*/
-
typedef void rtems_timer_service_routine;
typedef rtems_timer_service_routine ( *rtems_timer_service_routine_entry )(
@@ -74,22 +78,20 @@ typedef rtems_timer_service_routine ( *rtems_timer_service_routine_entry )(
void *
);
-/*
+/**
* The following defines the information control block used to manage
* this class of objects.
*/
-
RTEMS_TIMER_EXTERN Objects_Information _Timer_Information;
-/*
+/**
* Pointer to TCB of the Timer Server. This is NULL before the
* server is executing and task-based timers are not allowed to be
* initiated until the server is started.
*/
-
RTEMS_TIMER_EXTERN Thread_Control *_Timer_Server;
-/*
+/**
* The following chains contain the list of interval timers that are
* executed in the context of the Timer Server.
*
@@ -100,109 +102,87 @@ RTEMS_TIMER_EXTERN Thread_Control *_Timer_Server;
* do not have to be initialized until then. They are declared
* in the same file as _Timer_Server_body.
*/
-
extern Chain_Control _Timer_Ticks_chain;
extern Chain_Control _Timer_Seconds_chain;
-/*
+/**
* The following records define the control block used to manage
* each timer.
*/
-
typedef struct {
Objects_Control Object;
Watchdog_Control Ticker;
Timer_Classes the_class;
} Timer_Control;
-/*
- * _Timer_Manager_initialization
- *
- * DESCRIPTION:
+/**
+ * @brief _Timer_Manager_initialization
*
* This routine performs the initialization necessary for this manager.
*/
-
void _Timer_Manager_initialization(
uint32_t maximum_timers
);
-/*
- * _Timer_Server_body
- *
- * DESCRIPTION:
+/**
+ * @brief _Timer_Server_body
*
* This is the server for task based timers. This task executes whenever
* a task-based timer should fire. It services both "after" and "when"
* timers. It is not created automatically but must be created explicitly
* by the application before task-based timers may be initiated.
*/
-
Thread _Timer_Server_body(
uint32_t ignored
);
-/*
- * rtems_timer_create
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_create
*
* This routine implements the rtems_timer_create directive. The
* timer will have the name name. It returns the id of the
* created timer in ID.
*/
-
rtems_status_code rtems_timer_create(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_timer_ident
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_ident
*
* This routine implements the rtems_timer_ident directive.
* This directive returns the timer ID associated with name.
* If more than one timer is named name, then the timer
* to which the ID belongs is arbitrary.
*/
-
rtems_status_code rtems_timer_ident(
rtems_name name,
Objects_Id *id
);
-/*
- * rtems_timer_cancel
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_cancel
*
* This routine implements the rtems_timer_cancel directive. It is used
* to stop the timer associated with ID from firing.
*/
-
rtems_status_code rtems_timer_cancel(
Objects_Id id
);
-/*
- * rtems_timer_delete
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_delete
*
* This routine implements the rtems_timer_delete directive. The
* timer indicated by ID is deleted.
*/
-
rtems_status_code rtems_timer_delete(
Objects_Id id
);
-/*
- * rtems_timer_fire_after
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_fire_after
*
* This routine implements the rtems_timer_fire_after directive. It
* initiates the timer associated with ID to fire in ticks clock ticks.
@@ -210,7 +190,6 @@ rtems_status_code rtems_timer_delete(
* of the rtems_clock_tick directive which is normally invoked as
* part of servicing a periodic interupt.
*/
-
rtems_status_code rtems_timer_fire_after(
Objects_Id id,
rtems_interval ticks,
@@ -218,10 +197,8 @@ rtems_status_code rtems_timer_fire_after(
void *user_data
);
-/*
- * rtems_timer_server_fire_after
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_server_fire_after
*
* This routine implements the rtems_timer_server_fire_after directive. It
* initiates the timer associated with ID to fire in ticks clock
@@ -229,7 +206,6 @@ rtems_status_code rtems_timer_fire_after(
* Timer Server in the context of a task NOT IN THE CONTEXT of the
* clock tick interrupt.
*/
-
rtems_status_code rtems_timer_server_fire_after(
Objects_Id id,
rtems_interval ticks,
@@ -237,10 +213,8 @@ rtems_status_code rtems_timer_server_fire_after(
void *user_data
);
-/*
- * rtems_timer_fire_when
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_fire_when
*
* This routine implements the rtems_timer_fire_when directive. It
* initiates the timer associated with ID to fire at wall_time
@@ -248,7 +222,6 @@ rtems_status_code rtems_timer_server_fire_after(
* of the rtems_clock_tick directive which is normally invoked as
* part of servicing a periodic interupt.
*/
-
rtems_status_code rtems_timer_fire_when(
Objects_Id id,
rtems_time_of_day *wall_time,
@@ -256,10 +229,8 @@ rtems_status_code rtems_timer_fire_when(
void *user_data
);
-/*
- * rtems_timer_server_fire_when
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_server_fire_when
*
* This routine implements the rtems_timer_server_fire_when directive. It
* initiates the timer associated with ID to fire at wall_time
@@ -267,7 +238,6 @@ rtems_status_code rtems_timer_fire_when(
* Timer Server in the context of a task NOT IN THE CONTEXT of the
* clock tick interrupt.
*/
-
rtems_status_code rtems_timer_server_fire_when(
Objects_Id id,
rtems_time_of_day *wall_time,
@@ -275,48 +245,42 @@ rtems_status_code rtems_timer_server_fire_when(
void *user_data
);
-/*
- * rtems_timer_reset
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_reset
*
* This routine implements the rtems_timer_reset directive. It is used
* to reinitialize the interval timer associated with ID just as if
* rtems_timer_fire_after were re-invoked with the same arguments that
* were used to initiate this timer.
*/
-
rtems_status_code rtems_timer_reset(
Objects_Id id
);
-/*
- * rtems_timer_initiate_server
- *
- * DESCRIPTION:
+/**
+ * @brief rtems_timer_initiate_server
*
* This routine implements the rtems_timer_initiate_server directive.
* It creates and starts the server that executes task-based timers.
* It must be invoked before any task-based timers can be initiated.
*/
-
-#define RTEMS_TIMER_SERVER_DEFAULT_PRIORITY -1
-
rtems_status_code rtems_timer_initiate_server(
uint32_t priority,
uint32_t stack_size,
rtems_attribute attribute_set
);
-/*
- * rtems_timer_get_information
- *
- * DESCRIPTION:
- *
- * This routine implements the rtems_timer_get_information directive.
- * This directive returns information about the timer.
+/**
+ * This is the default value for the priority of the Timer Server.
+ * When given this priority, a special high priority not accessible
+ * via the Classic API is used.
*/
+#define RTEMS_TIMER_SERVER_DEFAULT_PRIORITY -1
+/**
+ * This is the structure filled in by the timer get information
+ * service.
+ */
typedef struct {
Timer_Classes the_class;
Watchdog_Interval initial;
@@ -324,17 +288,22 @@ typedef struct {
Watchdog_Interval stop_time;
} rtems_timer_information;
+/**
+ * @brief rtems_timer_get_information
+ *
+ * This routine implements the rtems_timer_get_information directive.
+ * This directive returns information about the timer.
+ */
rtems_status_code rtems_timer_get_information(
Objects_Id id,
rtems_timer_information *the_info
);
-/*
+/**
* Macros and routines that expose the mechanisms required to service
* the Timer Server timer. These stop the timer, synchronize it with
* the current time, and restart it.
*/
-
extern Watchdog_Control _Timer_Seconds_timer;
#define _Timer_Server_stop_ticks_timer() \
@@ -343,7 +312,18 @@ extern Watchdog_Control _Timer_Seconds_timer;
#define _Timer_Server_stop_seconds_timer() \
_Watchdog_Remove( &_Timer_Seconds_timer );
+/**
+ * This is a helper function which processes the ticks chain when
+ * needed. It advances time for the ticks chain which results in
+ * timers firing.
+ */
void _Timer_Server_process_ticks_chain(void);
+
+/**
+ * This is a helper function which processes the seconds chain when
+ * needed. It advances time for the seconds chain which results in
+ * timers firing.
+ */
void _Timer_Server_process_seconds_chain(void);
#define _Timer_Server_reset_ticks_timer() \
@@ -370,5 +350,7 @@ void _Timer_Server_process_seconds_chain(void);
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/include/rtems/rtems/types.h b/cpukit/rtems/include/rtems/rtems/types.h
index 310c979ef9..3a04f8e7d8 100644
--- a/cpukit/rtems/include/rtems/rtems/types.h
+++ b/cpukit/rtems/include/rtems/rtems/types.h
@@ -1,11 +1,10 @@
/**
* @file rtems/rtems/types.h
+ *
+ * This include file defines the types used by the RTEMS API.
*/
-/*
- * This include file defines the types used by the RTEMS API.
- *
- * COPYRIGHT (c) 1989-1999.
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -18,6 +17,13 @@
#ifndef _RTEMS_RTEMS_TYPES_H
#define _RTEMS_RTEMS_TYPES_H
+/**
+ * @defgroup ClassicTypes Classic API Types
+ *
+ * This encapsulates functionality which XXX
+ */
+/**@{*/
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -50,19 +56,16 @@ typedef Context_Control rtems_context;
typedef Context_Control_fp rtems_context_fp;
typedef CPU_Interrupt_frame rtems_interrupt_frame;
-/*
+/**
* Region information block
*/
-
typedef Heap_Information_block region_information_block;
-/*
+/**
* Time related
*/
-
typedef Watchdog_Interval rtems_interval;
-
/**
* The following record defines the time of control block. This
* control block is used to maintain the current time of day.
@@ -86,16 +89,14 @@ typedef struct {
uint32_t ticks;
} rtems_time_of_day;
-/*
+/**
* Define the type for an RTEMS API task mode.
*/
-
typedef Modes_Control rtems_mode;
/*
* MPCI related entries
*/
-
#if defined(RTEMS_MULTIPROCESSING)
typedef MP_packet_Classes rtems_mp_packet_classes;
typedef MP_packet_Prefix rtems_packet_prefix;
@@ -115,5 +116,7 @@ typedef MPCI_Control rtems_mpci_table;
}
#endif
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/asr.inl b/cpukit/rtems/inline/rtems/rtems/asr.inl
index bd3b37e060..43bbbea5b5 100644
--- a/cpukit/rtems/inline/rtems/rtems/asr.inl
+++ b/cpukit/rtems/inline/rtems/rtems/asr.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/asr.inl
- */
-
-/*
+ *
* This include file contains the implemenation of all routines
* associated with the asynchronous signal handler which are inlined.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -21,15 +20,16 @@
#include <rtems/score/isr.h>
-/*PAGE
- *
- * _ASR_Initialize
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicASR
+ * @{
+ */
+
+/**
+ * @brief ASR_Initialize
*
* This routine initializes the given RTEMS_ASR information record.
*/
-
RTEMS_INLINE_ROUTINE void _ASR_Initialize (
ASR_Information *information
)
@@ -42,17 +42,13 @@ RTEMS_INLINE_ROUTINE void _ASR_Initialize (
information->nest_level = 0;
}
-/*PAGE
- *
- * _ASR_Swap_signals
- *
- * DESCRIPTION:
+/**
+ * @brief ASR_Swap_signals
*
* This routine atomically swaps the pending and posted signal
* sets. This is done when the thread alters its mode in such a
* way that the RTEMS_ASR disable/enable flag changes.
*/
-
RTEMS_INLINE_ROUTINE void _ASR_Swap_signals (
ASR_Information *information
)
@@ -67,16 +63,12 @@ RTEMS_INLINE_ROUTINE void _ASR_Swap_signals (
_ISR_Enable( _level );
}
-/*PAGE
- *
- * _ASR_Is_null_handler
- *
- * DESCRIPTION:
+/**
+ * @brief ASR_Is_null_handler
*
* This function returns TRUE if the given asr_handler is NULL and
* FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _ASR_Is_null_handler (
rtems_asr_entry asr_handler
)
@@ -84,16 +76,12 @@ RTEMS_INLINE_ROUTINE boolean _ASR_Is_null_handler (
return asr_handler == NULL;
}
-/*PAGE
- *
- * _ASR_Are_signals_pending
- *
- * DESCRIPTION:
+/**
+ * @brief ASR_Are_signals_pending
*
* This function returns TRUE if there are signals pending in the
* given RTEMS_ASR information record and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _ASR_Are_signals_pending (
ASR_Information *information
)
@@ -101,18 +89,14 @@ RTEMS_INLINE_ROUTINE boolean _ASR_Are_signals_pending (
return information->signals_posted != 0;
}
-/*PAGE
- *
- * _ASR_Post_signals
- *
- * DESCRIPTION:
+/**
+ * @brief ASR_Post_signals
*
* This routine posts the given signals into the signal_set
* passed in. The result is returned to the user in signal_set.
*
* NOTE: This must be implemented as a macro.
*/
-
RTEMS_INLINE_ROUTINE void _ASR_Post_signals(
rtems_signal_set signals,
rtems_signal_set *signal_set
@@ -125,6 +109,7 @@ RTEMS_INLINE_ROUTINE void _ASR_Post_signals(
_ISR_Enable( _level );
}
+/**@}*/
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/attr.inl b/cpukit/rtems/inline/rtems/rtems/attr.inl
index 54dd93d729..9e8012728a 100644
--- a/cpukit/rtems/inline/rtems/rtems/attr.inl
+++ b/cpukit/rtems/inline/rtems/rtems/attr.inl
@@ -1,11 +1,11 @@
/**
* @file rtems/rtems/attr.inl
+ *
+ * This include file contains all of the inlined routines associated
+ * with attributes.
*/
/*
- * This include file contains all of the inlined routines associated
- * with attributes.
- *
* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
@@ -19,16 +19,17 @@
#ifndef _RTEMS_RTEMS_ATTR_INL
#define _RTEMS_RTEMS_ATTR_INL
-/*PAGE
- *
- * _Attributes_Set
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicAttributes
+ * @{
+ */
+
+/**
+ * @brief Attributes_Set
*
* This function sets the requested new_attributes in the attribute_set
* passed in. The result is returned to the user.
*/
-
RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Set (
rtems_attribute new_attributes,
rtems_attribute attribute_set
@@ -37,16 +38,12 @@ RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Set (
return attribute_set | new_attributes;
}
-/*PAGE
- *
- * _Attributes_Clear
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Clear
*
* This function clears the requested new_attributes in the attribute_set
* passed in. The result is returned to the user.
*/
-
RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Clear (
rtems_attribute attribute_set,
rtems_attribute mask
@@ -55,16 +52,12 @@ RTEMS_INLINE_ROUTINE rtems_attribute _Attributes_Clear (
return attribute_set & ~mask;
}
-/*PAGE
- *
- * _Attributes_Is_floating_point
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_floating_point
*
* This function returns TRUE if the floating point attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_floating_point(
rtems_attribute attribute_set
)
@@ -72,17 +65,13 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_floating_point(
return ( attribute_set & RTEMS_FLOATING_POINT );
}
-/*PAGE
- *
- * _Attributes_Is_global
- *
- * DESCRIPTION:
+#if defined(RTEMS_MULTIPROCESSING)
+/**
+ * @brief Attributes_Is_global
*
* This function returns TRUE if the global object attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
-#if defined(RTEMS_MULTIPROCESSING)
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_global(
rtems_attribute attribute_set
)
@@ -91,16 +80,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_global(
}
#endif
-/*PAGE
- *
- * _Attributes_Is_priority
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_priority
*
* This function returns TRUE if the priority attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_priority(
rtems_attribute attribute_set
)
@@ -108,16 +93,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_priority(
return ( attribute_set & RTEMS_PRIORITY );
}
-/*PAGE
- *
- * _Attributes_Is_binary_semaphore
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_binary_semaphore
*
* This function returns TRUE if the binary semaphore attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_binary_semaphore(
rtems_attribute attribute_set
)
@@ -125,16 +106,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_binary_semaphore(
return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_BINARY_SEMAPHORE);
}
-/*PAGE
- *
- * _Attributes_Is_simple_binary_semaphore
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_simple_binary_semaphore
*
* This function returns TRUE if the simple binary semaphore attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_simple_binary_semaphore(
rtems_attribute attribute_set
)
@@ -143,16 +120,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_simple_binary_semaphore(
((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_SIMPLE_BINARY_SEMAPHORE);
}
-/*PAGE
- *
- * _Attributes_Is_counting_semaphore
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_counting_semaphore
*
* This function returns TRUE if the counting semaphore attribute is
* enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_counting_semaphore(
rtems_attribute attribute_set
)
@@ -160,16 +133,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_counting_semaphore(
return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_COUNTING_SEMAPHORE);
}
-/*PAGE
- *
- * _Attributes_Is_inherit_priority
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_inherit_priority
*
* This function returns TRUE if the priority inheritance attribute
* is enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_inherit_priority(
rtems_attribute attribute_set
)
@@ -177,16 +146,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_inherit_priority(
return ( attribute_set & RTEMS_INHERIT_PRIORITY );
}
-/*PAGE
- *
- * _Attributes_Is_priority_ceiling
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_priority_ceiling
*
* This function returns TRUE if the priority ceiling attribute
* is enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_priority_ceiling(
rtems_attribute attribute_set
)
@@ -194,16 +159,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_priority_ceiling(
return ( attribute_set & RTEMS_PRIORITY_CEILING );
}
-/*PAGE
- *
- * _Attributes_Is_barrier_automatic
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_barrier_automatic
*
* This function returns TRUE if the barrier automatic release
* attribute is enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_barrier_automatic(
rtems_attribute attribute_set
)
@@ -211,16 +172,12 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_barrier_automatic(
return ( attribute_set & RTEMS_BARRIER_AUTOMATIC_RELEASE );
}
-/*PAGE
- *
- * _Attributes_Is_system_task
- *
- * DESCRIPTION:
+/**
+ * @brief Attributes_Is_system_task
*
* This function returns TRUE if the system task attribute
* is enabled in the attribute_set and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Attributes_Is_system_task(
rtems_attribute attribute_set
)
@@ -228,5 +185,7 @@ RTEMS_INLINE_ROUTINE boolean _Attributes_Is_system_task(
return ( attribute_set & RTEMS_SYSTEM_TASK );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/barrier.inl b/cpukit/rtems/inline/rtems/rtems/barrier.inl
index e296b88e72..e690da2469 100644
--- a/cpukit/rtems/inline/rtems/rtems/barrier.inl
+++ b/cpukit/rtems/inline/rtems/rtems/barrier.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/barrier.inl
- */
-
-/*
+ *
* This file contains the static inlin implementation of the inlined
* routines from the Barrier Manager.
- *
- * COPYRIGHT (c) 1989-2006.
+ */
+
+/* COPYRIGHT (c) 1989-2006.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -20,6 +19,11 @@
#define _RTEMS_RTEMS_BARRIER_INL
/**
+ * @addtogroup ClassicBarrier
+ * @{
+ */
+
+/**
* @brief _Barrier_Allocate
*
* This function allocates a barrier control block from
@@ -75,5 +79,7 @@ RTEMS_INLINE_ROUTINE boolean _Barrier_Is_null (
return ( the_barrier == NULL );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/dpmem.inl b/cpukit/rtems/inline/rtems/rtems/dpmem.inl
index f80d2ebaf5..2c3bee2741 100644
--- a/cpukit/rtems/inline/rtems/rtems/dpmem.inl
+++ b/cpukit/rtems/inline/rtems/rtems/dpmem.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/dpmem.inl
- */
-
-/*
+ *
* This include file contains the inline routine used in conjunction
* with the Dual Ported Memory Manager
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,17 +18,17 @@
#ifndef _RTEMS_RTEMS_DPMEM_INL
#define _RTEMS_RTEMS_DPMEM_INL
+/**
+ * @addtogroup ClassicDPMEM
+ * @{
+ */
-/*PAGE
- *
- * _Dual_ported_memory_Allocate
- *
- * DESCRIPTION:
+/**
+ * @brief Dual_ported_memory_Allocate
*
* This routine allocates a port control block from the inactive chain
* of free port control blocks.
*/
-
RTEMS_INLINE_ROUTINE Dual_ported_memory_Control
*_Dual_ported_memory_Allocate ( void )
{
@@ -37,16 +36,12 @@ RTEMS_INLINE_ROUTINE Dual_ported_memory_Control
_Objects_Allocate( &_Dual_ported_memory_Information );
}
-/*PAGE
- *
- * _Dual_ported_memory_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Dual_ported_memory_Free
*
* This routine frees a port control block to the inactive chain
* of free port control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Dual_ported_memory_Free (
Dual_ported_memory_Control *the_port
)
@@ -54,11 +49,8 @@ RTEMS_INLINE_ROUTINE void _Dual_ported_memory_Free (
_Objects_Free( &_Dual_ported_memory_Information, &the_port->Object );
}
-/*PAGE
- *
- * _Dual_ported_memory_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Dual_ported_memory_Get
*
* This function maps port IDs to port control blocks. If ID
* corresponds to a local port, then it returns the_port control
@@ -67,7 +59,6 @@ RTEMS_INLINE_ROUTINE void _Dual_ported_memory_Free (
* local port, location is set to OBJECTS_ERROR and the_port is
* undefined.
*/
-
RTEMS_INLINE_ROUTINE Dual_ported_memory_Control *_Dual_ported_memory_Get (
Objects_Id id,
Objects_Locations *location
@@ -77,15 +68,11 @@ RTEMS_INLINE_ROUTINE Dual_ported_memory_Control *_Dual_ported_memory_Get (
_Objects_Get( &_Dual_ported_memory_Information, id, location );
}
-/*PAGE
- *
- * _Dual_ported_memory_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Dual_ported_memory_Is_null
*
* This function returns TRUE if the_port is NULL and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Dual_ported_memory_Is_null(
Dual_ported_memory_Control *the_port
)
@@ -93,5 +80,7 @@ RTEMS_INLINE_ROUTINE boolean _Dual_ported_memory_Is_null(
return ( the_port == NULL );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/event.inl b/cpukit/rtems/inline/rtems/rtems/event.inl
index 0ad4bc0be3..02155e3268 100644
--- a/cpukit/rtems/inline/rtems/rtems/event.inl
+++ b/cpukit/rtems/inline/rtems/rtems/event.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/event.inl
- */
-
-/*
+ *
* This include file contains the static inline implementation of
* macros for the Event Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,5 +18,12 @@
#ifndef _RTEMS_RTEMS_EVENT_INL
#define _RTEMS_RTEMS_EVENT_INL
+/**
+ * @addtogroup ClassicEvent
+ * @{
+ */
+
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/eventset.inl b/cpukit/rtems/inline/rtems/rtems/eventset.inl
index dff78bdce0..917df94f89 100644
--- a/cpukit/rtems/inline/rtems/rtems/eventset.inl
+++ b/cpukit/rtems/inline/rtems/rtems/eventset.inl
@@ -1,11 +1,10 @@
/**
* @file rtems/rtems/eventset.inl
+ *
+ * This include file contains the information pertaining to event sets.
*/
-/*
- * This include file contains the information pertaining to event sets.
- *
- * COPYRIGHT (c) 1989-2008.
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -18,16 +17,17 @@
#ifndef _RTEMS_RTEMS_EVENTSET_INL
#define _RTEMS_RTEMS_EVENTSET_INL
-/*PAGE
- *
- * _Event_sets_Is_empty
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicEventSet
+ * @{
+ */
+
+/**
+ * @brief Event_sets_Is_empty
*
* This function returns TRUE if on events are posted in the event_set,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Event_sets_Is_empty(
rtems_event_set the_event_set
)
@@ -35,16 +35,12 @@ RTEMS_INLINE_ROUTINE boolean _Event_sets_Is_empty(
return ( the_event_set == 0 );
}
-/*PAGE
- *
- * _Event_sets_Post
- *
- * DESCRIPTION:
+/**
+ * @brief Event_sets_Post
*
* This routine posts the given new_events into the event_set
* passed in. The result is returned to the user in event_set.
*/
-
RTEMS_INLINE_ROUTINE void _Event_sets_Post(
rtems_event_set the_new_events,
rtems_event_set *the_event_set
@@ -57,16 +53,12 @@ RTEMS_INLINE_ROUTINE void _Event_sets_Post(
_ISR_Enable( level );
}
-/*PAGE
- *
- * _Event_sets_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Event_sets_Get
*
* This function returns the events in event_condition which are
* set in event_set.
*/
-
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Get(
rtems_event_set the_event_set,
rtems_event_set the_event_condition
@@ -75,16 +67,12 @@ RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Get(
return ( the_event_set & the_event_condition );
}
-/*PAGE
- *
- * _Event_sets_Clear
- *
- * DESCRIPTION:
+/**
+ * @brief Event_sets_Clear
*
* This function removes the events in mask from the event_set
* passed in. The result is returned to the user in event_set.
*/
-
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Clear(
rtems_event_set the_event_set,
rtems_event_set the_mask
@@ -93,5 +81,7 @@ RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Clear(
return ( the_event_set & ~(the_mask) );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/message.inl b/cpukit/rtems/inline/rtems/rtems/message.inl
index 06ccc32e1e..98665c5dac 100644
--- a/cpukit/rtems/inline/rtems/rtems/message.inl
+++ b/cpukit/rtems/inline/rtems/rtems/message.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/message.inl
- */
-
-/*
+ *
* This include file contains the static inline implementation of all
* inlined routines in the Message Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -21,16 +20,17 @@
#include <rtems/score/wkspace.h>
-/*PAGE
- *
- * _Message_queue_Is_null
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicMessageQueue
+ * @{
+ */
+
+/**
+ * @brief Message_queue_Is_null
*
* This function places the_message at the rear of the outstanding
* messages on the_message_queue.
*/
-
RTEMS_INLINE_ROUTINE boolean _Message_queue_Is_null (
Message_queue_Control *the_message_queue
)
@@ -39,16 +39,12 @@ RTEMS_INLINE_ROUTINE boolean _Message_queue_Is_null (
}
-/*PAGE
- *
- * _Message_queue_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Free
*
* This routine deallocates a message queue control block into
* the inactive chain of free message queue control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Message_queue_Free (
Message_queue_Control *the_message_queue
)
@@ -56,11 +52,8 @@ RTEMS_INLINE_ROUTINE void _Message_queue_Free (
_Objects_Free( &_Message_queue_Information, &the_message_queue->Object );
}
-/*PAGE
- *
- * _Message_queue_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Message_queue_Get
*
* This function maps message queue IDs to message queue control
* blocks. If ID corresponds to a local message queue, then it
@@ -71,7 +64,6 @@ RTEMS_INLINE_ROUTINE void _Message_queue_Free (
* Otherwise, location is set to OBJECTS_ERROR and
* the_message_queue is undefined.
*/
-
RTEMS_INLINE_ROUTINE Message_queue_Control *_Message_queue_Get (
Objects_Id id,
Objects_Locations *location
@@ -81,5 +73,7 @@ RTEMS_INLINE_ROUTINE Message_queue_Control *_Message_queue_Get (
_Objects_Get( &_Message_queue_Information, id, location );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/modes.inl b/cpukit/rtems/inline/rtems/rtems/modes.inl
index eef7a3d9f3..9656de2dab 100644
--- a/cpukit/rtems/inline/rtems/rtems/modes.inl
+++ b/cpukit/rtems/inline/rtems/rtems/modes.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/modes.inl
- */
-
-/*
+ *
* This include file contains the static inline implementation of the
* inlined routines in the Mode Handler
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,16 +18,17 @@
#ifndef _RTEMS_RTEMS_MODES_INL
#define _RTEMS_RTEMS_MODES_INL
-/*PAGE
- *
- * _Modes_Mask_changed
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicModes
+ * @{
+ */
+
+/**
+ * @brief Modes_Mask_changed
*
* This function returns TRUE if any of the mode flags in mask
* are set in mode_set, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Modes_Mask_changed (
Modes_Control mode_set,
Modes_Control masks
@@ -37,16 +37,12 @@ RTEMS_INLINE_ROUTINE boolean _Modes_Mask_changed (
return ( mode_set & masks );
}
-/*PAGE
- *
- * _Modes_Is_asr_disabled
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Is_asr_disabled
*
* This function returns TRUE if mode_set indicates that Asynchronous
* Signal Processing is disabled, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Modes_Is_asr_disabled (
Modes_Control mode_set
)
@@ -54,16 +50,12 @@ RTEMS_INLINE_ROUTINE boolean _Modes_Is_asr_disabled (
return (mode_set & RTEMS_ASR_MASK) == RTEMS_NO_ASR;
}
-/*PAGE
- *
- * _Modes_Is_preempt
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Is_preempt
*
* This function returns TRUE if mode_set indicates that preemption
* is enabled, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Modes_Is_preempt (
Modes_Control mode_set
)
@@ -71,16 +63,12 @@ RTEMS_INLINE_ROUTINE boolean _Modes_Is_preempt (
return (mode_set & RTEMS_PREEMPT_MASK) == RTEMS_PREEMPT;
}
-/*PAGE
- *
- * _Modes_Is_timeslice
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Is_timeslice
*
* This function returns TRUE if mode_set indicates that timeslicing
* is enabled, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Modes_Is_timeslice (
Modes_Control mode_set
)
@@ -88,15 +76,11 @@ RTEMS_INLINE_ROUTINE boolean _Modes_Is_timeslice (
return (mode_set & RTEMS_TIMESLICE_MASK) == RTEMS_TIMESLICE;
}
-/*PAGE
- *
- * _Modes_Get_interrupt_level
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Get_interrupt_level
*
* This function returns the interrupt level portion of the mode_set.
*/
-
RTEMS_INLINE_ROUTINE ISR_Level _Modes_Get_interrupt_level (
Modes_Control mode_set
)
@@ -104,16 +88,12 @@ RTEMS_INLINE_ROUTINE ISR_Level _Modes_Get_interrupt_level (
return ( mode_set & RTEMS_INTERRUPT_MASK );
}
-/*PAGE
- *
- * _Modes_Set_interrupt_level
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Set_interrupt_level
*
* This routine sets the current interrupt level to that specified
* in the mode_set.
*/
-
RTEMS_INLINE_ROUTINE void _Modes_Set_interrupt_level (
Modes_Control mode_set
)
@@ -121,18 +101,14 @@ RTEMS_INLINE_ROUTINE void _Modes_Set_interrupt_level (
_ISR_Set_level( _Modes_Get_interrupt_level( mode_set ) );
}
-/*PAGE
- *
- * _Modes_Change
- *
- * DESCRIPTION:
+/**
+ * @brief Modes_Change
*
* This routine changes the modes in old_mode_set indicated by
* mask to the requested values in new_mode_set. The resulting
* mode set is returned in out_mode_set and the modes that changed
* is returned in changed.
*/
-
RTEMS_INLINE_ROUTINE void _Modes_Change (
Modes_Control old_mode_set,
Modes_Control new_mode_set,
@@ -150,5 +126,7 @@ RTEMS_INLINE_ROUTINE void _Modes_Change (
*out_mode_set = _out_mode;
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/options.inl b/cpukit/rtems/inline/rtems/rtems/options.inl
index 1aa5ba6e0d..7bc10de9ca 100644
--- a/cpukit/rtems/inline/rtems/rtems/options.inl
+++ b/cpukit/rtems/inline/rtems/rtems/options.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/options.inl
- */
-
-/*
+ *
* This file contains the static inline implementation of the inlined
* routines from the Options Handler.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,16 +18,17 @@
#ifndef _RTEMS_RTEMS_OPTIONS_INL
#define _RTEMS_RTEMS_OPTIONS_INL
-/*PAGE
- *
- * _Options_Is_no_wait
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicOptions
+ * @{
+ */
+
+/**
+ * @brief Options_Is_no_wait
*
* This function returns TRUE if the RTEMS_NO_WAIT option is enabled in
* option_set, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Options_Is_no_wait (
rtems_option option_set
)
@@ -36,16 +36,12 @@ RTEMS_INLINE_ROUTINE boolean _Options_Is_no_wait (
return (option_set & RTEMS_NO_WAIT);
}
-/*PAGE
- *
- * _Options_Is_any
- *
- * DESCRIPTION:
+/**
+ * @brief Options_Is_any
*
* This function returns TRUE if the RTEMS_EVENT_ANY option is enabled in
* OPTION_SET, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Options_Is_any (
rtems_option option_set
)
@@ -53,5 +49,7 @@ RTEMS_INLINE_ROUTINE boolean _Options_Is_any (
return (option_set & RTEMS_EVENT_ANY);
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/part.inl b/cpukit/rtems/inline/rtems/rtems/part.inl
index 1e8f3b2f8d..7674c48e18 100644
--- a/cpukit/rtems/inline/rtems/rtems/part.inl
+++ b/cpukit/rtems/inline/rtems/rtems/part.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/part.inl
- */
-
-/*
+ *
* This file contains the macro implementation of all inlined routines
* in the Partition Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,17 +18,18 @@
#ifndef _RTEMS_RTEMS_PART_INL
#define _RTEMS_RTEMS_PART_INL
-/*PAGE
- *
- * _Partition_Allocate_buffer
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicPart
+ * @{
+ */
+
+/**
+ * @brief Partition_Allocate_buffer
*
* This function attempts to allocate a buffer from the_partition.
* If successful, it returns the address of the allocated buffer.
* Otherwise, it returns NULL.
*/
-
RTEMS_INLINE_ROUTINE void *_Partition_Allocate_buffer (
Partition_Control *the_partition
)
@@ -37,15 +37,11 @@ RTEMS_INLINE_ROUTINE void *_Partition_Allocate_buffer (
return _Chain_Get( &the_partition->Memory );
}
-/*PAGE
- *
- * _Partition_Free_buffer
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Free_buffer
*
* This routine frees the_buffer to the_partition.
*/
-
RTEMS_INLINE_ROUTINE void _Partition_Free_buffer (
Partition_Control *the_partition,
Chain_Node *the_buffer
@@ -54,16 +50,12 @@ RTEMS_INLINE_ROUTINE void _Partition_Free_buffer (
_Chain_Append( &the_partition->Memory, the_buffer );
}
-/*PAGE
- *
- * _Partition_Is_buffer_on_boundary
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Is_buffer_on_boundary
*
* This function returns TRUE if the_buffer is on a valid buffer
* boundary for the_partition, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_on_boundary (
void *the_buffer,
Partition_Control *the_partition
@@ -79,16 +71,12 @@ RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_on_boundary (
return ((offset % the_partition->buffer_size) == 0);
}
-/*PAGE
- *
- * _Partition_Is_buffer_valid
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Is_buffer_valid
*
* This function returns TRUE if the_buffer is a valid buffer from
* the_partition, otherwise FALSE is returned.
*/
-
RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_valid (
Chain_Node *the_buffer,
Partition_Control *the_partition
@@ -106,17 +94,13 @@ RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_valid (
);
}
-/*PAGE
- *
- * _Partition_Is_buffer_size_aligned
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Is_buffer_size_aligned
*
* This function returns TRUE if the use of the specified buffer_size
* will result in the allocation of buffers whose first byte is
* properly aligned, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_size_aligned (
uint32_t buffer_size
)
@@ -124,31 +108,23 @@ RTEMS_INLINE_ROUTINE boolean _Partition_Is_buffer_size_aligned (
return ((buffer_size % CPU_PARTITION_ALIGNMENT) == 0);
}
-/*PAGE
- *
- * _Partition_Allocate
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Allocate
*
* This function allocates a partition control block from
* the inactive chain of free partition control blocks.
*/
-
RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Allocate ( void )
{
return (Partition_Control *) _Objects_Allocate( &_Partition_Information );
}
-/*PAGE
- *
- * _Partition_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Free
*
* This routine frees a partition control block to the
* inactive chain of free partition control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Partition_Free (
Partition_Control *the_partition
)
@@ -156,11 +132,8 @@ RTEMS_INLINE_ROUTINE void _Partition_Free (
_Objects_Free( &_Partition_Information, &the_partition->Object );
}
-/*PAGE
- *
- * _Partition_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Get
*
* This function maps partition IDs to partition control blocks.
* If ID corresponds to a local partition, then it returns
@@ -170,7 +143,6 @@ RTEMS_INLINE_ROUTINE void _Partition_Free (
* and the_partition is undefined. Otherwise, location is set
* to OBJECTS_ERROR and the_partition is undefined.
*/
-
RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Get (
Objects_Id id,
Objects_Locations *location
@@ -180,16 +152,12 @@ RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Get (
_Objects_Get( &_Partition_Information, id, location );
}
-/*PAGE
- *
- * _Partition_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Partition_Is_null
*
* This function returns TRUE if the_partition is NULL
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Partition_Is_null (
Partition_Control *the_partition
)
@@ -197,5 +165,7 @@ RTEMS_INLINE_ROUTINE boolean _Partition_Is_null (
return ( the_partition == NULL );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/ratemon.inl b/cpukit/rtems/inline/rtems/rtems/ratemon.inl
index bae2940617..7f2d9703fd 100644
--- a/cpukit/rtems/inline/rtems/rtems/ratemon.inl
+++ b/cpukit/rtems/inline/rtems/rtems/ratemon.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/ratemon.inl
- */
-
-/*
+ *
* This file contains the static inline implementation of the inlined
* routines in the Rate Monotonic Manager.
- *
- * COPYRIGHT (c) 1989-2007.
+ */
+
+/* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,32 +18,29 @@
#ifndef _RTEMS_RTEMS_RATEMON_INL
#define _RTEMS_RTEMS_RATEMON_INL
-/*PAGE
- *
- * _Rate_monotonic_Allocate
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicRateMon
+ * @{
+ */
+
+/**
+ * @brief Rate_monotonic_Allocate
*
* This function allocates a period control block from
* the inactive chain of free period control blocks.
*/
-
RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Allocate( void )
{
return (Rate_monotonic_Control *)
_Objects_Allocate( &_Rate_monotonic_Information );
}
-/*PAGE
- *
- * _Rate_monotonic_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Free
*
* This routine allocates a period control block from
* the inactive chain of free period control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Rate_monotonic_Free (
Rate_monotonic_Control *the_period
)
@@ -52,11 +48,8 @@ RTEMS_INLINE_ROUTINE void _Rate_monotonic_Free (
_Objects_Free( &_Rate_monotonic_Information, &the_period->Object );
}
-/*PAGE
- *
- * _Rate_monotonic_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Get
*
* This function maps period IDs to period control blocks.
* If ID corresponds to a local period, then it returns
@@ -64,7 +57,6 @@ RTEMS_INLINE_ROUTINE void _Rate_monotonic_Free (
* is set to OBJECTS_LOCAL. Otherwise, location is set
* to OBJECTS_ERROR and the_period is undefined.
*/
-
RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Get (
Objects_Id id,
Objects_Locations *location
@@ -74,16 +66,12 @@ RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Get (
_Objects_Get( &_Rate_monotonic_Information, id, location );
}
-/*PAGE
- *
- * _Rate_monotonic_Is_active
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Is_active
*
* This function returns TRUE if the_period is in the ACTIVE state,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_active (
Rate_monotonic_Control *the_period
)
@@ -91,16 +79,12 @@ RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_active (
return (the_period->state == RATE_MONOTONIC_ACTIVE);
}
-/*PAGE
- *
- * _Rate_monotonic_Is_inactive
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Is_inactive
*
* This function returns TRUE if the_period is in the ACTIVE state,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_inactive (
Rate_monotonic_Control *the_period
)
@@ -108,16 +92,12 @@ RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_inactive (
return (the_period->state == RATE_MONOTONIC_INACTIVE);
}
-/*PAGE
- *
- * _Rate_monotonic_Is_expired
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Is_expired
*
* This function returns TRUE if the_period is in the EXPIRED state,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_expired (
Rate_monotonic_Control *the_period
)
@@ -125,15 +105,11 @@ RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_expired (
return (the_period->state == RATE_MONOTONIC_EXPIRED);
}
-/*PAGE
- *
- * _Rate_monotonic_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Rate_monotonic_Is_null
*
* This function returns TRUE if the_period is NULL and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_null (
Rate_monotonic_Control *the_period
)
@@ -141,5 +117,7 @@ RTEMS_INLINE_ROUTINE boolean _Rate_monotonic_Is_null (
return (the_period == NULL);
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/region.inl b/cpukit/rtems/inline/rtems/rtems/region.inl
index 412efec203..efc77f8db2 100644
--- a/cpukit/rtems/inline/rtems/rtems/region.inl
+++ b/cpukit/rtems/inline/rtems/rtems/region.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/region.inl
- */
-
-/*
+ *
* This file contains the macro implementation of the inlined
* routines from the Region Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,31 +18,28 @@
#ifndef _RTEMS_RTEMS_REGION_INL
#define _RTEMS_RTEMS_REGION_INL
-/*PAGE
- *
- * _Region_Allocate
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicRegion
+ * @{
+ */
+
+/**
+ * @brief Region_Allocate
*
* This function allocates a region control block from
* the inactive chain of free region control blocks.
*/
-
RTEMS_INLINE_ROUTINE Region_Control *_Region_Allocate( void )
{
return (Region_Control *) _Objects_Allocate( &_Region_Information );
}
-/*PAGE
- *
- * _Region_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Region_Free
*
* This routine frees a region control block to the
* inactive chain of free region control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Region_Free (
Region_Control *the_region
)
@@ -51,11 +47,8 @@ RTEMS_INLINE_ROUTINE void _Region_Free (
_Objects_Free( &_Region_Information, &the_region->Object );
}
-/*PAGE
- *
- * _Region_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Region_Get
*
* This function maps region IDs to region control blocks.
* If ID corresponds to a local region, then it returns
@@ -63,7 +56,6 @@ RTEMS_INLINE_ROUTINE void _Region_Free (
* is set to OBJECTS_LOCAL. Otherwise, location is set
* to OBJECTS_ERROR and the_region is undefined.
*/
-
RTEMS_INLINE_ROUTINE Region_Control *_Region_Get (
Objects_Id id,
Objects_Locations *location
@@ -73,17 +65,13 @@ RTEMS_INLINE_ROUTINE Region_Control *_Region_Get (
_Objects_Get_no_protection( &_Region_Information, id, location );
}
-/*PAGE
- *
- * _Region_Allocate_segment
- *
- * DESCRIPTION:
+/**
+ * @brief Region_Allocate_segment
*
* This function attempts to allocate a segment from the_region.
* If successful, it returns the address of the allocated segment.
* Otherwise, it returns NULL.
*/
-
RTEMS_INLINE_ROUTINE void *_Region_Allocate_segment (
Region_Control *the_region,
uint32_t size
@@ -92,15 +80,11 @@ RTEMS_INLINE_ROUTINE void *_Region_Allocate_segment (
return _Heap_Allocate( &the_region->Memory, size );
}
-/*PAGE
- *
- * _Region_Free_segment
- *
- * DESCRIPTION:
+/**
+ * @brief Region_Free_segment
*
* This function frees the_segment to the_region.
*/
-
RTEMS_INLINE_ROUTINE boolean _Region_Free_segment (
Region_Control *the_region,
void *the_segment
@@ -109,15 +93,11 @@ RTEMS_INLINE_ROUTINE boolean _Region_Free_segment (
return _Heap_Free( &the_region->Memory, the_segment );
}
-/*PAGE
- *
- * _Region_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Region_Is_null
*
* This function returns TRUE if the_region is NULL and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Region_Is_null (
Region_Control *the_region
)
diff --git a/cpukit/rtems/inline/rtems/rtems/sem.inl b/cpukit/rtems/inline/rtems/rtems/sem.inl
index fd1924017f..3ae3666faf 100644
--- a/cpukit/rtems/inline/rtems/rtems/sem.inl
+++ b/cpukit/rtems/inline/rtems/rtems/sem.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/sem.inl
- */
-
-/*
+ *
* This file contains the static inlin implementation of the inlined
* routines from the Semaphore Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,31 +18,28 @@
#ifndef _RTEMS_RTEMS_SEM_INL
#define _RTEMS_RTEMS_SEM_INL
-/*PAGE
- *
- * _Semaphore_Allocate
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicSem
+ * @{
+ */
+
+/**
+ * @brief Semaphore_Allocate
*
* This function allocates a semaphore control block from
* the inactive chain of free semaphore control blocks.
*/
-
RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Allocate( void )
{
return (Semaphore_Control *) _Objects_Allocate( &_Semaphore_Information );
}
-/*PAGE
- *
- * _Semaphore_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_Free
*
* This routine frees a semaphore control block to the
* inactive chain of free semaphore control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Semaphore_Free (
Semaphore_Control *the_semaphore
)
@@ -51,11 +47,8 @@ RTEMS_INLINE_ROUTINE void _Semaphore_Free (
_Objects_Free( &_Semaphore_Information, &the_semaphore->Object );
}
-/*PAGE
- *
- * _Semaphore_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_Get
*
* This function maps semaphore IDs to semaphore control blocks.
* If ID corresponds to a local semaphore, then it returns
@@ -65,7 +58,6 @@ RTEMS_INLINE_ROUTINE void _Semaphore_Free (
* and the_semaphore is undefined. Otherwise, location is set
* to OBJECTS_ERROR and the_semaphore is undefined.
*/
-
RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get (
Objects_Id id,
Objects_Locations *location
@@ -85,15 +77,11 @@ RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get_interrupt_disable (
_Objects_Get_isr_disable( &_Semaphore_Information, id, location, level );
}
-/*PAGE
- *
- * _Semaphore_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Semaphore_Is_null
*
* This function returns TRUE if the_semaphore is NULL and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Semaphore_Is_null (
Semaphore_Control *the_semaphore
)
@@ -101,5 +89,7 @@ RTEMS_INLINE_ROUTINE boolean _Semaphore_Is_null (
return ( the_semaphore == NULL );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/status.inl b/cpukit/rtems/inline/rtems/rtems/status.inl
index c1e5d998cb..cf8bfffeea 100644
--- a/cpukit/rtems/inline/rtems/rtems/status.inl
+++ b/cpukit/rtems/inline/rtems/rtems/status.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/status.inl
- */
-
-/*
+ *
* This include file contains the implementations of the inlined
* routines for the status package.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,16 +18,17 @@
#ifndef _RTEMS_RTEMS_STATUS_INL
#define _RTEMS_RTEMS_STATUS_INL
-/*PAGE
- *
- * rtems_is_status_successful
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicStatus
+ * @{
+ */
+
+/**
+ * @brief tems_is_status_successful
*
* This function returns TRUE if the status code is equal to RTEMS_SUCCESSFUL,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean rtems_is_status_successful(
rtems_status_code code
)
@@ -36,16 +36,12 @@ RTEMS_INLINE_ROUTINE boolean rtems_is_status_successful(
return (code == RTEMS_SUCCESSFUL);
}
-/*PAGE
- *
- * rtems_are_statuses_equal
- *
- * DESCRIPTION:
+/**
+ * @brief tems_are_statuses_equal
*
* This function returns TRUE if the status code1 is equal to code2,
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean rtems_are_statuses_equal(
rtems_status_code code1,
rtems_status_code code2
@@ -54,5 +50,7 @@ RTEMS_INLINE_ROUTINE boolean rtems_are_statuses_equal(
return (code1 == code2);
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/support.inl b/cpukit/rtems/inline/rtems/rtems/support.inl
index 4c507b0daf..f8c24aef05 100644
--- a/cpukit/rtems/inline/rtems/rtems/support.inl
+++ b/cpukit/rtems/inline/rtems/rtems/support.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/support.inl
- */
-
-/*
+ *
* This include file contains the static inline implementation of all
* of the inlined routines specific to the RTEMS API.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,15 +18,16 @@
#ifndef _RTEMS_RTEMS_SUPPORT_INL
#define _RTEMS_RTEMS_SUPPORT_INL
-/*PAGE
- *
+/**
+ * @addtogroup ClassicSupport
+ * @{
+ */
+
+/**
* rtems_is_name_valid
*
- * DESCRIPTION:
- *
* This function returns TRUE if the name is valid, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE rtems_boolean rtems_is_name_valid (
rtems_name name
)
@@ -35,16 +35,12 @@ RTEMS_INLINE_ROUTINE rtems_boolean rtems_is_name_valid (
return ( name != 0 );
}
-/*PAGE
- *
+/**
* rtems_name_to_characters
*
- * DESCRIPTION:
- *
* This function breaks the object name into the four component
* characters C1, C2, C3, and C4.
*/
-
RTEMS_INLINE_ROUTINE void rtems_name_to_characters(
rtems_name name,
char *c1,
@@ -59,5 +55,7 @@ RTEMS_INLINE_ROUTINE void rtems_name_to_characters(
*c4 = name & 0xff;
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/tasks.inl b/cpukit/rtems/inline/rtems/rtems/tasks.inl
index 143662c609..4b705c2e24 100644
--- a/cpukit/rtems/inline/rtems/rtems/tasks.inl
+++ b/cpukit/rtems/inline/rtems/rtems/tasks.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/tasks.inl
- */
-
-/*
+ *
* This file contains the static inline implementation of all inlined
* routines in the with RTEMS Tasks Manager.
- *
- * COPYRIGHT (c) 1989-2008.
+ */
+
+/* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,31 +18,28 @@
#ifndef _RTEMS_RTEMS_TASKS_INL
#define _RTEMS_RTEMS_TASKS_INL
-/*PAGE
- *
- * _RTEMS_tasks_Allocate
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicTasks
+ * @{
+ */
+
+/**
+ * @brief RTEMS_tasks_Allocate
*
* This function allocates a task control block from
* the inactive chain of free task control blocks.
*/
-
RTEMS_INLINE_ROUTINE Thread_Control *_RTEMS_tasks_Allocate( void )
{
return (Thread_Control *) _Objects_Allocate( &_RTEMS_tasks_Information );
}
-/*PAGE
- *
- * _RTEMS_tasks_Free
- *
- * DESCRIPTION:
+/**
+ * @brief RTEMS_tasks_Free
*
* This routine frees a task control block to the
* inactive chain of free task control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _RTEMS_tasks_Free (
Thread_Control *the_task
)
@@ -54,15 +50,11 @@ RTEMS_INLINE_ROUTINE void _RTEMS_tasks_Free (
);
}
-/*PAGE
- *
- * _RTEMS_tasks_Priority_to_Core
- *
- * DESCRIPTION:
+/**
+ * @brief RTEMS_tasks_Priority_to_Core
*
* This function converts an RTEMS API priority into a core priority.
*/
-
RTEMS_INLINE_ROUTINE Priority_Control _RTEMS_tasks_Priority_to_Core(
rtems_task_priority priority
)
@@ -70,16 +62,12 @@ RTEMS_INLINE_ROUTINE Priority_Control _RTEMS_tasks_Priority_to_Core(
return (Priority_Control) priority;
}
-/*PAGE
- *
- * _RTEMS_tasks_Priority_is_valid
- *
- * DESCRIPTION:
+/**
+ * @brief RTEMS_tasks_Priority_is_valid
*
* This function returns TRUE if the_priority is a valid user task priority
* and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _RTEMS_tasks_Priority_is_valid (
rtems_task_priority the_priority
)
@@ -88,5 +76,7 @@ RTEMS_INLINE_ROUTINE boolean _RTEMS_tasks_Priority_is_valid (
( the_priority <= RTEMS_MAXIMUM_PRIORITY ) );
}
+/**@}*/
+
#endif
/* end of include file */
diff --git a/cpukit/rtems/inline/rtems/rtems/timer.inl b/cpukit/rtems/inline/rtems/rtems/timer.inl
index 6660af6e40..884e46e2b5 100644
--- a/cpukit/rtems/inline/rtems/rtems/timer.inl
+++ b/cpukit/rtems/inline/rtems/rtems/timer.inl
@@ -1,12 +1,11 @@
/**
* @file rtems/rtems/timer.inl
- */
-
-/*
+ *
* This file contains the static inline implementation of the inlined routines
* from the Timer Manager.
- *
- * COPYRIGHT (c) 1989-1999.
+ */
+
+/* COPYRIGHT (c) 1989-1999.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -19,31 +18,28 @@
#ifndef _RTEMS_RTEMS_TIMER_INL
#define _RTEMS_RTEMS_TIMER_INL
-/*PAGE
- *
- * _Timer_Allocate
- *
- * DESCRIPTION:
+/**
+ * @addtogroup ClassicTimer
+ * @{
+ */
+
+/**
+ * @brief Timer_Allocate
*
* This function allocates a timer control block from
* the inactive chain of free timer control blocks.
*/
-
RTEMS_INLINE_ROUTINE Timer_Control *_Timer_Allocate( void )
{
return (Timer_Control *) _Objects_Allocate( &_Timer_Information );
}
-/*PAGE
- *
- * _Timer_Free
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Free
*
* This routine frees a timer control block to the
* inactive chain of free timer control blocks.
*/
-
RTEMS_INLINE_ROUTINE void _Timer_Free (
Timer_Control *the_timer
)
@@ -51,11 +47,8 @@ RTEMS_INLINE_ROUTINE void _Timer_Free (
_Objects_Free( &_Timer_Information, &the_timer->Object );
}
-/*PAGE
- *
- * _Timer_Get
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Get
*
* This function maps timer IDs to timer control blocks.
* If ID corresponds to a local timer, then it returns
@@ -63,7 +56,6 @@ RTEMS_INLINE_ROUTINE void _Timer_Free (
* is set to OBJECTS_LOCAL. Otherwise, location is set
* to OBJECTS_ERROR and the returned value is undefined.
*/
-
RTEMS_INLINE_ROUTINE Timer_Control *_Timer_Get (
Objects_Id id,
Objects_Locations *location
@@ -73,16 +65,12 @@ RTEMS_INLINE_ROUTINE Timer_Control *_Timer_Get (
_Objects_Get( &_Timer_Information, id, location );
}
-/*PAGE
- *
- * _Timer_Is_interval_class
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Is_interval_class
*
* This function returns TRUE if the class is that of an INTERVAL
* timer, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Timer_Is_interval_class (
Timer_Classes the_class
)
@@ -90,16 +78,12 @@ RTEMS_INLINE_ROUTINE boolean _Timer_Is_interval_class (
return (the_class == TIMER_INTERVAL) || (the_class == TIMER_INTERVAL_ON_TASK);
}
-/*PAGE
- *
- * _Timer_Is_time_of_day_class
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Is_time_of_day_class
*
* This function returns TRUE if the class is that of an INTERVAL
* timer, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Timer_Is_timer_of_day_class (
Timer_Classes the_class
)
@@ -107,16 +91,12 @@ RTEMS_INLINE_ROUTINE boolean _Timer_Is_timer_of_day_class (
return ( the_class == TIMER_TIME_OF_DAY );
}
-/*PAGE
- *
- * _Timer_Is_dormant_class
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Is_dormant_class
*
* This function returns TRUE if the class is that of a DORMANT
* timer, and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Timer_Is_dormant_class (
Timer_Classes the_class
)
@@ -124,15 +104,11 @@ RTEMS_INLINE_ROUTINE boolean _Timer_Is_dormant_class (
return ( the_class == TIMER_DORMANT );
}
-/*PAGE
- *
- * _Timer_Is_null
- *
- * DESCRIPTION:
+/**
+ * @brief Timer_Is_null
*
* This function returns TRUE if the_timer is NULL and FALSE otherwise.
*/
-
RTEMS_INLINE_ROUTINE boolean _Timer_Is_null (
Timer_Control *the_timer
)
@@ -140,5 +116,7 @@ RTEMS_INLINE_ROUTINE boolean _Timer_Is_null (
return ( the_timer == NULL );
}
+/**@}*/
+
#endif
/* end of include file */