summaryrefslogtreecommitdiff
path: root/include/asterisk/xmldoc.h
diff options
context:
space:
mode:
authorEliel C. Sardanons <eliels@gmail.com>2008-11-10 13:53:23 +0000
committerEliel C. Sardanons <eliels@gmail.com>2008-11-10 13:53:23 +0000
commit23adb8e5096fbeea54805da2b4d0e09070af8375 (patch)
treefecca24f0474fbec482f8759862bb4d28d625d2c /include/asterisk/xmldoc.h
parent09d28140599031e67d8c563c92cfb5df93d0a60d (diff)
Move all the XML documentation API from pbx.c to xmldoc.c.
Export the XML documentation API: ast_xmldoc_build_synopsis() ast_xmldoc_build_syntax() ast_xmldoc_build_description() ast_xmldoc_build_seealso() ast_xmldoc_build_arguments() ast_xmldoc_printable() ast_xmldoc_load_documentation() git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@155711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk/xmldoc.h')
-rw-r--r--include/asterisk/xmldoc.h85
1 files changed, 85 insertions, 0 deletions
diff --git a/include/asterisk/xmldoc.h b/include/asterisk/xmldoc.h
new file mode 100644
index 000000000..0e8275a2d
--- /dev/null
+++ b/include/asterisk/xmldoc.h
@@ -0,0 +1,85 @@
+/*
+ * Asterisk -- An open source telephony toolkit.
+ *
+ * Copyright (C) 2008, Eliel C. Sardanons (LU1ALY) <eliels@gmail.com>
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE file
+ * at the top of the source tree.
+ */
+
+#ifndef _ASTERISK_XMLDOC_H
+#define _ASTERISK_XMLDOC_H
+
+/*! \file
+ * \brief Asterisk XML Documentation API
+ */
+
+#include "asterisk/xml.h"
+
+#ifdef AST_XML_DOCS
+
+/*!
+ * \brief Get the syntax for a specified application or function.
+ * \param type Application, Function or AGI ?
+ * \param name Name of the application or function.
+ * \retval NULL on error.
+ * \retval The generated syntax in a ast_malloc'ed string.
+ */
+char *ast_xmldoc_build_syntax(const char *type, const char *name);
+
+/*!
+ * \brief Parse the <see-also> node content.
+ * \param type 'application', 'function' or 'agi'.
+ * \param name Application or functions name.
+ * \retval NULL on error.
+ * \retval Content of the see-also node.
+ */
+char *ast_xmldoc_build_seealso(const char *type, const char *name);
+
+/*!
+ * \brief Generate the [arguments] tag based on type of node ('application',
+ * 'function' or 'agi') and name.
+ * \param type 'application', 'function' or 'agi' ?
+ * \param name Name of the application or function to build the 'arguments' tag.
+ * \retval NULL on error.
+ * \retval Output buffer with the [arguments] tag content.
+ */
+char *ast_xmldoc_build_arguments(const char *type, const char *name);
+
+/*!
+ * \brief Colorize and put delimiters (instead of tags) to the xmldoc output.
+ * \param bwinput Not colorized input with tags.
+ * \param withcolors Result output with colors.
+ * \retval NULL on error.
+ * \retval New malloced buffer colorized and with delimiters.
+ */
+char *ast_xmldoc_printable(const char *bwinput, int withcolors);
+
+/*!
+ * \brief Generate synopsis documentation from XML.
+ * \param type The source of documentation (application, function, etc).
+ * \param name The name of the application, function, etc.
+ * \retval NULL on error.
+ * \retval A malloc'ed string with the synopsis.
+ */
+char *ast_xmldoc_build_synopsis(const char *type, const char *name);
+
+/*!
+ * \brief Generate description documentation from XML.
+ * \param type The source of documentation (application, function, etc).
+ * \param name The name of the application, function, etc.
+ * \retval NULL on error.
+ * \retval A malloc'ed string with the formatted description.
+ */
+char *ast_xmldoc_build_description(const char *type, const char *name);
+
+#endif /* AST_XML_DOCS */
+
+#endif /* _ASTERISK_XMLDOC_H */