doc/main.h
author Tom Henderson <tomh@tomh.org>
Fri, 20 Aug 2010 12:17:19 -0700
changeset 6589 9c325569fb01
parent 5528 9d076609fc80
permissions -rw-r--r--
Help waf to guess release versions of nsc and pybindgen
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     1
/**
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     2
 * \mainpage ns-3 Documentation
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     3
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     4
 * \section intro-sec Introduction
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     5
 * <a href="http://www.nsnam.org/">ns-3</a> documentation is maintained using 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     6
 * <a href="http://www.doxygen.org">Doxygen</a>.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     7
 * Doxygen is typically used for 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     8
 * API documentation, and organizes such documentation across different
5519
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
     9
 * modules.   This project uses Doxygen for building the definitive
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    10
 * maintained API documentation,  Separate GNU texinfo documents are used for 
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    11
 * a tutorial, reference manual, and testing and validation manual.
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    12
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    13
 * The ns-3 project documentation is organized as follows:
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    14
 *     - <b><a href="modules.html">modules</a></b>:  The "Modules" tab (above) 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    15
 *       organizes  all of the public API and supporting manual text 
5519
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    16
 *       along the  source code directory structure.   
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    17
 *     - <a href="http://www.nsnam.org/tutorials.html">tutorial</a>:  The ns-3 tutorial is a separate document maintained in <a href="http://www.gnu.org/software/texinfo/"> GNU Texinfo</a>. 
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    18
 *     - <a href="http://www.nsnam.org/tutorials.html">Reference manual</a>:  The ns-3 reference manual is a separate document maintained in <a href="http://www.gnu.org/software/texinfo/"> GNU Texinfo</a>. 
9a6919579d4e update doxygen main page
Tom Henderson <tomh@tomh.org>
parents: 5516
diff changeset
    19
 *     - <a href="http://www.nsnam.org/tutorials.html">Testing and validation manual</a>:  The ns-3 testing and validation manual is a separate document maintained in <a href="http://www.gnu.org/software/texinfo/"> GNU Texinfo</a>. 
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    20
 *     - The <b><a href="http://www.nsnam.org/wiki/index.php/Main_Page">ns-3 wiki</a></b> 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    21
 *       contains additional user-contributed material.  Some wiki-contributed
5516
57091d4dcf6f HOWTOs are now on the wiki
Tom Henderson <tomh@tomh.org>
parents: 5393
diff changeset
    22
 *       material may migrate to and overlap with the Doxygen and manual information.
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    23
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    24
 * \section install-sec Building the Documentation
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    25
 * 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    26
 * ns-3 requires Doxygen version 1.5.4 or greater to fully build all items,
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    27
 * although earlier versions of Doxygen will mostly work.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    28
 * 
5528
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    29
 * Type "./waf --doxygen" or "./waf --doxygen-no-build" to build the 
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    30
 *  documentation.  The doc/ directory contains
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    31
 * configuration for Doxygen (doxygen.conf) and main.h.  The Doxygen 
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    32
 * build process puts html files into the doc/html/ directory, and latex 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    33
 * filex into the doc/latex/ directory.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    34
 * 
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    35
 * \section module-sec Module overview
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    36
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    37
 * The ns-3 library is split across multiple modules:
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    38
 *     - core: located in src/core and contains a number of facilities which
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    39
 *       do not depend on any other module. Some of these facilities are
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    40
 *       OS-dependent.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    41
 *     - simulator: located in src/simulator and contains event scheduling
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    42
 *       facilities.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    43
 *     - common: located in src/common and contains facilities specific
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    44
 *       to network simulations but shared by pretty much every model
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    45
 *       of a network component.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    46
 *     - node: located in src/node. Defines the abstract interfaces which 
5528
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    47
 *       must be implemented by every node and more specifically, by 
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    48
 *       IPv4 and IPv6 nodes.       
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    49
 *     - devices: located in src/devices. Contains a set of MAC-level models
5528
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    50
 *     - InternetStack: located in src/internet-stack. Contains TCP/IP models.
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    51
 *     - Applications: located in src/applications
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    52
 *     - Routing:  located in src/routing; routing protocols.
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    53
 *     - Mobility:  located in src/mobility; Mobility models for nodes
9d076609fc80 further updates to main.h
Tom Henderson <tomh@tomh.org>
parents: 5519
diff changeset
    54
 *     - Helper:  located in src/helper; Helper API for the simulator
2217
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    55
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    56
 * More detail can be found in the <b><a href="modules.html">Modules</a></b>
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    57
 * tab.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    58
 *
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    59
 */
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    60
/**
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    61
 * \namespace ns3
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    62
 * \brief Every class exported by the ns3 library is enclosed in the
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    63
 * ns3 namespace.
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    64
 */
0b4567d545de Doxygen organization
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    65