Skip to content

Commit

Permalink
Documentation: libdoomsday is a major part of the public API
Browse files Browse the repository at this point in the history
  • Loading branch information
skyjake committed Nov 23, 2015
1 parent ab0e9de commit 5378d53
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 42 deletions.
2 changes: 1 addition & 1 deletion distrib/autobuild.py
Expand Up @@ -453,7 +453,7 @@ def generate_apidoc():
system_command('wc -l doxyissues-qch.txt')

print >> sys.stderr, "\nPublic API docs..."
os.chdir(os.path.join(builder.config.DISTRIB_DIR, '../doomsday/apps/client'))
os.chdir(os.path.join(builder.config.DISTRIB_DIR, '../doomsday/apps/libdoomsday'))
system_command('doxygen api.doxy >/dev/null 2>../../doxyissues-api.txt')
system_command('wc -l ../../doxyissues-api.txt')

Expand Down
17 changes: 0 additions & 17 deletions doomsday/apps/api/doomsday.h
Expand Up @@ -21,23 +21,6 @@
* 02110-1301 USA</small>
*/

/**
* @mainpage libdeng API
*
* This documentation covers all the functions and data that Doomsday makes
* available for games and other plugins.
*
* @section Overview
* The documentation has been organized into <a href="modules.html">modules</a>.
* The primary ones are listed below:
* - @ref base
* - @ref console
* - @ref input
* - @ref network
* - @ref resource
* - @ref render
*/

#ifndef DOOMSDAY_PUBLIC_API_H
#define DOOMSDAY_PUBLIC_API_H

Expand Down
23 changes: 0 additions & 23 deletions doomsday/apps/client/api.doxy

This file was deleted.

29 changes: 29 additions & 0 deletions doomsday/apps/libdoomsday/api.doxy
@@ -0,0 +1,29 @@
# Public API documentation for libdoomsday
@INCLUDE = ../../doomsday.doxy

PROJECT_NAME = "Doomsday Engine"
PROJECT_NUMBER = 2.0
PROJECT_BRIEF = "Shared functionality for client, server and plugins"
PROJECT_LOGO = ../../doc/apidoc-logo.png
HTML_STYLESHEET = ../../doxygen.css
OUTPUT_DIRECTORY = ../../apidoc/api/

INPUT = ../api include src
PREDEFINED = __cplusplus __LIBDOOMSDAY__ \
"LIBDOOMSDAY_PUBLIC=" \
"DENG2_PIMPL(ClassName)=typedef ClassName Public; struct ClassName::Instance : public de::Private<ClassName>" \
"DENG2_PIMPL_NOREF(C)=struct C::Instance : public de::IPrivate" \
"DENG_GUI_PIMPL(C)=struct C::public de::GuiWidgetPrivate<C>" \
"DENG2_PRIVATE(Var)=struct Instance; Instance *Var;" \
"DENG2_ERROR(N)=class N : public de::Error {};" \
"DENG2_SUB_ERROR(B,N)=class N : public B {};" \
"DENG2_OBSERVES(C,A)=public C::I##Audience##Observer" \
"DENG2_DEFINE_AUDIENCE2(Name,Method)=class I##Name##Observer { public: virtual ~I##Name##Observer() {} virtual Method = 0; }; typedef de::Observers<I##Name##Observer> Name##Audience; Name##Audience &audienceFor##Name(); Name##Audience const &audienceFor##Name() const;"

INCLUDED_BY_GRAPH = YES
REFERENCED_BY_RELATION = NO
OPTIMIZE_OUTPUT_FOR_C = NO
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
EXTRACT_PRIVATE = NO
INTERNAL_DOCS = NO
11 changes: 10 additions & 1 deletion doomsday/apps/libdoomsday/include/doomsday/libdoomsday.h
Expand Up @@ -13,12 +13,21 @@
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
* General Public License for more details. You should have received a copy of
* the GNU Lesser General Public License along with this program; if not, see:
* http://www.gnu.org/licenses</small>
* http://www.gnu.org/licenses</small>
*/

#ifndef LIBDOOMSDAY_MAIN_H
#define LIBDOOMSDAY_MAIN_H

/**
* @mainpage Doomsday Engine
*
* This documentation is for the shared @em libdoomsday library that is the
* common foundation for the Client, Server, and plugins. Additionally, the
* client/server runtime API is included here, because it is made available
* for plugins to access at runtime.
*/

#include <de/c_wrapper.h>

/*
Expand Down

0 comments on commit 5378d53

Please sign in to comment.