From db2ac325b6785d39767fbd8c1b2221b34b6c5a32 Mon Sep 17 00:00:00 2001 From: Pavel Boyko Date: Fri, 13 Mar 2009 14:52:05 +0300 Subject: [PATCH] 1. HIDE_UNDOC_CLASSES is temporary set to NO in doxygen.conf 2. Add \ingroup mesh to all (?) mesh-related classes to see list of them in doxygen --- doc/doxygen.conf | 2 +- .../l2-routing/l2-routing-hwmp/hwmp-rtable.h | 4 +++- .../l2-routing/l2-routing-hwmp/hwmp-state.h | 3 +++ src/devices/l2-routing/l2-routing-hwmp/hwmp.h | 6 +++++ .../l2-routing-main/l2-routing-net-device.h | 9 ++++---- src/devices/wifi/dot11s-codes.h | 9 ++++++++ src/devices/wifi/dot11s-parameters.h | 3 +++ .../wifi/dot11s-peer-management-element.h | 3 +++ src/devices/wifi/mesh-configuration-element.h | 23 +++++++++++++++---- src/devices/wifi/mesh-mgt-headers.h | 6 +++++ .../wifi/mesh-wifi-beacon-timing-element.h | 15 +++++++++++- src/devices/wifi/mesh-wifi-mac-header.h | 8 ++++++- src/devices/wifi/mesh-wifi-mac.h | 8 ++----- src/devices/wifi/mesh-wifi-peer-manager.h | 7 +++++- .../wifi/mesh-wifi-perr-information-element.h | 4 +++- .../wifi/mesh-wifi-prep-information-element.h | 3 +++ .../wifi/mesh-wifi-preq-information-element.h | 7 +++++- .../wifi/mesh-wifi-rann-information-element.h | 3 +++ src/node/l2-routing-protocol.h | 6 +---- 19 files changed, 101 insertions(+), 28 deletions(-) diff --git a/doc/doxygen.conf b/doc/doxygen.conf index 1460ba842..57945126b 100644 --- a/doc/doxygen.conf +++ b/doc/doxygen.conf @@ -300,7 +300,7 @@ HIDE_UNDOC_MEMBERS = YES # If set to NO (the default) these classes will be included in the various # overviews. This option has no effect if EXTRACT_ALL is enabled. -HIDE_UNDOC_CLASSES = YES +HIDE_UNDOC_CLASSES = NO # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all # friend (class|struct|union) declarations. diff --git a/src/devices/l2-routing/l2-routing-hwmp/hwmp-rtable.h b/src/devices/l2-routing/l2-routing-hwmp/hwmp-rtable.h index e497a65cb..70e558ddc 100644 --- a/src/devices/l2-routing/l2-routing-hwmp/hwmp-rtable.h +++ b/src/devices/l2-routing/l2-routing-hwmp/hwmp-rtable.h @@ -32,7 +32,9 @@ #include "ns3/packet.h" namespace ns3 { - +/** + * \ingroup mesh + */ class HwmpRtable : public Object { public: diff --git a/src/devices/l2-routing/l2-routing-hwmp/hwmp-state.h b/src/devices/l2-routing/l2-routing-hwmp/hwmp-state.h index 2cc1792db..a0e9de58d 100644 --- a/src/devices/l2-routing/l2-routing-hwmp/hwmp-state.h +++ b/src/devices/l2-routing/l2-routing-hwmp/hwmp-state.h @@ -34,7 +34,10 @@ #include "ns3/dot11s-parameters.h" namespace ns3 { /** + * \ingroup mesh + * * \brief Handles HWMP state machine at each real interface + * * \details Implements the following: * 1. Keep it's own DSN, * 2. Keep PREQ and PREP timers adn send this frames in diff --git a/src/devices/l2-routing/l2-routing-hwmp/hwmp.h b/src/devices/l2-routing/l2-routing-hwmp/hwmp.h index d5ecb5d81..3a6a6c4c2 100644 --- a/src/devices/l2-routing/l2-routing-hwmp/hwmp.h +++ b/src/devices/l2-routing/l2-routing-hwmp/hwmp.h @@ -35,8 +35,11 @@ namespace ns3 { class HwmpState; /** + * \ingroup mesh + * * \brief Hwmp tag implements interaction between HWMP * protocol and MeshWifiMac + * * \details Hwmp tag keeps the following: * 1. When packet is passed from Hwmp to 11sMAC: * - retransmitter address, @@ -75,6 +78,9 @@ namespace ns3 { uint32_t m_metric; uint32_t m_seqno; }; + /** + * \ingroup mesh + */ class Hwmp : public L2RoutingProtocol { public: diff --git a/src/devices/l2-routing/l2-routing-main/l2-routing-net-device.h b/src/devices/l2-routing/l2-routing-main/l2-routing-net-device.h index a09ef125b..ab3c543c4 100644 --- a/src/devices/l2-routing/l2-routing-main/l2-routing-net-device.h +++ b/src/devices/l2-routing/l2-routing-main/l2-routing-net-device.h @@ -32,17 +32,16 @@ namespace ns3 { class Node; /** - * \ingroup devices - * \defgroup L2RoutingNetDevice L2routingNetDevice - */ - /** - * \ingroup L2RoutingNetDevice + * \ingroup mesh + * * \brief a virtual net device that may forward packets * between real network devices using routing protocols of * MAC-layer + * * \details This is a virtual netdevice, which aggreagates * real netdevices and uses interface of L2RoutingProtocol to * forward packets + * * \attention The idea of L2RoutingNetDevice is similar to * BridgeNetDevice, but the packets, which going through * L2RoutingNetDevice may be changed (because routing protocol diff --git a/src/devices/wifi/dot11s-codes.h b/src/devices/wifi/dot11s-codes.h index 43171b3e6..f4d5de30f 100644 --- a/src/devices/wifi/dot11s-codes.h +++ b/src/devices/wifi/dot11s-codes.h @@ -25,6 +25,9 @@ namespace ns3 { +/** + * \ingroup mesh + */ enum dot11sElementID { MESH_CONFIGURATION = 18, MESH_ID, @@ -52,6 +55,9 @@ enum dot11sElementID { MSAIE, }; +/** + * \ingroup mesh + */ enum dot11sReasonCode { PEER_LINK_CANCELLED, MESH_MAX_PEERS, @@ -69,6 +75,9 @@ enum dot11sReasonCode { DOT11S_REASON_RESERVED, }; +/** + * \ingroup mesh + */ enum dot11sStatusCode { PEAR_LINK_ESTABLISHED, PEAR_LINK_CLOSED, diff --git a/src/devices/wifi/dot11s-parameters.h b/src/devices/wifi/dot11s-parameters.h index c9e01bfd2..a60b94d70 100644 --- a/src/devices/wifi/dot11s-parameters.h +++ b/src/devices/wifi/dot11s-parameters.h @@ -31,6 +31,9 @@ namespace ns3 #define TU_TO_TIME(x) MicroSeconds(x*1024) #define TIME_TO_TU(x) x.GetMicroSeconds()/1024 +/** + * \ingroup mesh +*/ struct dot11sParameters { /** Peer Link */ diff --git a/src/devices/wifi/dot11s-peer-management-element.h b/src/devices/wifi/dot11s-peer-management-element.h index ff8e1fd58..8ccd98426 100644 --- a/src/devices/wifi/dot11s-peer-management-element.h +++ b/src/devices/wifi/dot11s-peer-management-element.h @@ -29,6 +29,9 @@ namespace ns3 { +/** + * \ingroup mesh + */ class PeerLinkManagementElement { public: diff --git a/src/devices/wifi/mesh-configuration-element.h b/src/devices/wifi/mesh-configuration-element.h index 6a3e9f875..9ee3e5bb4 100644 --- a/src/devices/wifi/mesh-configuration-element.h +++ b/src/devices/wifi/mesh-configuration-element.h @@ -28,31 +28,41 @@ namespace ns3 { - + /** + * \ingroup mesh + */ enum dot11sPathSelectionProtocol { PROTOCOL_HWMP = 0x000fac00, PROTOCOL_NULL = 0x000facff, }; - +/** + * \ingroup mesh + */ enum dot11sPathSelectionMetric { METRIC_AIRTIME = 0x000fac00, METRIC_NULL = 0x000facff, }; - +/** + * \ingroup mesh + */ enum dot11sCongestionControlMode { CONGESTION_DEFAULT = 0x000fac00, CONGESTION_NULL = 0x000facff, }; - +/** + * \ingroup mesh + */ enum dot11sChannelPrecedence { CHANNEL_PRECEDENCE_OFF = 0x000fac00, }; - +/** + * \ingroup mesh + */ class dot11sMeshCapability { public: @@ -70,6 +80,9 @@ class dot11sMeshCapability bool Is(uint16_t cap,uint8_t n) const; }; +/** + * \ingroup mesh + */ class MeshConfigurationElement { public: diff --git a/src/devices/wifi/mesh-mgt-headers.h b/src/devices/wifi/mesh-mgt-headers.h index e978ba3d8..c33a61014 100644 --- a/src/devices/wifi/mesh-mgt-headers.h +++ b/src/devices/wifi/mesh-mgt-headers.h @@ -42,6 +42,9 @@ #include "ssid.h" namespace ns3 { +/** + * \ingroup mesh + */ class MgtMeshBeaconHeader : public MgtBeaconHeader { public: @@ -59,6 +62,9 @@ class MgtMeshBeaconHeader : public MgtBeaconHeader }; +/** + * \ingroup mesh + */ class MeshMgtPeerLinkManFrame : public Header { public: diff --git a/src/devices/wifi/mesh-wifi-beacon-timing-element.h b/src/devices/wifi/mesh-wifi-beacon-timing-element.h index 83d1ca1ba..84350f48d 100644 --- a/src/devices/wifi/mesh-wifi-beacon-timing-element.h +++ b/src/devices/wifi/mesh-wifi-beacon-timing-element.h @@ -28,6 +28,9 @@ #include namespace ns3 { +/** + * \ingroup mesh + */ class WifiBeaconTimingElementUnit : public RefCountBase { public: @@ -48,10 +51,20 @@ class WifiBeaconTimingElementUnit : public RefCountBase //Beacon interval of remote mesh point: uint16_t BeaconInterval; }; -//This type is a list of timing elements obtained from neigbours with their beacons: +/** + * \ingroup mesh + * This type is a list of timing elements obtained from neigbours with their beacons: + */ typedef Ptr WifiBeaconTimingElementPointer; + +/** + * \ingroup mesh + */ typedef std::list NeighboursTimingUnitsList; +/** + * \ingroup mesh + */ class WifiBeaconTimingElement { public: diff --git a/src/devices/wifi/mesh-wifi-mac-header.h b/src/devices/wifi/mesh-wifi-mac-header.h index 34b2bbe6d..cc5a426b7 100644 --- a/src/devices/wifi/mesh-wifi-mac-header.h +++ b/src/devices/wifi/mesh-wifi-mac-header.h @@ -7,7 +7,9 @@ #include namespace ns3 { - +/** + * \ingroup mesh + */ class WifiMeshHeader : public Header //7.1.3.5b { public: @@ -44,6 +46,10 @@ class WifiMeshHeader : public Header //7.1.3.5b Mac48Address m_addr6; Mac48Address m_addr7; }; + +/** + * \ingroup mesh + */ class WifiMeshMultihopActionHeader : public Header //7.2.3.14 { //Multichop action frame consists of Mesh header, Action, and diff --git a/src/devices/wifi/mesh-wifi-mac.h b/src/devices/wifi/mesh-wifi-mac.h index 560026c5e..61604e0b4 100644 --- a/src/devices/wifi/mesh-wifi-mac.h +++ b/src/devices/wifi/mesh-wifi-mac.h @@ -18,11 +18,6 @@ * Authors: Kirill Andreev * Evgeny Khorov */ - -/** - * \addtogroup mesh - * \{ - */ #ifndef MAC_HIGH_MESH_H #define MAC_HIGH_MESH_H @@ -51,6 +46,7 @@ namespace ns3 { class WifiPeerManager; /** * \ingroup mesh + * * \brief Implements MAC-layer of mesh point: beaconing and * peer link management. * @@ -388,4 +384,4 @@ namespace ns3 { #endif /* MAC_HIGH_MESH_H */ -//\} \ No newline at end of file +/*@}*/ \ No newline at end of file diff --git a/src/devices/wifi/mesh-wifi-peer-manager.h b/src/devices/wifi/mesh-wifi-peer-manager.h index 658f4b026..f3fc9dce9 100644 --- a/src/devices/wifi/mesh-wifi-peer-manager.h +++ b/src/devices/wifi/mesh-wifi-peer-manager.h @@ -39,6 +39,9 @@ namespace ns3 { class MeshWifiMac; + /** + * \ingroup mesh + */ class WifiPeerLinkDescriptor : public RefCountBase { public: @@ -191,7 +194,9 @@ namespace ns3 Callback m_linkStatusCallback; }; - + /** + * \ingroup mesh + */ class WifiPeerManager : public Object { public: diff --git a/src/devices/wifi/mesh-wifi-perr-information-element.h b/src/devices/wifi/mesh-wifi-perr-information-element.h index 4bc44f9bf..e069e51b4 100644 --- a/src/devices/wifi/mesh-wifi-perr-information-element.h +++ b/src/devices/wifi/mesh-wifi-perr-information-element.h @@ -32,7 +32,9 @@ namespace ns3 { - +/** + * \ingroup mesh + */ class WifiPerrInformationElement : public Header { public: diff --git a/src/devices/wifi/mesh-wifi-prep-information-element.h b/src/devices/wifi/mesh-wifi-prep-information-element.h index 48e7db1ab..547722393 100644 --- a/src/devices/wifi/mesh-wifi-prep-information-element.h +++ b/src/devices/wifi/mesh-wifi-prep-information-element.h @@ -31,6 +31,9 @@ #include "ns3/header.h" namespace ns3 { +/** + * \ingroup mesh + */ class WifiPrepInformationElement : public Header { public: diff --git a/src/devices/wifi/mesh-wifi-preq-information-element.h b/src/devices/wifi/mesh-wifi-preq-information-element.h index 7a1517ef9..2ba99816e 100644 --- a/src/devices/wifi/mesh-wifi-preq-information-element.h +++ b/src/devices/wifi/mesh-wifi-preq-information-element.h @@ -31,6 +31,9 @@ #include namespace ns3 { +/** + * \ingroup mesh + */ class DestinationAddressUnit : public RefCountBase { public: @@ -50,7 +53,9 @@ class DestinationAddressUnit : public RefCountBase Mac48Address m_destinationAddress; uint32_t m_destSeqNumber; }; - +/** + * \ingroup mesh + */ class WifiPreqInformationElement : public Header { public: diff --git a/src/devices/wifi/mesh-wifi-rann-information-element.h b/src/devices/wifi/mesh-wifi-rann-information-element.h index d0bb8fa5d..075d557dd 100644 --- a/src/devices/wifi/mesh-wifi-rann-information-element.h +++ b/src/devices/wifi/mesh-wifi-rann-information-element.h @@ -32,6 +32,9 @@ namespace ns3 { +/** + * \ingroup mesh + */ class WifiRannInformationElement { public: diff --git a/src/node/l2-routing-protocol.h b/src/node/l2-routing-protocol.h index 511136e1c..2979ad3e8 100644 --- a/src/node/l2-routing-protocol.h +++ b/src/node/l2-routing-protocol.h @@ -34,11 +34,7 @@ namespace ns3 { class Packet; /** - * \ingroup node - * \defgroup L2RoutingProtocol L2routingProtocol - */ -/** - * \ingroup L2RoutingProtocol + * \ingroup mesh * * \brief Base class for Layer 2 routing protocols *