Skip to content

Commit

Permalink
Doxygen updates
Browse files Browse the repository at this point in the history
  • Loading branch information
bakerstu committed May 23, 2015
1 parent b5b08e2 commit 1004065
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 97 deletions.
4 changes: 2 additions & 2 deletions doc/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ DOXYFILE_ENCODING = UTF-8
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
# by quotes) that should identify the project.

PROJECT_NAME = Open Model Railroad Network (OpenMRN)
PROJECT_NAME = "Open Model Railroad Network (OpenMRN)"

# The PROJECT_NUMBER tag can be used to enter a project or revision number.
# This could be handy for archiving the generated documentation or
Expand Down Expand Up @@ -1146,7 +1146,7 @@ SERVER_BASED_SEARCH = NO
# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
# generate Latex output.

GENERATE_LATEX = YES
GENERATE_LATEX = NO

# 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
Expand Down
16 changes: 8 additions & 8 deletions doc/hub_router_gateway.dox
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* @section tableofcontents Table of Contents
* - @ref introduction
* - @ref hub
* - @ref routers
* - @ref router
* - @ref gateway
*
*
Expand All @@ -17,33 +17,33 @@
*
*
*
* @section hub Hubs
* @section hub Hub
* A hub connects two or more physical interfaces through software. It makes
* no interpretation of the incoming messages. A hub simply forwards an
* incoming message coming in on one segment to all of the other segments
* participating in the hub. A hub may connect more than one physical interface
* type (i.e. CAN, GridConnect over serial or TCP, raw TCP, etc...). All
* participants in a hub must have the same abstract protocol (NMRAnet for
* participants in a hub must have the same abstract protocol (OpenLCB for
* example).
*
*
*
* @section routers Routers
* @section router Router
* A router connects two or more physical interfaces through software. It can
* interpret incoming messages from each segment and make an intelligent
* decision as to which of the other participating segments the message should
* be forwarded onto. The decision process can be made based on static routing
* tables, or based on a learning tree as to what segment a message is
* destined. All participants in a hub must have the same abstract protocol
* (NMRAnet for example).
* (OpenLCB for example).
*
*
*
* @section gateways Gateways
* @section gateway Gateway
* A gateway connects exactly two physical interfaces through software. Unlike
* with @ref hub or @ref router, a gateway connects two segments with differing
* a @ref hub or @ref router, a gateway connects two segments with differing
* abstract protocols. For example, a gateway can connect an XpressNet segment
* to an NMRAnet segment. A translation between the two abstract protocols
* to an OpenLCB segment. A translation between the two abstract protocols
* takes place in the implementation of the gateway.
*/

24 changes: 4 additions & 20 deletions doc/main.dox
Original file line number Diff line number Diff line change
@@ -1,26 +1,10 @@
/**
* @mainpage
*
* @section tableofcontents Table of Contents
* - @ref intro_section
* - @ref main_getting_started
* - @ref main_user_api
* - @ref copyright
* - @ref OpenMRN_license
* - @ref FreeRTOS_license
* - @ref newlib_license
* - @ref cJSON_license
* - @ref tinyxml2_license
* - @ref sys_tree_license
* - @ref layering
* - @ref threading
* - @ref main_thread
* - @ref rx_thread
* - @ref timer_thread
* - @ref idle_thread
* - @ref additional_threads
* - @ref hub_router_gateway
* - @ref coding_guidelines
* @tableofcontents
*
*
*
*
* @section intro_section Introduction
* OpenMRN is a networking stack specifically designed for use in model
Expand Down
103 changes: 37 additions & 66 deletions doc/style_guide.dox
Original file line number Diff line number Diff line change
@@ -1,44 +1,9 @@
/**
* @page style_guide Coding Guidelines
* @section tableofcontents Table of Contents
* - @ref introduction
* - @ref coding_style
* - @ref comments
* - @ref pointer_reference
* - @ref lineendings
* - @ref tabs
* - @ref keywords
* - @ref braces
* - @ref line_size
* - @ref include_order
* - @ref naming
* - @ref styles
* - @ref hungarian
* - @ref filenames
* - @ref include_guards
* - @ref constants
* - @ref functions
* - @ref globals
* - @ref locals
* - @ref macros
* - @ref structures
* - @ref cxxclasses
* - @ref handles
* - @ref counters
* - @ref switch
* - @ref if_else
* - @ref coding_standards
* - @ref reference_args
* - @ref cxxexceptions
* - @ref rtti
* - @ref streams
* - @ref pre_increment_decrement
* - @ref zero_null
* - @ref auto
* - @ref brace_initialization
* - @ref boost
* - @ref cxx11
* - @ref exceptions
*
* @tableofcontents
*
*
*
* @section introduction Introduction
* OpenMRN source code adheres to strict coding guidelines. These guidelines
Expand Down Expand Up @@ -191,7 +156,7 @@
*
* Some examples:
* @code
* namespace ExampleNamepace
* namespace example_namepace
* {
*
* void example_function(int param)
Expand Down Expand Up @@ -257,12 +222,12 @@
* order using quotes. There will be a blank line between the corresponding
* header file and the start of the system/library headers and another blank
* line between the end of the system/library headers and the start of all the
* rest of the headers. Comments may optionally follow and include declaration
* rest of the headers. Comments may optionally follow an include declaration
* but should only be on their own line(s) above the include if in the rare case
* the comment would otherwise cause the line to exceed 80 characters. The
* comment in this case is not to be a Doxygen comment. Example:
* @code
* /* @file Example.cxx (this is an abbreviated file header for example only)
* /* @file Example.cxx (this is an abbreviated file for example only)
* */
*
* #include "Example.hxx"
Expand Down Expand Up @@ -306,8 +271,7 @@
* C++ language source and header files will use @ref PascalCase. Source files
* will have an extension of ".cxx" and header files will have an extension of
* ".hxx". A C++ file shall be named after the major class or object within
* it. If a C++ namespace wraps the definitions within a C++ file, the
* namespace name shall be added to the filename as a prefix.
* it.
*
* Mixed language (C and C++) header files will use @ref lower_case and have an
* extension of ".h".
Expand All @@ -333,26 +297,28 @@
*
* Some Examples:
* @code
* endian.h // standard C header file that could also be used in C++
* hw_init.c // standard C source file
* NMRAnetNode.hxx // C++ class Node implementation within the NMRAnet namespace
* NMRAnetNode.cxx // C++ class Node implementation within the NMRAnet namespace
* build_cdi.py // Executable Python script with permissions -rwxrwxr-x
* info.dox // Doxygen comment only file
* endian.h // standard C header file that could also be used in C++
* hw_init.c // standard C source file
* Node.hxx // C++ class Node implementation
* Node.cxx // C++ class Node implementation
* build_cdi.py // Executable Python script with permissions -rwxrwxr-x
* info.dox // Doxygen comment only file
* @endcode
*
* @subsubsection include_guards Include Guards
* Header files often implement include guards to protect from multiple
* inclusion of a header within a given source context. The style used for the
* tag adds a leading underscore "_", replaces any "." character with an
* underscore "_" character, and adds a lagging underscore "_". The case of
* the tag shall match the case of the filename. Additional #includes
* the tag shall be all caps in the @ref UPPER_CASE style. The Include guard
* should also contain the root directories of the file location. Additional
* #includes
* shall always fall within the body of the include guard.
* For a given filename of
* "ExampleFilename.hxx", see the following example:
* "ExampleFilename.hxx" in the utils directory, see the following example:
* @code
* #ifndef _ExampleFilename_hxx_
* #define _Examplefilename_hxx_
* #ifndef _UTILS_EXAMPLEFILENAME_hxx_
* #define _UTILS_EXAMPLEFILENAME_hxx_
*
* #include <new>
*
Expand Down Expand Up @@ -469,8 +435,8 @@
* The structure tag uses @ref lower_case and the structure identifier uses
* @ref PascalCase.
*
* @subsubsection cxxclasses C++ Structures, Classes, Enumerations, and Namespaces
* In C++, classes, structures, enumerations, and namespaces use @ref
* @subsubsection cxxclasses C++ Structures, Classes, and Enumerations
* In C++, classes, structures, and enumerations use @ref
* PascalCase.
*
* In general, public members should be declared first, followed by protected
Expand Down Expand Up @@ -501,13 +467,17 @@
* ENUM_VALUE = 5;
* };
*
* namespace NamespaceExample
* {
* };
*
* @endcode
*
* @subsubsection cxxnamespaces C++ Namespaces
* In C++, namespaces use @ref lower_case.
*
* For example:
* @code
* namespace example_namespace
* {
* }
* @endcode
*
* @subsubsection handles Handles
* Within C code, it is common to define a handle. A handle is typically a
Expand Down Expand Up @@ -538,14 +508,14 @@
*
*
* @subsubsection counters Loop Counters
* It is a best practice to use the variable names i, j, and j for arbitrary
* It is a best practice to use the variable names i, j, and k for arbitrary
* loop counters. For example:
* @code
* for (int i = 0; i < 10; i++)
* for (int i = 0; i < 10; ++i)
* {
* for (int j = 0; j < 10; j++)
* for (int j = 0; j < 10; ++j)
* {
* for (int k = 0; k < 10; k++)
* for (int k = 0; k < 10; ++k)
* {
* }
* }
Expand Down Expand Up @@ -669,7 +639,8 @@
*
* @subsection zero_null 0 and nullptr/NULL
* Use 0 for integers, 0.0 for reals, nullptr or NULL for pointers, and '\0'
* for chars.
* for chars. In C++ source code, nullptr is prefered over NULL, and NULL is
* considered deprecated.
* @code
* int i = 0;
* float j = 0.0;
Expand All @@ -683,7 +654,7 @@
* @subsection auto auto
* Use of auto is only allowed for local variable declaration. In general, the
* use of auto is not preferred, but it is allowed for long cluttered type
* names.
* names or when required by the C++ language semantics.
*
*
*
Expand Down
2 changes: 1 addition & 1 deletion src/freertos_drivers/st/stm32f0xx_hal_conf.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/**
******************************************************************************
* @file stm32f0xx_hal_conf_template.h
* @file stm32f0xx_hal_conf.h
* @author MCD Application Team
* @version V1.2.0
* @date 11-December-2014
Expand Down

0 comments on commit 1004065

Please sign in to comment.