diff --git a/src/applications/onoff/onoff-application.h b/src/applications/onoff/onoff-application.h index ac79ff18b..58047ee6b 100644 --- a/src/applications/onoff/onoff-application.h +++ b/src/applications/onoff/onoff-application.h @@ -40,10 +40,25 @@ class RandomVariable; class Socket; /** + * \ingroup applications + * \defgroup onoff OnOffApplication + * + * This traffic generator follows an On/Off pattern: after + * Application::StartApplication + * is called, "On" and "Off" states alternate. The duration of each of + * these states is determined with the onTime and the offTime random + * variables. During the "Off" state, no traffic is generated. + * During the "On" state, cbr traffic is generated. This cbr traffic is + * characterized by the specified "data rate" and "packet size". + */ + /** + * \ingroup onoff + * * \brief Generate traffic to a single destination according to an * OnOff pattern. * - * This traffic follows an On/Off pattern: after Application::StartApplication + * This traffic generator follows an On/Off pattern: after + * Application::StartApplication * is called, "On" and "Off" states alternate. The duration of each of * these states is determined with the onTime and the offTime random * variables. During the "Off" state, no traffic is generated. diff --git a/src/applications/packet-sink/packet-sink.h b/src/applications/packet-sink/packet-sink.h index 638309aad..20781a79e 100644 --- a/src/applications/packet-sink/packet-sink.h +++ b/src/applications/packet-sink/packet-sink.h @@ -34,6 +34,21 @@ class Socket; class Packet; /** + * \ingroup applications + * \defgroup packetsink PacketSink + * + * This application was written to complement OnOffApplication, but it + * is more general so a PacketSink name was selected. Functionally it is + * important to use in multicast situations, so that reception of the layer-2 + * multicast frames of interest are enabled, but it is also useful for + * unicast as an example of how you can write something simple to receive + * packets at the application layer. Also, if an IP stack generates + * ICMP Port Unreachable errors, receiving applications will be needed. + */ + +/** + * \ingroup packetsink + * * \brief Receive and consume traffic generated to an IP address and port * * This application was written to complement OnOffApplication, but it diff --git a/src/applications/udp-echo/udp-echo-client.h b/src/applications/udp-echo/udp-echo-client.h index bfb1c3fcf..bea207918 100644 --- a/src/applications/udp-echo/udp-echo-client.h +++ b/src/applications/udp-echo/udp-echo-client.h @@ -30,6 +30,7 @@ class Socket; class Packet; /** + * \ingroup udpecho * \brief A Udp Echo client * * Every packet sent should be returned by the server and received here. diff --git a/src/applications/udp-echo/udp-echo-server.h b/src/applications/udp-echo/udp-echo-server.h index 4e2b09fce..7715761c3 100644 --- a/src/applications/udp-echo/udp-echo-server.h +++ b/src/applications/udp-echo/udp-echo-server.h @@ -30,6 +30,12 @@ class Socket; class Packet; /** + * \ingroup applications + * \defgroup udpecho UdpEcho + */ + +/** + * \ingroup udpecho * \brief A Udp Echo server * * Every packet received is sent back. diff --git a/src/node/application.h b/src/node/application.h index 1fb243691..bb706cd4f 100644 --- a/src/node/application.h +++ b/src/node/application.h @@ -33,17 +33,13 @@ class Node; class RandomVariable; /** - * \ingroup node - * \defgroup application Application - */ -/** - * \ingroup application - * \brief The base class for all ns3 applications + * \addtogroup applications Applications + * + * Class ns3::Application can be used as a base class for ns3 applications. + * Applications are associated with individual nodes. Each node + * holds a list of references (smart pointers) to its applications. * - * Class Application is the base class for all ns3 applications. - * Applications are associated with individual nodes. - * - * Conceptually, an application has zero or more Socket + * Conceptually, an application has zero or more ns3::Socket * objects associated with it, that are created using the Socket * creation API of the Kernel capability. The Socket object * API is modeled after the @@ -53,6 +49,14 @@ class RandomVariable; * in ns3. A set of "upcalls" are defined that will be called when * the previous blocking call would normally exit. THis is documented * in more detail Socket class in socket.h. + * + * The main purpose of the base class application public API is to + * provide a uniform way to start and stop applications. + */ + + /** + * \brief The base class for all ns3 applications + * */ class Application : public Object {