author | Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
Fri, 26 Oct 2007 14:14:20 +0200 | |
changeset 2036 | 0cb3c7151e89 |
parent 1742 | cf76416ce75b |
child 1813 | 673ba601eb5a |
permissions | -rw-r--r-- |
55
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
1 |
/** |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
2 |
* \mainpage An Introduction to ns-3 |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
3 |
* |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
4 |
* The ns-3 library is split across multiple modules: |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
5 |
* - core: located in src/core and contains a number of facilities which |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
6 |
* do not depend on any other module. Some of these facilities are |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
7 |
* OS-dependent. |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
8 |
* - simulator: located in src/simulator and contains event scheduling |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
9 |
* facilities. |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
10 |
* - common: located in src/common and contains facilities specific |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
11 |
* to network simulations but shared by pretty much every model |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
12 |
* of a network component. |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
13 |
* - node: located in src/node. Defines the abstract interfaces which |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
14 |
* must be implemented by every node and more specifically, by ipv4 nodes. |
400
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
15 |
* - devices: located in src/devices. Contains a set of MAC-level models |
55
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
16 |
* |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
17 |
* The "core" module contains: |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
18 |
* - a Functor class: ns3::Callback |
66 | 19 |
* - an os-independent interface to get access to the elapsed wall clock time: ns3::SystemWallClockMs |
55
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
20 |
* - a class to register regression tests with the test manager: ns3::Test and ns3::TestManager |
398
3b725b90db89
index some new features from the main doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
112
diff
changeset
|
21 |
* - debugging facilities: \ref debugging, \ref assert, \ref error |
3b725b90db89
index some new features from the main doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
112
diff
changeset
|
22 |
* - \ref randomvariable |
538
3cc417842b5f
Added/fixed some doxygen
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
461
diff
changeset
|
23 |
* - \ref config |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
24 |
* - a base class for objects which need to support reference counting |
756
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
25 |
* and QueryInterface: ns3::Object and ns3::InterfaceId |
1389
93f575998efc
s/lowleveltracing/tracing/
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
756
diff
changeset
|
26 |
* - a set of low-level trace facilities integrated in the ns3::Object system: \ref tracing |
756
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
27 |
* - a ns3::ComponentManager which can be used to manage the creation |
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
28 |
* of any object which derives from ns3::Object through an ns3::ClassId |
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
29 |
* - a smart-pointer class ns3::Ptr designed to work together with ns3::Object |
55
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
30 |
* |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
31 |
* The "simulator" module contains: |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
32 |
* - a time management class to hold a time and convert between various time units: ns3::Time |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
33 |
* - a scheduler base class used to implement new simulation event schedulers: |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
34 |
* ns3::Scheduler and ns3::SchedulerFactory |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
35 |
* - a simulator class used to create, schedule and cancel events: ns3::Simulator |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
36 |
* |
1389
93f575998efc
s/lowleveltracing/tracing/
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
756
diff
changeset
|
37 |
* The "core" module contains: |
112
abd79142a0e1
remove reference to Chunk
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
94
diff
changeset
|
38 |
* - a packet class to create and manipulate simulation packets: ns3::Packet, ns3::Header, |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
39 |
* and ns3::Trailer. This packet class also supports per-packet ns3::Tag which are |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
40 |
* globs of data which can be attached to any packet. |
400
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
41 |
* |
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
42 |
* The "node" module contains: |
756
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
43 |
* - a ns3::Node base class which should be subclassed by any new type of |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
44 |
* network Node. |
400
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
45 |
* - models which abstract the MAC-layer from the IP layer protocols: |
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
46 |
* ns3::NetDevice and ns3::Channel. |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
47 |
* - models which abstract the application-layer API: ns3::Application, |
756
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
48 |
* ns3::Socket, ns3::SocketFactory, and, ns3::Udp |
640
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
49 |
* |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
50 |
* The "internet-node" module contains a set of classes which implement the |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
51 |
* APIs defined in the "node" module: |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
52 |
* - an Ipv4/Udp stack with socket support |
028db47a657f
beautify the dox output
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
538
diff
changeset
|
53 |
* - an ARP module |
756
d9fc71fb459c
fix main dox entry point
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
640
diff
changeset
|
54 |
* - an InternetNode class which is a Node subclass. |
400
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
55 |
* |
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
56 |
* The "devices" module contains: |
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
57 |
* - a PointToPoint MAC device: ns3::PointToPointNetDevice, ns3::PointToPointChannel, |
9bf9d452a0a8
add models to doxygen index
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
399
diff
changeset
|
58 |
* and ns3::PointToPointTopology. |
55
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
59 |
*/ |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
60 |
/** |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
61 |
* \namespace ns3 |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
62 |
* \brief Every class exported by the ns3 library is enclosed in the |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
63 |
* ns3 namespace. |
b811c06c6317
add doxygen framework
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
64 |
*/ |
94
6aabc116c7c7
add Constants section to doxygen documentation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
66
diff
changeset
|
65 |
/** |
416
badb0e35d4c4
fix more dox warnings
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
400
diff
changeset
|
66 |
* \defgroup constants Constants |
94
6aabc116c7c7
add Constants section to doxygen documentation
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
66
diff
changeset
|
67 |
* \brief Constants you can change |
1736
b967654a135a
Fix the OLSR documentation.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
756
diff
changeset
|
68 |
*/ |