--- a/doc/ns3_html_theme/get_version.sh Mon Nov 18 13:08:17 2013 +0100
+++ b/doc/ns3_html_theme/get_version.sh Mon Nov 18 13:28:05 2013 +0100
@@ -21,7 +21,7 @@
# to force us into the public case.)
#
# The approach to identify cases 1 & 2 is to test:
-# a. We're on nsnam.org (actually, nsnam.ece.gatech.edu), and
+# a. We're on nsnam.org (actually, nsnam-www.coe-hosted.gatech.edu), and
# b. We're in the tmp build directory, /tmp/daily-nsnam/
# (This is the directory used by the update-* scripts
# run by cron jobs.)
@@ -91,9 +91,9 @@
esac
done
-# Hostname, fully qualified, e.g. nsnam.ece.gatech.edu
+# Hostname, fully qualified, e.g. nsnam-www.coe-hosted.gatech.edu
HOST=`hostname`
-NSNAM="nsnam.ece.gatech.edu"
+NSNAM="nsnam-www.coe-hosted.gatech.edu"
# Build directory
DAILY="^/tmp/daily-nsnam/"
@@ -212,4 +212,4 @@
say
say "outf = $outf:"
cat -n $outf
-say Done.
\ No newline at end of file
+say Done.
--- a/src/mpi/model/distributed-simulator-impl.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/mpi/model/distributed-simulator-impl.h Mon Nov 18 13:28:05 2013 +0100
@@ -48,6 +48,7 @@
* \param rxc received count
* \param txc transmitted count
* \param id mpi rank
+ * \param isFinished whether message is finished
* \param t smallest time
*/
LbtsMessage (uint32_t rxc, uint32_t txc, uint32_t id, bool isFinished, const Time& t)
@@ -70,14 +71,16 @@
*/
uint32_t GetTxCount ();
/**
- * \return receieved count
+ * \return received count
*/
uint32_t GetRxCount ();
/**
* \return id which corresponds to mpi rank
*/
uint32_t GetMyId ();
-
+ /**
+ * \return true if LBTS message is finished
+ */
bool IsFinished ();
private:
--- a/src/network/model/address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -169,7 +169,7 @@
buffer.Read (m_data, m_len);
}
-ATTRIBUTE_HELPER_CPP (Address);
+ATTRIBUTE_HELPER_CPP (Address); /// Macro to make help make class an ns-3 attribute
bool operator == (const Address &a, const Address &b)
--- a/src/network/model/address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/address.h Mon Nov 18 13:28:05 2013 +0100
@@ -224,7 +224,7 @@
* \brief hold objects of type ns3::Address
*/
-ATTRIBUTE_HELPER_HEADER (Address);
+ATTRIBUTE_HELPER_HEADER (Address); /// Macro to make help make class an ns-3 attribute
bool operator == (const Address &a, const Address &b);
bool operator != (const Address &a, const Address &b);
--- a/src/network/model/application.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/application.h Mon Nov 18 13:28:05 2013 +0100
@@ -123,11 +123,11 @@
virtual void DoDispose (void);
virtual void DoInitialize (void);
- Ptr<Node> m_node;
- Time m_startTime;
- Time m_stopTime;
- EventId m_startEvent;
- EventId m_stopEvent;
+ Ptr<Node> m_node; /// The node that this application is installed on
+ Time m_startTime; /// The simulation time that the appliacation will start
+ Time m_stopTime; /// The simulation time that the appliacation will end
+ EventId m_startEvent; /// The event that will fire at m_startTime to start the application
+ EventId m_stopEvent; /// The event that will fire at m_stopTime to end the application
};
} // namespace ns3
--- a/src/network/model/byte-tag-list.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/byte-tag-list.h Mon Nov 18 13:28:05 2013 +0100
@@ -68,24 +68,53 @@
class ByteTagList
{
public:
-
+ /*
+ * \brief An iterator for iterating through a byte tag list
+ *
+ * An iterator for iterating through a byte tag list
+ *
+ */
class Iterator
{
public:
+ /*
+ * \brief An item specifies an individual tag within a byte buffer
+ *
+ * An item specifies an individual tag within a byte buffer
+ *
+ */
struct Item
{
- TypeId tid;
- uint32_t size;
- int32_t start;
- int32_t end;
- TagBuffer buf;
- Item (TagBuffer buf);
+ TypeId tid; /// type of the tag
+ uint32_t size; /// size of tag data
+ int32_t start; /// offset to the start of the tag from the virtual byte buffer
+ int32_t end; /// offset to the end of the tag from the virtual byte buffer
+ TagBuffer buf; /// the data for the tag as generated by Tag::Serialize
+ Item (TagBuffer buf); /// constructs an item with the given TagBuffer
private:
friend class ByteTagList;
friend class ByteTagList::Iterator;
};
+
+ /*
+ * \brief Used to determine if the iterator is at the end of the byteTagList
+ *
+ * \returns true if there are more Items in the list
+ */
bool HasNext (void) const;
+
+ /*
+ * \brief Returns the next Item from the ByteTagList
+ *
+ * \returns the next Item in the ByteTagList
+ */
struct ByteTagList::Iterator::Item Next (void);
+
+ /*
+ * \brief Returns the offset from the start of the virtual byte buffer to the ByteTagList
+ *
+ * \returns offset to the start of this ByteTagList
+ */
uint32_t GetOffsetStart (void) const;
private:
friend class ByteTagList;
@@ -102,7 +131,26 @@
};
ByteTagList ();
+
+ /**
+ *
+ * Copy constructor, copies the data and increases reference count
+ *
+ * \param The ByteTagList to copy
+ * \returns The newly created ByteTagList
+ *
+ */
ByteTagList (const ByteTagList &o);
+
+ /**
+ *
+ * Assignment operator, deallocates current data and assigns
+ * value of passed in ByteTagList. Also increases reference count
+ *
+ * \param o reference to the ByteTagList to copy
+ * \returns reference to the assignee
+ *
+ */
ByteTagList &operator = (const ByteTagList &o);
~ByteTagList ();
@@ -125,6 +173,10 @@
*/
void Add (const ByteTagList &o);
+ /**
+ *
+ * Removes all of the tags from the ByteTagList
+ */
void RemoveAll (void);
/**
@@ -144,12 +196,20 @@
* Adjust the offsets stored internally by the adjustment delta and
* make sure that all offsets are smaller than appendOffset which represents
* the location where new bytes have been added to the byte buffer.
+ *
+ * \param adjustment value to change stored offsets by
+ * \param appendOffset maximum offset value
+ *
*/
void AddAtEnd (int32_t adjustment, int32_t appendOffset);
/**
* Adjust the offsets stored internally by the adjustment delta and
* make sure that all offsets are bigger than prependOffset which represents
* the location where new bytes have been added to the byte buffer.
+ *
+ * \param adjustment value to change stored offsets byte
+ * \param prependOffset minimum offset value
+ *
*/
void AddAtStart (int32_t adjustment, int32_t prependOffset);
--- a/src/network/model/nix-vector.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/nix-vector.cc Mon Nov 18 13:28:05 2013 +0100
@@ -27,7 +27,7 @@
namespace ns3 {
-typedef std::vector<uint32_t> NixBits_t;
+typedef std::vector<uint32_t> NixBits_t; ///typedef for the nixVector
NixVector::NixVector ()
: m_nixVector (0),
@@ -77,6 +77,7 @@
return Ptr<NixVector> (new NixVector (*this), false);
}
+/* For printing the nix vector */
std::ostream & operator << (std::ostream &os, const NixVector &nix)
{
nix.DumpNixVector (os);
--- a/src/network/model/nix-vector.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/model/nix-vector.h Mon Nov 18 13:28:05 2013 +0100
@@ -75,6 +75,8 @@
*/
NixVector (const NixVector &o);
/**
+ * \return a reference to the assignee
+ *
* \param o the NixVector to copy to a new NixVector using the
* equals operator
*/
--- a/src/network/utils/ascii-file.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/ascii-file.h Mon Nov 18 13:28:05 2013 +0100
@@ -30,10 +30,11 @@
namespace ns3 {
-/*
- * A class representing an ascii file.
+/**
+ * \brief A class representing an ascii file.
+ *
+ * This class represents an ascii file
*/
-
class AsciiFile
{
public:
--- a/src/network/utils/data-rate.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/data-rate.cc Mon Nov 18 13:28:05 2013 +0100
@@ -182,7 +182,7 @@
namespace ns3 {
-ATTRIBUTE_HELPER_CPP (DataRate);
+ATTRIBUTE_HELPER_CPP (DataRate); /// Macro to make help make data-rate an ns-3 attribute
DataRate::DataRate ()
: m_bps (0)
@@ -248,11 +248,13 @@
}
}
+/* For printing of data rate */
std::ostream &operator << (std::ostream &os, const DataRate &rate)
{
os << rate.GetBitRate () << "bps";
return os;
}
+/* Initialize a data rate from an input stream */
std::istream &operator >> (std::istream &is, DataRate &rate)
{
std::string value;
@@ -267,13 +269,26 @@
return is;
}
-
-
+/**
+ * \brief Multiply datarate by a time value
+ *
+ * Calculates the number of bits that have been transmitted over a period of time
+ * \param lhs rate
+ * \param rhs time
+ * \return the number of bits over the period of time
+ */
double operator* (const DataRate& lhs, const Time& rhs)
{
return rhs.GetSeconds ()*lhs.GetBitRate ();
}
-
+/**
+ * \brief Multiply time value by a data rate
+ *
+ * Calculates the number of bits that have been transmitted over a period of time
+ * \param lhs time
+ * \param rhs rate
+ * \return the number of bits over the period of time
+ */
double operator* (const Time& lhs, const DataRate& rhs)
{
return lhs.GetSeconds ()*rhs.GetBitRate ();
--- a/src/network/utils/data-rate.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/data-rate.h Mon Nov 18 13:28:05 2013 +0100
@@ -81,13 +81,66 @@
* \param bps bit/s value
*/
DataRate (uint64_t bps);
+ /**
+ * \brief String constructor
+ *
+ * Construct a data rate from a string. Many different unit strings are supported
+ * Supported unit strings:
+ * bps, b/s, Bps, B/s \n
+ * kbps, kb/s, Kbps, Kb/s, kBps, kB/s, KBps, KB/s, Kib/s, KiB/s \n
+ * Mbps, Mb/s, MBps, MB/s, Mib/s, MiB/s \n
+ * Gbps, Gb/s, GBps, GB/s, Gib/s, GiB/s \n
+ *
+ * Examples:
+ * "56kbps" = 56,000 bits/s \n
+ * "128 kb/s" = 128,000 bits/s \n
+ * "8Kib/s" = 1 KiB/s = 8192 bits/s \n
+ * "1kB/s" = 8000 bits/s
+ *
+ * \param rate string representing the desired rate
+ */
DataRate (std::string rate);
+ /**
+ * \return true if this rate is less than rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator < (const DataRate& rhs) const;
+
+ /**
+ * \return true if this rate is less than or equal to rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator <= (const DataRate& rhs) const;
+
+ /**
+ * \return true if this rate is greater than rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator > (const DataRate& rhs) const;
+
+ /**
+ * \return true if this rate is greather than or equal to rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator >= (const DataRate& rhs) const;
+
+ /**
+ * \return true if this rate is equal to rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator == (const DataRate& rhs) const;
+
+ /**
+ * \return true if this rate is not equal to rhs
+ *
+ * \param rhs the datarate to compare to this datarate
+ */
bool operator != (const DataRate& rhs) const;
/**
@@ -118,7 +171,8 @@
* \brief hold objects of type ns3::DataRate
*/
-ATTRIBUTE_HELPER_HEADER (DataRate);
+
+ATTRIBUTE_HELPER_HEADER (DataRate); /// Macro to make help make data-rate an ns-3 attribute
/**
* \param lhs
--- a/src/network/utils/error-model.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/error-model.h Mon Nov 18 13:28:05 2013 +0100
@@ -277,19 +277,19 @@
*/
double GetBurstRate (void) const;
/**
- * \param burstRate the error rate to be used by the model
+ * \param rate the error rate to be used by the model
*/
void SetBurstRate (double rate);
/**
- * \param ranVariable A random variable distribution to generate random variates
+ * \param ranVar A random variable distribution to generate random variates
*/
- void SetRandomVariable (Ptr<RandomVariableStream>);
+ void SetRandomVariable (Ptr<RandomVariableStream> ranvar);
/**
- * \param burstSize A random variable distribution to generate random burst size
+ * \param burstSz A random variable distribution to generate random burst size
*/
- void SetRandomBurstSize (Ptr<RandomVariableStream>);
+ void SetRandomBurstSize (Ptr<RandomVariableStream> burstSz);
/**
* Assign a fixed random variable stream number to the random variables
--- a/src/network/utils/flow-id-tag.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/flow-id-tag.h Mon Nov 18 13:28:05 2013 +0100
@@ -34,9 +34,27 @@
virtual void Deserialize (TagBuffer buf);
virtual void Print (std::ostream &os) const;
FlowIdTag ();
+
+ /**
+ * Constructs a FlowIdTag with the given flow id
+ *
+ * \param flowId Id to use for the tag
+ */
FlowIdTag (uint32_t flowId);
+ /**
+ * Sets the flow id for the tag
+ * \param flowId Id to assign to the tag
+ */
void SetFlowId (uint32_t flowId);
+ /**
+ * Gets the flow id for the tag
+ * \returns current flow id for this tag
+ */
uint32_t GetFlowId (void) const;
+ /**
+ * Uses a static variable to generate sequential flow id
+ * \returns flow id allocated
+ */
static uint32_t AllocateFlowId (void);
private:
uint32_t m_flowId;
--- a/src/network/utils/ipv4-address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/ipv4-address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -417,7 +417,7 @@
return !a.IsEqual (b);
}
-ATTRIBUTE_HELPER_CPP (Ipv4Address);
-ATTRIBUTE_HELPER_CPP (Ipv4Mask);
+ATTRIBUTE_HELPER_CPP (Ipv4Address); /// Macro to make help make class an ns-3 attribute
+ATTRIBUTE_HELPER_CPP (Ipv4Mask); /// Macro to make help make class an ns-3 attribute
} // namespace ns3
--- a/src/network/utils/ipv4-address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/ipv4-address.h Mon Nov 18 13:28:05 2013 +0100
@@ -286,8 +286,8 @@
* \brief hold objects of type ns3::Ipv4Mask
*/
-ATTRIBUTE_HELPER_HEADER (Ipv4Address);
-ATTRIBUTE_HELPER_HEADER (Ipv4Mask);
+ATTRIBUTE_HELPER_HEADER (Ipv4Address); /// Macro to make help make class an ns-3 attribute
+ATTRIBUTE_HELPER_HEADER (Ipv4Mask); /// Macro to make help make class an ns-3 attribute
std::ostream& operator<< (std::ostream& os, Ipv4Address const& address);
std::ostream& operator<< (std::ostream& os, Ipv4Mask const& mask);
--- a/src/network/utils/ipv6-address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/ipv6-address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -929,8 +929,8 @@
return lookuphash (buf, sizeof (buf), 0);
}
-ATTRIBUTE_HELPER_CPP (Ipv6Address);
-ATTRIBUTE_HELPER_CPP (Ipv6Prefix);
+ATTRIBUTE_HELPER_CPP (Ipv6Address); /// Macro to make help make class an ns-3 attribute
+ATTRIBUTE_HELPER_CPP (Ipv6Prefix); /// Macro to make help make class an ns-3 attribute
} /* namespace ns3 */
--- a/src/network/utils/ipv6-address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/ipv6-address.h Mon Nov 18 13:28:05 2013 +0100
@@ -510,13 +510,13 @@
* \class ns3::Ipv6AddressValue
* \brief Hold objects of type ns3::Ipv6Address
*/
-ATTRIBUTE_HELPER_HEADER (Ipv6Address);
+ATTRIBUTE_HELPER_HEADER (Ipv6Address); /// Macro to make help make class an ns-3 attribute
/**
* \class ns3::Ipv6PrefixValue
* \brief Hold objects of type ns3::Ipv6Prefix
*/
-ATTRIBUTE_HELPER_HEADER (Ipv6Prefix);
+ATTRIBUTE_HELPER_HEADER (Ipv6Prefix); /// Macro to make help make class an ns-3 attribute
/**
* \brief Stream insertion operator.
--- a/src/network/utils/mac16-address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac16-address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -30,7 +30,7 @@
namespace ns3 {
-ATTRIBUTE_HELPER_CPP (Mac16Address);
+ATTRIBUTE_HELPER_CPP (Mac16Address); /// Macro to make help make class an ns-3 attribute
#define ASCII_a (0x41)
#define ASCII_z (0x5a)
--- a/src/network/utils/mac16-address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac16-address.h Mon Nov 18 13:28:05 2013 +0100
@@ -80,6 +80,7 @@
static bool IsMatchingType (const Address &address);
/**
* Allocate a new Mac16Address.
+ * \returns newly allocated mac16Address
*/
static Mac16Address Allocate (void);
@@ -104,7 +105,7 @@
* \brief hold objects of type ns3::Mac16Address
*/
-ATTRIBUTE_HELPER_HEADER (Mac16Address);
+ATTRIBUTE_HELPER_HEADER (Mac16Address); /// Macro to make help make class an ns-3 attribute
inline bool operator == (const Mac16Address &a, const Mac16Address &b)
{
--- a/src/network/utils/mac48-address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac48-address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -29,7 +29,7 @@
namespace ns3 {
-ATTRIBUTE_HELPER_CPP (Mac48Address);
+ATTRIBUTE_HELPER_CPP (Mac48Address); /// Macro to make help make class an ns-3 attribute
#define ASCII_a (0x41)
#define ASCII_z (0x5a)
--- a/src/network/utils/mac48-address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac48-address.h Mon Nov 18 13:28:05 2013 +0100
@@ -84,6 +84,7 @@
static bool IsMatchingType (const Address &address);
/**
* Allocate a new Mac48Address.
+ * \returns newly allocated mac48Address
*/
static Mac48Address Allocate (void);
@@ -146,7 +147,7 @@
* \brief hold objects of type ns3::Mac48Address
*/
-ATTRIBUTE_HELPER_HEADER (Mac48Address);
+ATTRIBUTE_HELPER_HEADER (Mac48Address); /// Macro to make help make class an ns-3 attribute
inline bool operator == (const Mac48Address &a, const Mac48Address &b)
{
--- a/src/network/utils/mac64-address.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac64-address.cc Mon Nov 18 13:28:05 2013 +0100
@@ -29,7 +29,7 @@
namespace ns3 {
-ATTRIBUTE_HELPER_CPP (Mac64Address);
+ATTRIBUTE_HELPER_CPP (Mac64Address); /// Macro to make help make class an ns-3 attribute
#define ASCII_a (0x41)
#define ASCII_z (0x5a)
--- a/src/network/utils/mac64-address.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/mac64-address.h Mon Nov 18 13:28:05 2013 +0100
@@ -83,6 +83,7 @@
static bool IsMatchingType (const Address &address);
/**
* Allocate a new Mac64Address.
+ * \returns newly allocated mac64Address
*/
static Mac64Address Allocate (void);
private:
@@ -106,7 +107,7 @@
* \brief hold objects of type ns3::Mac64Address
*/
-ATTRIBUTE_HELPER_HEADER (Mac64Address);
+ATTRIBUTE_HELPER_HEADER (Mac64Address); /// Macro to make help make class an ns-3 attribute
inline bool operator == (const Mac64Address &a, const Mac64Address &b)
{
--- a/src/network/utils/packet-data-calculators.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/packet-data-calculators.h Mon Nov 18 13:28:05 2013 +0100
@@ -31,13 +31,30 @@
/**
* \ingroup stats
*
+ * A stat for counting packets
+ *
*/
class PacketCounterCalculator : public CounterCalculator<uint32_t> {
public:
PacketCounterCalculator();
virtual ~PacketCounterCalculator();
+ /**
+ * Increments the packet counter by one
+ *
+ * \param path not used in this method
+ * \param packet not used in this method
+ */
void PacketUpdate (std::string path, Ptr<const Packet> packet);
+
+ /**
+ * Increments the packet counter by one
+ *
+ * \param path not used in this method
+ * \param packet not used in this method
+ * \param realto not used in this method
+ */
+
void FrameUpdate (std::string path, Ptr<const Packet> packet,
Mac48Address realto);
@@ -51,14 +68,30 @@
/**
* \ingroup stats
*
+ * A stat for collecting packet size statistics: min, max and average
+ *
*/
class PacketSizeMinMaxAvgTotalCalculator :
public MinMaxAvgTotalCalculator<uint32_t> {
public:
PacketSizeMinMaxAvgTotalCalculator();
virtual ~PacketSizeMinMaxAvgTotalCalculator();
-
+
+ /**
+ * Increments the packet stats by the size of the packet
+ *
+ * \param path not used in this method
+ * \param packet packet size used to update stats
+ */
void PacketUpdate (std::string path, Ptr<const Packet> packet);
+
+ /**
+ * Increments the packet stats by the size of the packet
+ *
+ * \param path not used in this method
+ * \param packet packet size used to update stats
+ * \param realto not used in this method
+ */
void FrameUpdate (std::string path, Ptr<const Packet> packet,
Mac48Address realto);
--- a/src/network/utils/packetbb.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/packetbb.h Mon Nov 18 13:28:05 2013 +0100
@@ -55,8 +55,8 @@
class PbbTlvBlock
{
public:
- typedef std::list< Ptr<PbbTlv> >::iterator Iterator;
- typedef std::list< Ptr<PbbTlv> >::const_iterator ConstIterator;
+ typedef std::list< Ptr<PbbTlv> >::iterator Iterator; /// this is an iterator
+ typedef std::list< Ptr<PbbTlv> >::const_iterator ConstIterator; /// this is a const iterator
PbbTlvBlock (void);
~PbbTlvBlock (void);
@@ -192,7 +192,17 @@
*/
void Print (std::ostream &os, int level) const;
+ /**
+ * \brief Equality operator for PbbTlvBlock
+ * \param other PbbTlvBlock to compare this one to
+ * \returns true if the blocks are equal
+ */
bool operator== (const PbbTlvBlock &other) const;
+ /**
+ * \brief Inequality operator for PbbTlvBlock
+ * \param other PbbTlvBlock to compare this one to
+ * \returns true if the blocks are not equal
+ */
bool operator!= (const PbbTlvBlock &other) const;
private:
@@ -207,8 +217,8 @@
class PbbAddressTlvBlock
{
public:
- typedef std::list< Ptr<PbbAddressTlv> >::iterator Iterator;
- typedef std::list< Ptr<PbbAddressTlv> >::const_iterator ConstIterator;
+ typedef std::list< Ptr<PbbAddressTlv> >::iterator Iterator; /// This is a PbbAddressTlv iterator for PbbAddressTlvBlock
+ typedef std::list< Ptr<PbbAddressTlv> >::const_iterator ConstIterator; /// This is a const PbbAddressTlv iterator for PbbAddressTlvBlock
PbbAddressTlvBlock (void);
~PbbAddressTlvBlock (void);
@@ -346,7 +356,18 @@
*/
void Print (std::ostream &os, int level) const;
+ /**
+ * \brief Equality operator for PbbAddressTlvBlock
+ * \param other PbbAddressTlvBlock to compare to this one
+ * \returns true if PbbAddressTlvBlock are equal
+ */
bool operator== (const PbbAddressTlvBlock &other) const;
+
+ /**
+ * \brief Inequality operator for PbbAddressTlvBlock
+ * \param other PbbAddressTlvBlock to compare to this one
+ * \returns true if PbbAddressTlvBlock are not equal
+ */
bool operator!= (const PbbAddressTlvBlock &other) const;
private:
@@ -364,10 +385,10 @@
class PbbPacket : public SimpleRefCount<PbbPacket,Header>
{
public:
- typedef std::list< Ptr<PbbTlv> >::iterator TlvIterator;
- typedef std::list< Ptr<PbbTlv> >::const_iterator ConstTlvIterator;
- typedef std::list< Ptr<PbbMessage> >::iterator MessageIterator;
- typedef std::list< Ptr<PbbMessage> >::const_iterator ConstMessageIterator;
+ typedef std::list< Ptr<PbbTlv> >::iterator TlvIterator; /// This is a PbbTlv iterator for PbbPacket
+ typedef std::list< Ptr<PbbTlv> >::const_iterator ConstTlvIterator; /// This is a const PbbTlv iterator for PbbPacket
+ typedef std::list< Ptr<PbbMessage> >::iterator MessageIterator; /// This is a PbbMessageIterator for PbbPacket
+ typedef std::list< Ptr<PbbMessage> >::const_iterator ConstMessageIterator; /// This is a const PbbMessageIterator for PbbPacket
PbbPacket (void);
~PbbPacket (void);
@@ -627,7 +648,18 @@
*/
virtual void Print (std::ostream &os) const;
+ /**
+ * \brief Equality operator for PbbPacket
+ * \param other PbbPacket to compare to this one
+ * \returns true if PbbPacket are equal
+ */
bool operator== (const PbbPacket &other) const;
+
+ /**
+ * \brief Inequality operator for PbbPacket
+ * \param other PbbPacket to compare to this one
+ * \returns true if PbbPacket are not equal
+ */
bool operator!= (const PbbPacket &other) const;
protected:
@@ -652,10 +684,10 @@
class PbbMessage : public SimpleRefCount<PbbMessage>
{
public:
- typedef std::list< Ptr<PbbTlv> >::iterator TlvIterator;
- typedef std::list< Ptr<PbbTlv> >::const_iterator ConstTlvIterator;
- typedef std::list< Ptr<PbbAddressBlock> >::iterator AddressBlockIterator;
- typedef std::list< Ptr<PbbAddressBlock> >::const_iterator ConstAddressBlockIterator;
+ typedef std::list< Ptr<PbbTlv> >::iterator TlvIterator; /// This is a PbbTlv iterator for PbbMessage
+ typedef std::list< Ptr<PbbTlv> >::const_iterator ConstTlvIterator; /// This is a const PbbTlv iterator for PbbMessage
+ typedef std::list< Ptr<PbbAddressBlock> >::iterator AddressBlockIterator; /// This is a PbbAddressBlock iterator for PbbMessage
+ typedef std::list< Ptr<PbbAddressBlock> >::const_iterator ConstAddressBlockIterator; /// This is a const PbbAddressBlock iterator for PbbMessage
PbbMessage ();
virtual ~PbbMessage ();
@@ -1004,13 +1036,27 @@
*/
void Print (std::ostream &os, int level) const;
+ /**
+ * \brief Equality operator for PbbMessage
+ * \param other PbbMessage to compare to this one
+ * \returns true if PbbMessages are equal
+ */
bool operator== (const PbbMessage &other) const;
+ /**
+ * \brief Inequality operator for PbbMessage
+ * \param other PbbMessage to compare to this one
+ * \returns true if PbbMessages are not equal
+ */
bool operator!= (const PbbMessage &other) const;
-protected:
- /* PbbMessage size in bytes - 1.
+protected:
+ /**
+ * \brief Returns address length (IPV4 3 or IPV6 15)
*
- * IPv4 = 4 - 1 = 3, IPv6 = 16 - 1 = 15
+ * Returns message size in bytes - 1
+ * IPv4 = 4 - 1 = 3, IPv6 = 16 - 1 = 15
+ *
+ * \returns Address length (IPV4 3 or IPV6 15)
*/
virtual PbbAddressLength GetAddressLength (void) const = 0;
@@ -1051,6 +1097,14 @@
virtual ~PbbMessageIpv4 ();
protected:
+ /**
+ * \brief Returns address length (IPV4 3 or IPV6 15)
+ *
+ * Returns message size in bytes - 1
+ * IPv4 = 4 - 1 = 3, IPv6 = 16 - 1 = 15
+ *
+ * \returns Address length (IPV4 3 or IPV6 15)
+ */
virtual PbbAddressLength GetAddressLength (void) const;
virtual void SerializeOriginatorAddress (Buffer::Iterator &start) const;
@@ -1071,6 +1125,14 @@
virtual ~PbbMessageIpv6 ();
protected:
+ /**
+ * \brief Returns address length (IPV4 3 or IPV6 15)
+ *
+ * Returns message size in bytes - 1
+ * IPv4 = 4 - 1 = 3, IPv6 = 16 - 1 = 15
+ *
+ * \returns Address length (IPV4 3 or IPV6 15)
+ */
virtual PbbAddressLength GetAddressLength (void) const;
virtual void SerializeOriginatorAddress (Buffer::Iterator &start) const;
@@ -1089,14 +1151,14 @@
class PbbAddressBlock : public SimpleRefCount<PbbAddressBlock>
{
public:
- typedef std::list< Address >::iterator AddressIterator;
- typedef std::list< Address >::const_iterator ConstAddressIterator;
+ typedef std::list< Address >::iterator AddressIterator; /// this is an address iterator for PbbAddressBlock
+ typedef std::list< Address >::const_iterator ConstAddressIterator; /// this is an const address iterator for PbbAddressBlock
- typedef std::list<uint8_t>::iterator PrefixIterator;
- typedef std::list<uint8_t>::const_iterator ConstPrefixIterator;
+ typedef std::list<uint8_t>::iterator PrefixIterator; /// this is a prefix iterator for PbbAddressBlock
+ typedef std::list<uint8_t>::const_iterator ConstPrefixIterator; /// this is a const prefix iterator for PbbAddressBlock
- typedef PbbAddressTlvBlock::Iterator TlvIterator;
- typedef PbbAddressTlvBlock::ConstIterator ConstTlvIterator;
+ typedef PbbAddressTlvBlock::Iterator TlvIterator; /// this is a tlvblock iterator for PbbAddressBlock
+ typedef PbbAddressTlvBlock::ConstIterator ConstTlvIterator; /// this is a const tlvblock iterator for PbbAddressBlock
PbbAddressBlock ();
virtual ~PbbAddressBlock ();
@@ -1440,12 +1502,26 @@
*/
void Print (std::ostream &os, int level) const;
+ /**
+ * \brief Equality operator for PbbAddressBlock
+ * \param other PbbAddressBlock to compare to this one
+ * \returns true if PbbMessages are equal
+ */
bool operator== (const PbbAddressBlock &other) const;
+
+ /**
+ * \brief Inequality operator for PbbAddressBlock
+ * \param other PbbAddressBlock to compare to this one
+ * \returns true if PbbAddressBlock are not equal
+ */
bool operator!= (const PbbAddressBlock &other) const;
protected:
+ /**
+ * \brief Returns address length
+ * \returns Address length
+ */
virtual uint8_t GetAddressLength (void) const = 0;
-
virtual void SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const = 0;
virtual Address DeserializeAddress (uint8_t *buffer) const = 0;
virtual void PrintAddress (std::ostream &os, ConstAddressIterator iter) const = 0;
@@ -1473,8 +1549,11 @@
virtual ~PbbAddressBlockIpv4 ();
protected:
+ /**
+ * \brief Returns address length
+ * \returns Address length
+ */
virtual uint8_t GetAddressLength (void) const;
-
virtual void SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const;
virtual Address DeserializeAddress (uint8_t *buffer) const;
virtual void PrintAddress (std::ostream &os, ConstAddressIterator iter) const;
@@ -1492,8 +1571,11 @@
virtual ~PbbAddressBlockIpv6 ();
protected:
+ /**
+ * \brief Returns address length
+ * \returns Address length
+ */
virtual uint8_t GetAddressLength (void) const;
-
virtual void SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const;
virtual Address DeserializeAddress (uint8_t *buffer) const;
virtual void PrintAddress (std::ostream &os, ConstAddressIterator iter) const;
@@ -1620,7 +1702,18 @@
*/
void Print (std::ostream &os, int level) const;
+ /**
+ * \brief Equality operator for PbbTlv
+ * \param other PbbTlv to compare to this one
+ * \returns true if PbbTlv are equal
+ */
bool operator== (const PbbTlv &other) const;
+
+ /**
+ * \brief Inequality operator for PbbTlv
+ * \param other PbbTlv to compare to this one
+ * \returns true if PbbTlv are not equal
+ */
bool operator!= (const PbbTlv &other) const;
protected:
--- a/src/network/utils/pcap-file.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/pcap-file.h Mon Nov 18 13:28:05 2013 +0100
@@ -31,12 +31,14 @@
class Packet;
class Header;
-/*
+
+/**
+ * \brief A class representing a pcap file
+ *
* A class representing a pcap file. This allows easy creation, writing and
* reading of files composed of stored packets; which may be viewed using
* standard tools.
*/
-
class PcapFile
{
public:
--- a/src/network/utils/queue.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/queue.h Mon Nov 18 13:28:05 2013 +0100
@@ -156,7 +156,11 @@
virtual Ptr<const Packet> DoPeek (void) const = 0;
protected:
- // called by subclasses to notify parent of packet drops.
+ /**
+ * \brief Drop a packet
+ * \param packet packet that was dropped
+ * This method is called by subclasses to notify parent (this class) of packet drops.
+ */
void Drop (Ptr<Packet> packet);
private:
--- a/src/network/utils/red-queue.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/red-queue.h Mon Nov 18 13:28:05 2013 +0100
@@ -83,46 +83,43 @@
{
public:
static TypeId GetTypeId (void);
- /*
+ /**
* \brief RedQueue Constructor
*
* Create a RED queue
*/
RedQueue ();
- /*
+ /**
* \brief Destructor
*
* Destructor
*/
virtual ~RedQueue ();
- /*
+ /**
* \brief Stats
*
*/
typedef struct
- {
- // Early probability drops
- uint32_t unforcedDrop;
- // Forced drops, qavg > max threshold
- uint32_t forcedDrop;
- // Drops due to queue limits
- uint32_t qLimDrop;
+ {
+ uint32_t unforcedDrop; /// Early probability drops
+ uint32_t forcedDrop; /// Forced drops, qavg > max threshold
+ uint32_t qLimDrop; /// Drops due to queue limits
} Stats;
- /*
+ /**
* \brief Drop types
*
*/
enum
{
- DTYPE_NONE, // Ok, no drop
- DTYPE_FORCED, // A "forced" drop
- DTYPE_UNFORCED, // An "unforced" (random) drop
+ DTYPE_NONE, /// Ok, no drop
+ DTYPE_FORCED, /// A "forced" drop
+ DTYPE_UNFORCED, /// An "unforced" (random) drop
};
- /*
+ /**
* \brief Set the operating mode of this queue.
* Set operating mode
*
@@ -130,7 +127,7 @@
*/
void SetMode (RedQueue::QueueMode mode);
- /*
+ /**
* \brief Get the encapsulation mode of this queue.
* Get the encapsulation mode of this queue
*
@@ -138,21 +135,21 @@
*/
RedQueue::QueueMode GetMode (void);
- /*
+ /**
* \brief Get the current value of the queue in bytes or packets.
*
* \returns The queue size in bytes or packets.
*/
uint32_t GetQueueSize (void);
- /*
+ /**
* \brief Set the limit of the queue.
*
* \param lim The limit in bytes or packets.
*/
void SetQueueLimit (uint32_t lim);
- /*
+ /**
* \brief Set the thresh limits of RED.
*
* \param min Minimum thresh in bytes or packets.
@@ -160,7 +157,7 @@
*/
void SetTh (double minTh, double maxTh);
- /*
+ /**
* \brief Get the RED statistics after running.
*
* \returns The drop statistics.
--- a/src/network/utils/sequence-number.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/sequence-number.h Mon Nov 18 13:28:05 2013 +0100
@@ -64,19 +64,30 @@
: m_value (value)
{}
- // copy contructor
+ /**
+ * \brief Constructs a SequenceNumber from a copy
+ * \param value sequence number to copy
+ */
SequenceNumber (SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> const &value)
: m_value (value.m_value)
{}
- // assignment from a plain number
+ /**
+ * \brief Constructs a SequenceNumber from an assignment of given value
+ * \param value sequence number to copy
+ * \returns reference to the assignee
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE>& operator= (NUMERIC_TYPE value)
{
m_value = value;
return *this;
}
- // assignment from a sequence number
+ /**
+ * \brief Constructs a SequenceNumber from an assignment of another sequence number
+ * \param value sequence number to copy
+ * \returns reference to the assignee
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE>& operator= (SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> const &value)
{
m_value = value.m_value;
@@ -100,14 +111,20 @@
return m_value;
}
- // prefix ++
+ /**
+ * \brief Prefix increment operator
+ * \returns incremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator++ ()
{
m_value++;
return *this;
}
- // postfix ++
+ /**
+ * \brief Postfix increment operator
+ * \returns incremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator++ (int)
{
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> retval (m_value);
@@ -115,14 +132,20 @@
return retval;
}
- // prefix --
+ /**
+ * \brief Prefix decrement operator
+ * \returns decremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator-- ()
{
m_value--;
return *this;
}
- // postfix --
+ /**
+ * \brief Postfix decrement operator
+ * \returns incremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator-- (int)
{
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> retval (m_value);
@@ -130,33 +153,63 @@
return retval;
}
+ /**
+ * \brief Plus equals operator
+ * \param value value to add to sequence number
+ * \returns incremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE>& operator+= (SIGNED_TYPE value)
{
m_value += value;
return *this;
}
-
+
+ /**
+ * \brief Minus equals operator
+ * \param value value to subtract from sequence number
+ * \returns decremented sequence number
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE>& operator-= (SIGNED_TYPE value)
{
m_value -= value;
return *this;
}
+ /**
+ * \brief Operator defining addition of two sequence numbers
+ * \param other sequence number added to this
+ * \returns sequence number representing sum
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator + (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> (m_value + other.m_value);
}
+ /**
+ * \brief Addition operator for adding numeric value to sequence number
+ * \param delta value to add to sequence number
+ * \returns sequence number representing sum
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator + (SIGNED_TYPE delta) const
{
return SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> (m_value + delta);
}
+ /**
+ * \brief Subtraction operator for subtracting numeric value from sequence number
+ * \param delta value to subtract from sequence number
+ * \returns sequence number representing difference
+ */
SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> operator - (SIGNED_TYPE delta) const
{
return SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> (m_value - delta);
}
+ /**
+ * \brief Subtraction operator for subtracting sequence number from sequence number
+ * \param other sequence number to subtract from this sequence number
+ * \returns numeric value representing the difference
+ */
SIGNED_TYPE operator - (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
static const NUMERIC_TYPE maxValue = std::numeric_limits<NUMERIC_TYPE>::max ();
@@ -199,16 +252,18 @@
}
}
-
- // Here is the critical part, how the comparison is made taking into
- // account wrap-around. From RFC 3626:
- //
- // The sequence number S1 is said to be "greater than" the sequence
- // number S2 if:
- //
- // S1 > S2 AND S1 - S2 <= MAXVALUE/2 OR
- //
- // S2 > S1 AND S2 - S1 > MAXVALUE/2
+ /**
+ * Here is the critical part, how the comparison is made taking into
+ * account wrap-around. From RFC 3626:
+ *
+ * The sequence number S1 is said to be "greater than" the sequence
+ * number S2 if:
+ * S1 > S2 AND S1 - S2 <= MAXVALUE/2 OR
+ * S2 > S1 AND S2 - S1 > MAXVALUE/2
+ *
+ * \param other sequence number to compare to this one
+ * \returns true if this sequence number is greater than other
+ */
bool operator > (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
static const NUMERIC_TYPE halfMaxValue = std::numeric_limits<NUMERIC_TYPE>::max () / 2;
@@ -217,35 +272,71 @@
|| ((other.m_value > m_value) && (other.m_value - m_value) > halfMaxValue));
}
+ /**
+ * \brief Equality operator for comparing sequence number
+ * \param other sequence number to compare to this sequence number
+ * \returns true if the sequence numbers are equal
+ */
bool operator == (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return (m_value == other.m_value);
}
+ /**
+ * \brief Inequality operator for comparing sequence numbers
+ * \param other sequence number to compare to this sequence number
+ * \returns true if the sequence numbers are not equal
+ */
bool operator != (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return (m_value != other.m_value);
}
+ /**
+ * \brief Less than or equal operator for comparing sequence numbers
+ * \param other sequence number to compare to this sequence number
+ * \returns true if this sequence number is less than or equal to other
+ */
bool operator <= (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return (!this->operator> (other));
}
+ /**
+ * \brief Greater than or equal operator for comparing sequence numbers
+ * \param other sequence number to compare to this sequence number
+ * \returns true if this sequence number is greater than or equal to other
+ */
bool operator >= (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return (this->operator> (other) || this->operator== (other));
}
+ /**
+ * \brief Less than operator for comparing sequence numbers
+ * \param other sequence number to compare to this sequence number
+ * \returns true if this sequence number is less than other
+ */
bool operator < (const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &other) const
{
return !this->operator> (other) && m_value != other.m_value;
}
-
+ /**
+ * \brief For printing sequence number
+ * \param os output stream
+ * \param val sequence number to display
+ * \returns output stream os
+ */
template<typename NUMERIC_TYPE2, typename SIGNED_TYPE2>
friend std::ostream & operator<< (std::ostream& os, const SequenceNumber<NUMERIC_TYPE2, SIGNED_TYPE2> &val);
+ /**
+ * \brief For loading sequence number from input streams
+ * \param is input stream
+ * \param val sequence number to load
+ * \returns input stream is
+ */
template<typename NUMERIC_TYPE2, typename SIGNED_TYPE2>
friend std::istream & operator >> (std::istream &is, const SequenceNumber<NUMERIC_TYPE2, SIGNED_TYPE2> &val);
@@ -271,7 +362,6 @@
NUMERIC_TYPE m_value;
};
-
template<typename NUMERIC_TYPE, typename SIGNED_TYPE>
std::ostream &
operator<< (std::ostream& os, const SequenceNumber<NUMERIC_TYPE, SIGNED_TYPE> &val)
--- a/src/network/utils/simple-channel.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/simple-channel.h Mon Nov 18 13:28:05 2013 +0100
@@ -39,9 +39,26 @@
static TypeId GetTypeId (void);
SimpleChannel ();
+ /**
+ * A packet is sent by a net device. A receive event will be
+ * scheduled for all net device connected to the channel other
+ * than the net device who sent the packet
+ *
+ * \param p packet to be sent
+ * \param protocol protocol number
+ * \param to address to send packet to
+ * \param from address the packet is coming from
+ * \param sender netdevice who sent the packet
+ *
+ */
void Send (Ptr<Packet> p, uint16_t protocol, Mac48Address to, Mac48Address from,
Ptr<SimpleNetDevice> sender);
+ /**
+ * Attached a net device to the channel.
+ *
+ * \param device the device to attach to the channel
+ */
void Add (Ptr<SimpleNetDevice> device);
// inherited from ns3::Channel
--- a/src/network/utils/simple-net-device.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/network/utils/simple-net-device.h Mon Nov 18 13:28:05 2013 +0100
@@ -48,7 +48,26 @@
static TypeId GetTypeId (void);
SimpleNetDevice ();
+ /**
+ * Receive a packet from a connected SimpleChannel. The
+ * SimpleNetDevice receives packets from its connected channel
+ * and then forwards them by calling its rx callback method
+ *
+ * \param packet Packet received on the channel
+ * \param protocol protocol number
+ * \param to address packet should be sent to
+ * \param from address packet was sent from
+ */
void Receive (Ptr<Packet> packet, uint16_t protocol, Mac48Address to, Mac48Address from);
+
+ /**
+ *
+ * Attach a channel to this net device. This will be the
+ * channel the net device sends on
+ *
+ * \param channel channel to assign to this net device
+ *
+ */
void SetChannel (Ptr<SimpleChannel> channel);
/**
--- a/src/topology-read/model/inet-topology-reader.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/topology-read/model/inet-topology-reader.h Mon Nov 18 13:28:05 2013 +0100
@@ -70,6 +70,21 @@
*/
virtual NodeContainer Read (void);
+private:
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ */
+ InetTopologyReader (const InetTopologyReader&);
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ * \returns
+ */
+ InetTopologyReader& operator= (const InetTopologyReader&);
+
// end class InetTopologyReader
};
--- a/src/topology-read/model/orbis-topology-reader.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/topology-read/model/orbis-topology-reader.h Mon Nov 18 13:28:05 2013 +0100
@@ -65,6 +65,22 @@
*/
virtual NodeContainer Read (void);
+private:
+private:
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ */
+ OrbisTopologyReader (const OrbisTopologyReader&);
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ * \returns
+ */
+ OrbisTopologyReader& operator= (const OrbisTopologyReader&);
+
// end class OrbisTopologyReader
};
--- a/src/topology-read/model/rocketfuel-topology-reader.cc Mon Nov 18 13:08:17 2013 +0100
+++ b/src/topology-read/model/rocketfuel-topology-reader.cc Mon Nov 18 13:28:05 2013 +0100
@@ -78,6 +78,18 @@
#define ROCKETFUEL_WEIGHTS_LINE \
START "([^ \t]+)" SPACE "([^ \t]+)" SPACE "([0-9.]+)" MAYSPACE END
+static inline void
+PrintNodeInfo (std::string & uid, std::string & loc, bool dns, bool bb,
+ std::vector <std::string>::size_type neighListSize,
+ std::string & name, int radius)
+{
+ /* uid @loc [+] [bb] (num_neigh) [&ext] -> <nuid-1> <nuid-2> ... {-euid} ... =name[!] rn */
+ NS_LOG_INFO ("Load Node[" << uid << "]: location: " << loc << " dns: " << dns
+ << " bb: " << bb << " neighbors: " << neighListSize
+ << "(" << "%d" << ") externals: \"%s\"(%d) "
+ << "name: " << name << " radius: " << radius);
+}
+
NodeContainer
RocketfuelTopologyReader::GenerateFromMapsFile (int argc, char *argv[])
{
@@ -152,11 +164,7 @@
return nodes;
}
- /* uid @loc [+] [bb] (num_neigh) [&ext] -> <nuid-1> <nuid-2> ... {-euid} ... =name[!] rn */
- NS_LOG_INFO ("Load Node[" << uid << "]: location: " << loc << " dns: " << dns
- << " bb: " << bb << " neighbors: " << int(neigh_list.size ())
- << "(" << "%d" << ") externals: \"%s\"(%d) "
- << "name: " << name << " radius: " << radius);
+ PrintNodeInfo (uid, loc, dns, bb, neigh_list.size (), name, radius);
// Create node and link
if (!uid.empty ())
--- a/src/topology-read/model/rocketfuel-topology-reader.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/topology-read/model/rocketfuel-topology-reader.h Mon Nov 18 13:28:05 2013 +0100
@@ -111,6 +111,22 @@
int m_nodesNumber; //!< number of nodes
std::map<std::string, Ptr<Node> > m_nodeMap; //!< map of the nodes (name, node)
+private:
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ */
+ RocketfuelTopologyReader (const RocketfuelTopologyReader&);
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ * \returns
+ */
+ RocketfuelTopologyReader& operator= (const RocketfuelTopologyReader&);
+
+
// end class RocketfuelTopologyReader
};
--- a/src/topology-read/model/topology-reader.h Mon Nov 18 13:08:17 2013 +0100
+++ b/src/topology-read/model/topology-reader.h Mon Nov 18 13:28:05 2013 +0100
@@ -202,6 +202,20 @@
private:
/**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ */
+ TopologyReader (const TopologyReader&);
+ /**
+ * \brief Copy constructor
+ *
+ * Defined and unimplemented to avoid misuse
+ * \returns
+ */
+ TopologyReader& operator= (const TopologyReader&);
+
+ /**
* the name of the input file
*/
std::string m_fileName;