From ea4edf7857c849acc2269118ad174d016142ab83 Mon Sep 17 00:00:00 2001 From: kpfleming Date: Tue, 7 Jun 2005 01:13:23 +0000 Subject: add doxygen docs for file version stuff make doxygen expand __GNUC__ protected code blocks make doxygen process include/asterisk.h git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5871 f38db490-d61c-443f-a65b-d21fe96a405b --- contrib/asterisk-ng-doxygen | 7 ++++--- include/asterisk.h | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 3 deletions(-) diff --git a/contrib/asterisk-ng-doxygen b/contrib/asterisk-ng-doxygen index 1874ff22a..0ebe57f27 100755 --- a/contrib/asterisk-ng-doxygen +++ b/contrib/asterisk-ng-doxygen @@ -451,6 +451,7 @@ WARN_LOGFILE = # with spaces. INPUT = ./ \ + include \ include/asterisk \ channels \ funcs \ @@ -962,13 +963,13 @@ ENABLE_PREPROCESSING = YES # compilation will be performed. Macro expansion can be done in a controlled # way by setting EXPAND_ONLY_PREDEF to YES. -MACRO_EXPANSION = NO +MACRO_EXPANSION = YES # 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 +EXPAND_ONLY_PREDEF = YES # 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. @@ -996,7 +997,7 @@ INCLUDE_FILE_PATTERNS = # undefined via #undef or recursively expanded use the := operator # instead of the = operator. -PREDEFINED = +PREDEFINED = __GNUC__ # 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. diff --git a/include/asterisk.h b/include/asterisk.h index 5c82fbd4f..e33be868f 100755 --- a/include/asterisk.h +++ b/include/asterisk.h @@ -54,9 +54,44 @@ extern void ast_channels_init(void); extern int dnsmgr_init(void); extern void dnsmgr_reload(void); +/*! + * \brief Register the version of a source code file with the core. + * \param file the source file name + * \param version the version string (typically a CVS revision keyword string) + * \return nothing + * + * This function should not be called directly, but instead the + * ASTERISK_FILE_VERSION macro should be used to register a file with the core. + */ void ast_register_file_version(const char *file, const char *version); + +/*! + * \brief Unregister a source code file from the core. + * \param file the source file name + * \return nothing + * + * This function should not be called directly, but instead the + * ASTERISK_FILE_VERSION macro should be used to automatically unregister + * the file when the module is unloaded. + */ void ast_unregister_file_version(const char *file); +/*! + * \brief Register/unregister a source code file with the core. + * \param file the source file name + * \param version the version string (typically a CVS revision keyword string) + * + * This macro will place a file-scope constructor and destructor into the + * source of the module using it; this will cause the version of this file + * to registered with the Asterisk core (and unregistered) at the appropriate + * times. + * + * Example: + * + * \code + * ASTERISK_FILE_VERSION(__FILE__, "\$Revision\$") + * \endcode + */ #ifdef __GNUC__ #define ASTERISK_FILE_VERSION(file, version) \ static void __attribute__((constructor)) __register_file_version(void) \ -- cgit v1.2.3