Fix Doxygen comment formatting and typos

This commit is contained in:
Eduardo Almeida
2022-10-16 14:49:21 +01:00
parent 33ff238ccb
commit 85ade4e18d
122 changed files with 1112 additions and 878 deletions

View File

@@ -625,8 +625,9 @@ class RerrHeader : public Header
bool AddUnDestination(Ipv4Address dst, uint32_t seqNo);
/**
* \brief Delete pair (address + sequence number) from REER header, if the number of unreachable
* destinations > 0 \param un unreachable pair (address + sequence number) \return true on
* success
* destinations > 0
* \param un unreachable pair (address + sequence number)
* \return true on success
*/
bool RemoveUnDestination(std::pair<Ipv4Address, uint32_t>& un);
/// Clear header

View File

@@ -230,7 +230,7 @@ class RoutingProtocol : public Ipv4RoutingProtocol
uint32_t m_netDiameter; ///< Net diameter measures the maximum possible number of hops between
///< two nodes in the network
/**
* NodeTraversalTime is a conservative estimate of the average one hop traversal time for
* NodeTraversalTime is a conservative estimate of the average one hop traversal time for
* packets and should include queuing delays, interrupt processing times and transfer times.
*/
Time m_nodeTraversalTime;
@@ -328,9 +328,11 @@ class RoutingProtocol : public Ipv4RoutingProtocol
void ScheduleRreqRetry(Ipv4Address dst);
/**
* Set lifetime field in routing table entry to the maximum of existing lifetime and lt, if the
* entry exists \param addr - destination address \param lt - proposed time for lifetime field
* in routing table entry for destination with address addr. \return true if route to
* destination address addr exist
* entry exists
* \param addr destination address
* \param lt proposed time for lifetime field in routing table entry for destination with
* address addr.
* \return true if route to destination address addr exist
*/
bool UpdateRouteLifeTime(Ipv4Address addr, Time lt);
/**
@@ -451,17 +453,19 @@ class RoutingProtocol : public Ipv4RoutingProtocol
void SendRerrMessage(Ptr<Packet> packet, std::vector<Ipv4Address> precursors);
/**
* Send RERR message when no route to forward input packet. Unicast if there is reverse route to
* originating node, broadcast otherwise. \param dst - destination node IP address \param
* dstSeqNo - destination node sequence number \param origin - originating node IP address
* originating node, broadcast otherwise.
* \param dst destination node IP address
* \param dstSeqNo destination node sequence number
* \param origin originating node IP address
*/
void SendRerrWhenNoRouteToForward(Ipv4Address dst, uint32_t dstSeqNo, Ipv4Address origin);
/// @}
/**
* Send packet to destination scoket
* \param socket - destination node socket
* \param packet - packet to send
* \param destination - destination node IP address
* Send packet to destination socket
* \param socket destination node socket
* \param packet packet to send
* \param destination destination node IP address
*/
void SendTo(Ptr<Socket> socket, Ptr<Packet> packet, Ipv4Address destination);
@@ -487,7 +491,7 @@ class RoutingProtocol : public Ipv4RoutingProtocol
/**
* Mark link to neighbor node as unidirectional for blacklistTimeout
*
* \param neighbor the IP address of the neightbor node
* \param neighbor the IP address of the neighbor node
* \param blacklistTimeout the black list timeout time
*/
void AckTimerExpire(Ipv4Address neighbor, Time blacklistTimeout);

View File

@@ -210,7 +210,9 @@ class RequestQueue
/**
* Push entry in queue, if there is no entry with the same packet and destination address in
* queue. \param entry the queue entry \returns true if the entry is queued
* queue.
* \param entry the queue entry
* \returns true if the entry is queued
*/
bool Enqueue(QueueEntry& entry);
/**

View File

@@ -500,12 +500,12 @@ class RoutingTable
void GetListOfDestinationWithNextHop(Ipv4Address nextHop,
std::map<Ipv4Address, uint32_t>& unreachable);
/**
* Update routing entries with this destination as follows:
* 1. The destination sequence number of this routing entry, if it
* exists and is valid, is incremented.
* 2. The entry is invalidated by marking the route entry as invalid
* 3. The Lifetime field is updated to current time plus DELETE_PERIOD.
* \param unreachable routes to invalidate
* Update routing entries with this destination as follows:
* 1. The destination sequence number of this routing entry, if it
* exists and is valid, is incremented.
* 2. The entry is invalidated by marking the route entry as invalid
* 3. The Lifetime field is updated to current time plus DELETE_PERIOD.
* \param unreachable routes to invalidate
*/
void InvalidateRoutesWithDst(const std::map<Ipv4Address, uint32_t>& unreachable);
/**
@@ -523,9 +523,10 @@ class RoutingTable
/// Delete all outdated entries and invalidate valid entry if Lifetime is expired
void Purge();
/** Mark entry as unidirectional (e.g. add this neighbor to "blacklist" for blacklistTimeout
* period) \param neighbor - neighbor address link to which assumed to be unidirectional \param
* blacklistTimeout - time for which the neighboring node is put into the blacklist \return true
* on success
* period)
* \param neighbor neighbor address link to which assumed to be unidirectional
* \param blacklistTimeout time for which the neighboring node is put into the blacklist
* \return true on success
*/
bool MarkLinkAsUnidirectional(Ipv4Address neighbor, Time blacklistTimeout);
/**

View File

@@ -88,14 +88,13 @@ class BriteTopologyHelper
* generate brite seed file
*
* \param streamNumber the stream number to assign
*
*/
void AssignStreams(int64_t streamNumber);
/**
* Create NS3 topology using information generated from BRITE.
* Create NS3 topology using information generated from BRITE.
*
* \param stack Internet stack to assign to nodes in topology
* \param stack Internet stack to assign to nodes in topology
*/
void BuildBriteTopology(InternetStackHelper& stack);
@@ -105,7 +104,6 @@ class BriteTopologyHelper
*
* \param stack Internet stack to assign to nodes in topology.
* \param systemCount The number of MPI instances to be used in the simulation.
*
*/
void BuildBriteTopology(InternetStackHelper& stack, const uint32_t systemCount);
@@ -114,7 +112,6 @@ class BriteTopologyHelper
*
* \param asNum the AS number
* \returns the number of leaf nodes in the specified AS
*
*/
uint32_t GetNLeafNodesForAs(uint32_t asNum);
@@ -141,7 +138,6 @@ class BriteTopologyHelper
* \param asNum the AS number
* \param nodeNum the Node number
* \return the specified node
*
*/
Ptr<Node> GetNodeForAs(uint32_t asNum, uint32_t nodeNum);
@@ -163,6 +159,8 @@ class BriteTopologyHelper
uint32_t GetSystemNumberForAs(uint32_t asNum) const;
/**
* Assign IPv4 addresses.
*
* \param address an Ipv4AddressHelper which is used to install
* IPv4 addresses on all the node interfaces in
* the topology
@@ -170,6 +168,8 @@ class BriteTopologyHelper
void AssignIpv4Addresses(Ipv4AddressHelper& address);
/**
* Assign IPv6 addresses.
*
* \param address an Ipv6AddressHelper which is used to install
* IPv6 addresses on all the node interfaces in
* the topology

View File

@@ -70,20 +70,24 @@ class MobilityBuildingInfo : public Object
* \brief Mark this MobilityBuildingInfo instance as indoor
*
* \param building the building into which the MobilityBuildingInfo instance is located
* \param nfloor the floor number 1...nFloors at which the MobilityBuildingInfo instance is
* located \param nroomx the X room number 1...nRoomsX at which the MobilityBuildingInfo
* instance is located \param nroomy the Y room number 1...nRoomsY at which the
* MobilityBuildingInfo instance is located
* \param nfloor the floor number 1...nFloors at which the MobilityBuildingInfo instance
* is located
* \param nroomx the X room number 1...nRoomsX at which the MobilityBuildingInfo instance
* is located
* \param nroomy the Y room number 1...nRoomsY at which the MobilityBuildingInfo instance
* is located
*/
void SetIndoor(Ptr<Building> building, uint8_t nfloor, uint8_t nroomx, uint8_t nroomy);
/**
* \brief Mark this MobilityBuildingInfo instance as indoor
*
* \param nfloor the floor number 1...nFloors at which the MobilityBuildingInfo instance is
* located \param nroomx the X room number 1...nRoomsX at which the MobilityBuildingInfo
* instance is located \param nroomy the Y room number 1...nRoomsY at which the
* MobilityBuildingInfo instance is located
* \param nfloor the floor number 1...nFloors at which the MobilityBuildingInfo instance
* is located
* \param nroomx the X room number 1...nRoomsX at which the MobilityBuildingInfo instance
* is located
* \param nroomy the Y room number 1...nRoomsY at which the MobilityBuildingInfo instance
* is located
*/
void SetIndoor(uint8_t nfloor, uint8_t nroomx, uint8_t nroomy);

View File

@@ -94,16 +94,19 @@ class RandomWalk2dOutdoorMobilityModel : public MobilityModel
/**
* Check if there is a building between two positions (or if the nextPosition is inside a
* building). The code is taken from MmWave3gppBuildingsPropagationLossModel from the NYU/UNIPD
* ns-3 mmWave module \param currentPosition The current position of the node \param
* nextPosition The position to check \return a pair with a boolean (true if the line between
* the two position does not intersect building), and a pointer which is 0 if the boolean is
* true, or it points to the building which is intersected
* ns-3 mmWave module
* \param currentPosition The current position of the node
* \param nextPosition The position to check
* \return a pair with a boolean (true if the line between the two position does not intersect
* building), and a pointer which is 0 if the boolean is true, or it points to the building
* which is intersected
*/
std::pair<bool, Ptr<Building>> IsLineClearOfBuildings(Vector currentPosition,
Vector nextPosition) const;
/**
* Compute the intersecting point of the box represented by boundaries and the line between
* current and next Notice that we only consider a 2d plane \param current The current position
* current and next. Notice that we only consider a 2d plane.
* \param current The current position
* \param next The next position
* \param boundaries The boundaries of the building we will intersect
* \return a vector with the position of the intersection

View File

@@ -137,9 +137,10 @@ class Ipv4ClickRouting : public Ipv4RoutingProtocol
public:
/**
* \brief Allows the Click service methods, which reside outside Ipv4ClickRouting, to get the
* required Ipv4ClickRouting instances. \param simnode The Click simclick_node_t instance for
* which the Ipv4ClickRouting instance is required \return A Ptr to the required
* Ipv4ClickRouting instance
* required Ipv4ClickRouting instances.
* \param simnode The Click simclick_node_t instance for which the Ipv4ClickRouting instance is
* required
* \return A Ptr to the required Ipv4ClickRouting instance
*/
static Ptr<Ipv4ClickRouting> GetClickInstanceFromSimNode(simclick_node_t* simnode);

View File

@@ -57,10 +57,10 @@ void cell_data_function_col_0(GtkTreeViewColumn* col,
/**
* This is the callback called when the value of an attribute is changed
*
* \param cell the changed cell
* \param path_string the path
* \param new_text the updated text in the cell
* \param user_data user data
* \param cell the changed cell
* \param path_string the path
* \param new_text the updated text in the cell
* \param user_data user data
*/
void cell_edited_callback(GtkCellRendererText* cell,
gchar* path_string,
@@ -107,7 +107,7 @@ void exit_clicked_callback(GtkButton* button, gpointer user_data);
/**
* Exit the application
* \param widget a pointer to the widget
* \param event the event responsible for the aplication exit
* \param event the event responsible for the application exit
* \param user_data user data
* \returns true on clean exit
*/
@@ -125,7 +125,7 @@ gboolean clean_model_callback(GtkTreeModel* model,
GtkTreeIter* iter,
gpointer data);
// display functions used by default configurator
// display functions used by default configurator
/**
* This function writes data in the second column, this data is going to be editable
@@ -187,14 +187,14 @@ void save_clicked_attribute(GtkButton* button, gpointer user_data);
*/
void load_clicked_attribute(GtkButton* button, gpointer user_data);
/**
* This functions is called whenever there is a change in the value of an attribute
* If the input value is ok, it will be updated in the default value and in the
* GUI, otherwise, it won't be updated in both.
* This functions is called whenever there is a change in the value of an attribute
* If the input value is ok, it will be updated in the default value and in the
* GUI, otherwise, it won't be updated in both.
*
* \param cell the changed cell
* \param path_string the path
* \param new_text the updated text in the cell
* \param user_data user data
* \param cell the changed cell
* \param path_string the path
* \param new_text the updated text in the cell
* \param user_data user data
*/
void cell_edited_callback_config_default(GtkCellRendererText* cell,
gchar* path_string,

View File

@@ -339,10 +339,10 @@ class int64x64_t
*/
/**
* @{
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
*/
friend inline bool operator==(const int64x64_t& lhs, const int64x64_t& rhs)
@@ -364,25 +364,25 @@ class int64x64_t
{
lhs._v += rhs._v;
return lhs;
};
}
friend inline int64x64_t& operator-=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs._v -= rhs._v;
return lhs;
};
}
friend inline int64x64_t& operator*=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs.Mul(rhs);
return lhs;
};
}
friend inline int64x64_t& operator/=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs.Div(rhs);
return lhs;
};
}
/**@}*/
@@ -392,24 +392,24 @@ class int64x64_t
*/
/**
* @{
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
*/
friend inline int64x64_t operator+(const int64x64_t& lhs)
{
return lhs;
};
}
friend inline int64x64_t operator-(const int64x64_t& lhs)
{
return int64x64_t(-lhs._v);
};
}
friend inline int64x64_t operator!(const int64x64_t& lhs)
{
return int64x64_t(!lhs._v);
};
}
/**@}*/

View File

@@ -315,10 +315,10 @@ class int64x64_t
*/
/**
* @{
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
*/
friend inline bool operator==(const int64x64_t& lhs, const int64x64_t& rhs)
@@ -340,25 +340,25 @@ class int64x64_t
{
lhs._v = _cairo_int128_add(lhs._v, rhs._v);
return lhs;
};
}
friend inline int64x64_t& operator-=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs._v = _cairo_int128_sub(lhs._v, rhs._v);
return lhs;
};
}
friend inline int64x64_t& operator*=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs.Mul(rhs);
return lhs;
};
}
friend inline int64x64_t& operator/=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs.Div(rhs);
return lhs;
};
}
/** @} */
@@ -368,26 +368,26 @@ class int64x64_t
*/
/**
* @{
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
*/
friend inline int64x64_t operator+(const int64x64_t& lhs)
{
return lhs;
};
}
friend inline int64x64_t operator-(const int64x64_t& lhs)
{
int64x64_t tmp = lhs;
tmp._v = _cairo_int128_negate(tmp._v);
return tmp;
};
}
friend inline int64x64_t operator!(const int64x64_t& lhs)
{
return (lhs == int64x64_t()) ? int64x64_t(1, 0) : int64x64_t();
};
}
/** @} */

View File

@@ -316,10 +316,10 @@ class int64x64_t
*/
/*
* @{
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
* Arithmetic operator.
* \param [in] lhs Left hand argument
* \param [in] rhs Right hand argument
* \return The result of the operator.
*/
friend inline bool operator==(const int64x64_t& lhs, const int64x64_t& rhs)
@@ -341,25 +341,25 @@ class int64x64_t
{
lhs._v += rhs._v;
return lhs;
};
}
friend inline int64x64_t& operator-=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs._v -= rhs._v;
return lhs;
};
}
friend inline int64x64_t& operator*=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs._v *= rhs._v;
return lhs;
};
}
friend inline int64x64_t& operator/=(int64x64_t& lhs, const int64x64_t& rhs)
{
lhs._v /= rhs._v;
return lhs;
};
}
/**@}*/
@@ -369,24 +369,24 @@ class int64x64_t
*/
/*
* @{
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
* Unary operator.
* \param [in] lhs Left hand argument
* \return The result of the operator.
*/
friend inline int64x64_t operator+(const int64x64_t& lhs)
{
return lhs;
};
}
friend inline int64x64_t operator-(const int64x64_t& lhs)
{
return int64x64_t(-lhs._v);
};
}
friend inline int64x64_t operator!(const int64x64_t& lhs)
{
return int64x64_t(!lhs._v);
};
}
/**@}*/

View File

@@ -174,13 +174,13 @@ class Time
/**
* \name Numeric constructors
* Construct from a numeric value.
* Construct from a numeric value.
* @{
*/
/**
* Construct from a numeric value.
* The current time resolution will be assumed as the unit.
* \param [in] v The value.
* Construct from a numeric value.
* The current time resolution will be assumed as the unit.
* \param [in] v The value.
*/
explicit inline Time(double v)
: m_data(llround(v))
@@ -472,10 +472,10 @@ class Time
static enum Unit GetResolution();
/**
* Create a Time in the current unit.
* Create a Time in the current unit.
*
* \param [in] value The value of the new Time.
* \return A Time with \pname{value} in the current time unit.
* \param [in] value The value of the new Time.
* \return A Time with \pname{value} in the current time unit.
*/
inline static Time From(const int64x64_t& value)
{
@@ -489,11 +489,11 @@ class Time
* @{
*/
/**
* Create a Time equal to \pname{value} in unit \c unit
* Create a Time equal to \pname{value} in unit \c unit
*
* \param [in] value The new Time value, expressed in \c unit
* \param [in] unit The unit of \pname{value}
* \return The Time representing \pname{value} in \c unit
* \param [in] value The new Time value, expressed in \c unit
* \param [in] unit The unit of \pname{value}
* \return The Time representing \pname{value} in \c unit
*/
inline static Time FromInteger(uint64_t value, enum Unit unit)
{
@@ -540,10 +540,10 @@ class Time
* @{
*/
/**
* Get the Time value expressed in a particular unit.
* Get the Time value expressed in a particular unit.
*
* \param [in] unit The desired unit
* \return The Time expressed in \pname{unit}
* \param [in] unit The desired unit
* \return The Time expressed in \pname{unit}
*/
inline int64_t ToInteger(enum Unit unit) const
{
@@ -636,7 +636,7 @@ class Time
/**
* Get the current Resolution
*
* \return A pointer to the current Resolution
* \return A pointer to the current Resolution
*/
static inline struct Resolution* PeekResolution()
{
@@ -658,7 +658,7 @@ class Time
/**
* Set the default resolution
*
* \return The Resolution object for the default resolution.
* \return The Resolution object for the default resolution.
*/
static struct Resolution& SetDefaultNsResolution();
/**
@@ -1439,7 +1439,7 @@ MakeTimeChecker()
* \ingroup attribute_time
* Helper to make a Time checker with a lower bound.
*
* \param [in] min Minimum allowed value.
* \param [in] min Minimum allowed value.
* \return The AttributeChecker
*/
inline Ptr<const AttributeChecker>
@@ -1472,10 +1472,10 @@ class TimeWithUnit
Time::Unit m_unit; //!< The unit to use in output
/**
* Output streamer
* \param [in,out] os The stream.
* \param [in] timeU The Time with desired unit
* \returns The stream.
* Output streamer
* \param [in,out] os The stream.
* \param [in] timeU The Time with desired unit
* \returns The stream.
*/
friend std::ostream& operator<<(std::ostream& os, const TimeWithUnit& timeU);

View File

@@ -651,9 +651,11 @@ class ParetoRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a Pareto distribution with the specified scale, shape,
* and upper bound. \param [in] scale Mean parameter for the Pareto distribution. \param [in]
* shape Shape parameter for the Pareto distribution. \param [in] bound Upper bound on values
* returned. \return A floating point random value.
* and upper bound.
* \param [in] scale Mean parameter for the Pareto distribution.
* \param [in] shape Shape parameter for the Pareto distribution.
* \param [in] bound Upper bound on values returned.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -678,9 +680,11 @@ class ParetoRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Pareto distribution with the specified mean,
* shape, and upper bound. \param [in] scale Scale parameter for the Pareto distribution. \param
* [in] shape Shape parameter for the Pareto distribution. \param [in] bound Upper bound on
* values returned. \return A random unsigned integer value.
* shape, and upper bound.
* \param [in] scale Scale parameter for the Pareto distribution.
* \param [in] shape Shape parameter for the Pareto distribution.
* \param [in] bound Upper bound on values returned.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -705,7 +709,8 @@ class ParetoRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a Pareto distribution with the current mean, shape, and
* upper bound. \return A floating point random value.
* upper bound.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -739,7 +744,8 @@ class ParetoRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Pareto distribution with the current mean,
* shape, and upper bound. \return A random unsigned integer value.
* shape, and upper bound.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -865,9 +871,11 @@ class WeibullRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a Weibull distribution with the specified scale, shape,
* and upper bound. \param [in] scale Scale parameter for the Weibull distribution. \param [in]
* shape Shape parameter for the Weibull distribution. \param [in] bound Upper bound on values
* returned. \return A floating point random value.
* and upper bound.
* \param [in] scale Scale parameter for the Weibull distribution.
* \param [in] shape Shape parameter for the Weibull distribution.
* \param [in] bound Upper bound on values returned.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -891,9 +899,11 @@ class WeibullRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Weibull distribution with the specified
* scale, shape, and upper bound. \param [in] scale Scale parameter for the Weibull
* distribution. \param [in] shape Shape parameter for the Weibull distribution. \param [in]
* bound Upper bound on values returned. \return A random unsigned integer value.
* scale, shape, and upper bound.
* \param [in] scale Scale parameter for the Weibull distribution.
* \param [in] shape Shape parameter for the Weibull distribution.
* \param [in] bound Upper bound on values returned.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -917,7 +927,8 @@ class WeibullRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a Weibull distribution with the current scale, shape, and
* upper bound. \return A floating point random value.
* upper bound.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -946,7 +957,8 @@ class WeibullRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Weibull distribution with the current scale,
* shape, and upper bound. \return A random unsigned integer value.
* shape, and upper bound.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -1051,8 +1063,10 @@ class NormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a normal distribution with the specified mean, variance,
* and bound. \param [in] mean Mean value for the normal distribution. \param [in] variance
* Variance value for the normal distribution. \param [in] bound Bound on values returned.
* and bound.
* \param [in] mean Mean value for the normal distribution.
* \param [in] variance Variance value for the normal distribution.
* \param [in] bound Bound on values returned.
* \return A floating point random value.
*
* Note that antithetic values are being generated if m_isAntithetic
@@ -1091,9 +1105,11 @@ class NormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a normal distribution with the specified mean,
* variance, and bound. \param [in] mean Mean value for the normal distribution. \param [in]
* variance Variance value for the normal distribution. \param [in] bound Bound on values
* returned. \return A random unsigned integer value.
* variance, and bound.
* \param [in] mean Mean value for the normal distribution.
* \param [in] variance Variance value for the normal distribution.
* \param [in] bound Bound on values returned.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1129,7 +1145,8 @@ class NormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a normal distribution with the current mean, variance,
* and bound. \return A floating point random value.
* and bound.
* \return A floating point random value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1170,7 +1187,8 @@ class NormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a normal distribution with the current mean,
* variance, and bound. \return A random unsigned integer value.
* variance, and bound.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1296,8 +1314,10 @@ class LogNormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a log-normal distribution with the specified mu and
* sigma. \param [in] mu Mu value for the log-normal distribution. \param [in] sigma Sigma value
* for the log-normal distribution. \return A floating point random value.
* sigma.
* \param [in] mu Mu value for the log-normal distribution.
* \param [in] sigma Sigma value for the log-normal distribution.
* \return A floating point random value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1331,8 +1351,10 @@ class LogNormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a log-normal distribution with the specified mu
* and sigma. \param [in] mu Mu value for the log-normal distribution. \param [in] sigma Sigma
* value for the log-normal distribution. \return A random unsigned integer value.
* and sigma.
* \param [in] mu Mu value for the log-normal distribution.
* \param [in] sigma Sigma value for the log-normal distribution.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1405,7 +1427,8 @@ class LogNormalRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a log-normal distribution with the current mu
* and sigma. \return A random unsigned integer value.
* and sigma.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u1\f$ and \f$u2\f$ are uniform variables
@@ -1521,8 +1544,10 @@ class GammaRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a gamma distribution with the specified alpha
* and beta. \param [in] alpha Alpha value for the gamma distribution. \param [in] beta Beta
* value for the gamma distribution. \return A random unsigned integer value.
* and beta.
* \param [in] alpha Alpha value for the gamma distribution.
* \param [in] beta Beta value for the gamma distribution.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]
@@ -1553,7 +1578,8 @@ class GammaRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a gamma distribution with the current alpha and
* beta. \return A random unsigned integer value.
* beta.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]
@@ -1567,8 +1593,10 @@ class GammaRandomVariable : public RandomVariableStream
private:
/**
* \brief Returns a random double from a normal distribution with the specified mean, variance,
* and bound. \param [in] mean Mean value for the normal distribution. \param [in] variance
* Variance value for the normal distribution. \param [in] bound Bound on values returned.
* and bound.
* \param [in] mean Mean value for the normal distribution.
* \param [in] variance Variance value for the normal distribution.
* \param [in] bound Bound on values returned.
* \return A floating point random value.
*
* Note that antithetic values are being generated if m_isAntithetic
@@ -1698,8 +1726,10 @@ class ErlangRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from an Erlang distribution with the specified k and
* lambda. \param [in] k K value for the Erlang distribution. \param [in] lambda Lambda value
* for the Erlang distribution. \return A random unsigned integer value.
* lambda.
* \param [in] k K value for the Erlang distribution.
* \param [in] lambda Lambda value for the Erlang distribution.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]
@@ -1730,7 +1760,8 @@ class ErlangRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from an Erlang distribution with the current k and
* lambda. \return A random unsigned integer value.
* lambda.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]
@@ -1744,8 +1775,10 @@ class ErlangRandomVariable : public RandomVariableStream
private:
/**
* \brief Returns a random double from an exponential distribution with the specified mean and
* upper bound. \param [in] mean Mean value of the random variables. \param [in] bound Upper
* bound on values returned. \return A floating point random value.
* upper bound.
* \param [in] mean Mean value of the random variables.
* \param [in] bound Upper bound on values returned.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -1838,8 +1871,11 @@ class TriangularRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a triangular distribution with the specified mean, min,
* and max. \param [in] mean Mean value for the triangular distribution. \param [in] min Low end
* of the range. \param [in] max High end of the range. \return A floating point random value.
* and max.
* \param [in] mean Mean value for the triangular distribution.
* \param [in] min Low end of the range.
* \param [in] max High end of the range.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -1875,9 +1911,11 @@ class TriangularRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a triangular distribution with the specified
* mean, min, and max. \param [in] mean Mean value for the triangular distribution. \param [in]
* min Low end of the range. \param [in] max High end of the range. \return A random unsigned
* integer value.
* mean, min, and max.
* \param [in] mean Mean value for the triangular distribution.
* \param [in] min Low end of the range.
* \param [in] max High end of the range.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -1913,7 +1951,8 @@ class TriangularRandomVariable : public RandomVariableStream
/**
* \brief Returns a random double from a triangular distribution with the current mean, min, and
* max. \return A floating point random value.
* max.
* \return A floating point random value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -1954,7 +1993,8 @@ class TriangularRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a triangular distribution with the current
* mean, min, and max. \return A random unsigned integer value.
* mean, min, and max.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if
* m_isAntithetic is equal to true. If \f$u\f$ is a uniform variable
@@ -2102,8 +2142,10 @@ class ZipfRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Zipf distribution with the specified n and
* alpha. \param [in] n N value for the Zipf distribution. \param [in] alpha Alpha value for the
* Zipf distribution. \return A random unsigned integer value.
* alpha.
* \param [in] n N value for the Zipf distribution.
* \param [in] alpha Alpha value for the Zipf distribution.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]
@@ -2134,7 +2176,8 @@ class ZipfRandomVariable : public RandomVariableStream
/**
* \brief Returns a random unsigned integer from a Zipf distribution with the current n and
* alpha. \return A random unsigned integer value.
* alpha.
* \return A random unsigned integer value.
*
* Note that antithetic values are being generated if m_isAntithetic
* is equal to true. If \f$u\f$ is a uniform variable over [0,1]

View File

@@ -157,8 +157,8 @@ class Scheduler : public Object
{
public:
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -1220,10 +1220,10 @@ TypeId::SetUid(uint16_t uid)
}
/**
* \brief Insertion operator for TypeId
* \param [in] os the output stream
* \param [in] tid the TypeId
* \returns the updated output stream.
* \brief Insertion operator for TypeId
* \param [in] os the output stream
* \param [in] tid the TypeId
* \returns the updated output stream.
*/
std::ostream&
operator<<(std::ostream& os, TypeId tid)
@@ -1233,10 +1233,10 @@ operator<<(std::ostream& os, TypeId tid)
}
/**
* \brief Extraction operator for TypeId
* \param [in] is the input stream
* \param [out] tid the TypeId value
* \returns the updated input stream.
* \brief Extraction operator for TypeId
* \param [in] is the input stream
* \param [out] tid the TypeId value
* \returns the updated input stream.
*/
std::istream&
operator>>(std::istream& is, TypeId& tid)

View File

@@ -206,7 +206,9 @@ class PacketQueue
/**
* Push entry in queue, if there is no entry with the same packet and destination address in
* queue. \param entry QueueEntry to compare \return true if successful
* queue.
* \param entry QueueEntry to compare
* \return true if successful
*/
bool Enqueue(QueueEntry& entry);
/**

View File

@@ -427,7 +427,9 @@ class DsrMaintainBuffer
}
/// Push entry in queue, if there is no entry with the same packet and destination address in
/// queue. \param entry Maintain Buffer Entry \return true on success adding the Entry.
/// queue.
/// \param entry Maintain Buffer Entry
/// \return true on success adding the Entry.
bool Enqueue(DsrMaintainBuffEntry& entry);
/// Return first found (the earliest) entry for given destination
/// \param [in] dst Entry destination

View File

@@ -295,7 +295,9 @@ class DsrPassiveBuffer : public Object
~DsrPassiveBuffer() override;
/// Push entry in queue, if there is no entry with the same packet and destination address in
/// queue. \param entry Buffer Entry \return true on success adding the Entry.
/// queue.
/// \param entry Buffer Entry
/// \return true on success adding the Entry.
bool Enqueue(DsrPassiveBuffEntry& entry);
/// Return first found (the earliest) entry for given destination
/// \param [in] dst Entry destination

View File

@@ -606,7 +606,9 @@ class DsrRouteCache : public Object
/**
* \brief Update route cache entry if it has been recently used and successfully delivered the
* data packet \param dst destination address of the route \return true in success
* data packet
* \param dst destination address of the route
* \return true in success
*/
bool UpdateRouteEntry(Ipv4Address dst);
/**
@@ -686,7 +688,7 @@ class DsrRouteCache : public Object
/// Structure to manage neighbor state
struct Neighbor
{
Ipv4Address m_neighborAddress; ///< neightbor address
Ipv4Address m_neighborAddress; ///< neighbor address
Mac48Address m_hardwareAddress; ///< neighbor MAC address
Time m_expireTime; ///< route expire time
bool close; ///< is route active
@@ -766,8 +768,8 @@ class DsrRouteCache : public Object
/**
* \brief Get callback to ProcessTxError, this callback is trying to use the wifi mac tx error
* header to notify a link layer drop event, however, it is not fully supported yet \return The
* callback to ProcessTxError
* header to notify a link layer drop event, however, it is not fully supported yet
* \return The callback to ProcessTxError
*/
Callback<void, const WifiMacHeader&> GetTxErrorCallback() const
{
@@ -864,8 +866,8 @@ class DsrRouteCache : public Object
public:
/**
* \brief Dijsktra algorithm to get the best route from m_netGraph and update the
* m_bestRoutesTable_link when current graph information has changed \param type The type of the
* cache
* m_bestRoutesTable_link when current graph information has changed
* \param type The type of the cache
*/
void SetCacheType(std::string type);
/**
@@ -881,14 +883,14 @@ class DsrRouteCache : public Object
*/
bool AddRoute_Link(DsrRouteCacheEntry::IP_VECTOR nodelist, Ipv4Address node);
/**
* \brief Rebuild the best route table
* \note Use MAXWEIGHT to represeant maximum weight, use the IPv4 broadcast
* address of 255.255.255.255 to represent a null preceding address
* \param source The source address used for computing the routes
* \brief Rebuild the best route table
* \note Use MAXWEIGHT to represent maximum weight, use the IPv4 broadcast
* address of 255.255.255.255 to represent a null preceding address
* \param source The source address used for computing the routes
*/
void RebuildBestRouteTable(Ipv4Address source);
/**
* \brief Purge from the cache if the stability time expired
* \brief Purge from the cache if the stability time expired
*/
void PurgeLinkNode();
/**
@@ -896,11 +898,12 @@ class DsrRouteCache : public Object
* by that node, the stability metric for each of the two endpoint nodes of that link is
* incremented by the amount of time since that link was last used. When a link is used in a
* route chosen for a packet originated or salvaged by this node, the link's lifetime is set to
* be at least UseExtends into the future \param rt cache entry
* be at least UseExtends into the future
* \param rt cache entry
*/
void UseExtends(DsrRouteCacheEntry::IP_VECTOR rt);
/**
* \brief Update the Net Graph for the link and node cache has changed
* \brief Update the Net Graph for the link and node cache has changed
*/
void UpdateNetGraph();
//---------------------------------------------------------------------------------------

View File

@@ -320,7 +320,10 @@ class DsrRouting : public IpL4Protocol
uint32_t GetPriority(DsrMessageType messageType);
/**
* \brief This function is responsible for sending error packets in case of break link to next
* hop \param unreachNode unreachable node \param destination address \param originalDst address
* hop
* \param unreachNode unreachable node
* \param destination address
* \param originalDst address
* \param salvage packet flag
* \param protocol number
*/
@@ -328,13 +331,16 @@ class DsrRouting : public IpL4Protocol
Ipv4Address destination,
Ipv4Address originalDst,
uint8_t salvage,
uint8_t protocol); /**
* \brief This function is responsible for forwarding
* error packets along the route \param rerr
* unreachable header \param sourceRoute source routing
* header \param nextHop IP address of next hop \param
* protocol number \param route IP route
*/
uint8_t protocol);
/**
* \brief This function is responsible for forwarding error packets along the route
* \param rerr unreachable header
* \param sourceRoute source routing header
* \param nextHop IP address of next hop
* \param protocol number
* \param route IP route
*/
void ForwardErrPacket(DsrOptionRerrUnreachHeader& rerr,
DsrOptionSRHeader& sourceRoute,
Ipv4Address nextHop,
@@ -392,7 +398,8 @@ class DsrRouting : public IpL4Protocol
bool SendRealDown(DsrNetworkQueueEntry& newEntry);
/**
* \brief This function is responsible for sending out data packets when have route, if no route
* found, it will cache the packet and send out route requests \param sourceRoute source route
* found, it will cache the packet and send out route requests
* \param sourceRoute source route
* \param nextHop next hop IP address
* \param protocol number
*/
@@ -448,22 +455,24 @@ class DsrRouting : public IpL4Protocol
Ipv4Address realDst);
/**
* \brief Cancel the network packet retransmission timer for a specific maintenance entry
* \param mb maintian byffer entry
* \param mb maintain buffer entry
*/
void CancelNetworkPacketTimer(DsrMaintainBuffEntry& mb);
/**
* \brief Cancel the passive packet retransmission timer for a specific maintenance entry
* \param mb maintian byffer entry
* \param mb maintain buffer entry
*/
void CancelPassivePacketTimer(DsrMaintainBuffEntry& mb);
/**
* \brief Cancel the link packet retransmission timer for a specific maintenance entry
* \param mb maintian byffer entry
* \param mb maintain buffer entry
*/
void CancelLinkPacketTimer(DsrMaintainBuffEntry& mb);
/**
* \brief Cancel the packet retransmission timer for a all maintenance entries with nextHop
* address \param nextHop next hop IP address \param protocol number
* address
* \param nextHop next hop IP address
* \param protocol number
*/
void CancelPacketTimerNextHop(Ipv4Address nextHop, uint8_t protocol);
/**
@@ -504,12 +513,16 @@ class DsrRouting : public IpL4Protocol
void LinkScheduleTimerExpire(DsrMaintainBuffEntry& mb, uint8_t protocol);
/**
* \brief This function deals with packet retransmission timer expire using network
* acknowledgment \param mb maintenance buffer entry \param protocol the protocol number
* acknowledgment
* \param mb maintenance buffer entry
* \param protocol the protocol number
*/
void NetworkScheduleTimerExpire(DsrMaintainBuffEntry& mb, uint8_t protocol);
/**
* \brief This function deals with packet retransmission timer expire using passive
* acknowledgment \param mb maintenance buffer entry \param protocol the protocol number
* acknowledgment
* \param mb maintenance buffer entry
* \param protocol the protocol number
*/
void PassiveScheduleTimerExpire(DsrMaintainBuffEntry& mb, uint8_t protocol);
/**

View File

@@ -341,15 +341,17 @@ class DsrRreqTable : public Object
void Invalidate();
/**
* \brief Verify if entry is unidirectional or not(e.g. add this neighbor to "blacklist" for
* blacklistTimeout period) \param neighbor neighbor address link to which assumed to be
* unidirectional \return true on success
* blacklistTimeout period)
* \param neighbor neighbor address link to which assumed to be unidirectional
* \return true on success
*/
BlackList* FindUnidirectional(Ipv4Address neighbor);
/**
* \brief Mark entry as unidirectional (e.g. add this neighbor to "blacklist" for
* blacklistTimeout period) \param neighbor - neighbor address link to which assumed to be
* unidirectional \param blacklistTimeout - time for which the neighboring node is put into the
* blacklist \return true on success
* blacklistTimeout period)
* \param neighbor neighbor address link to which assumed to be unidirectional
* \param blacklistTimeout time for which the neighboring node is put into the blacklist
* \return true on success
*/
bool MarkLinkAsUnidirectional(Ipv4Address neighbor, Time blacklistTimeout);
/**

View File

@@ -179,12 +179,12 @@ class LiIonEnergySource : public EnergySource
void CalculateRemainingEnergy();
/**
* \param current the actual discharge current value.
* \return the cell voltage
* Get the cell voltage in function of the discharge current.
* It consider different discharge curves for different discharge currents
* and the remaining energy of the cell.
*
* Get the cell voltage in function of the discharge current.
* It consider different discharge curves for different discharge currents
* and the remaining energy of the cell.
* \param current the actual discharge current value.
* \return the cell voltage
*/
double GetVoltage(double current) const;

View File

@@ -203,7 +203,8 @@ class Ipv6InterfaceContainer
/**
* \brief Set the default route for all the devices (except the router itself).
* Note that the route will be set to the link-local address of the node with the specified
* address. \param routerAddr the default router address
* address.
* \param routerAddr the default router address
*/
void SetDefaultRouteInAllNodes(Ipv6Address routerAddr);
@@ -217,7 +218,9 @@ class Ipv6InterfaceContainer
/**
* \brief Set the default route for the specified index.
* Note that the route will be set to the link-local address of the node with the specified
* address. \param i index \param routerAddr the default router address
* address.
* \param i index
* \param routerAddr the default router address
*/
void SetDefaultRoute(uint32_t i, Ipv6Address routerAddr);

View File

@@ -142,23 +142,26 @@ class NeighborCacheHelper
/**
* \brief Update neighbor caches when an address is removed from a Ipv4Interface with auto
* generated neighbor cache. \param interface the Ipv4Interface that address removed from.
* \param ifAddr the removed IPv4 interface address .
* generated neighbor cache.
* \param interface the Ipv4Interface that address removed from.
* \param ifAddr the removed IPv4 interface address.
*/
void UpdateCacheByIpv4AddressRemoved(const Ptr<Ipv4Interface> interface,
const Ipv4InterfaceAddress ifAddr) const;
/**
* \brief Update neighbor caches when an address is added to a Ipv4Interface with auto generated
* neighbor cache. \param interface the Ipv4Interface that address added to. \param ifAddr the
* added IPv4 interface address.
* neighbor cache.
* \param interface the Ipv4Interface that address added to.
* \param ifAddr the added IPv4 interface address.
*/
void UpdateCacheByIpv4AddressAdded(const Ptr<Ipv4Interface> interface,
const Ipv4InterfaceAddress ifAddr) const;
/**
* \brief Update neighbor caches when an address is removed from a Ipv6Interface with auto
* generated neighbor cache. \param interface the Ipv6Interface that address removed from.
* generated neighbor cache.
* \param interface the Ipv6Interface that address removed from.
* \param ifAddr the removed IPv6 interface address.
*/
void UpdateCacheByIpv6AddressRemoved(const Ptr<Ipv6Interface> interface,
@@ -166,8 +169,9 @@ class NeighborCacheHelper
/**
* \brief Update neighbor cache when an address is added to a Ipv6Interface with auto generated
* neighbor cache. \param interface the Ipv6Interface that address added to. \param ifAddr the
* added IPv6 interface address.
* neighbor cache.
* \param interface the Ipv6Interface that address added to.
* \param ifAddr the added IPv6 interface address.
*/
void UpdateCacheByIpv6AddressAdded(const Ptr<Ipv6Interface> interface,
const Ipv6InterfaceAddress ifAddr) const;

View File

@@ -39,8 +39,9 @@ class ArpHeader : public Header
* \brief Set the ARP request parameters
* \param sourceHardwareAddress the source hardware address
* \param sourceProtocolAddress the source IP address
* \param destinationHardwareAddress the destination hardware address (usually the broadcast
* address) \param destinationProtocolAddress the destination IP address
* \param destinationHardwareAddress the destination hardware address (usually the
* broadcast address)
* \param destinationProtocolAddress the destination IP address
*/
void SetRequest(Address sourceHardwareAddress,
Ipv4Address sourceProtocolAddress,
@@ -50,8 +51,9 @@ class ArpHeader : public Header
* \brief Set the ARP reply parameters
* \param sourceHardwareAddress the source hardware address
* \param sourceProtocolAddress the source IP address
* \param destinationHardwareAddress the destination hardware address (usually the broadcast
* address) \param destinationProtocolAddress the destination IP address
* \param destinationHardwareAddress the destination hardware address (usually the
* broadcast address)
* \param destinationProtocolAddress the destination IP address
*/
void SetReply(Address sourceHardwareAddress,
Ipv4Address sourceProtocolAddress,

View File

@@ -305,7 +305,8 @@ class Ipv6ExtensionFragment : public Ipv6Extension
* \param packet the packet.
* \param ipv6Header the IPv6 header.
* \param fragmentSize the maximal size of the fragment (unfragmentable part + fragmentation
* header + fragmentable part). \param listFragments the list of fragments.
* header + fragmentable part).
* \param listFragments the list of fragments.
*/
void GetFragments(Ptr<Packet> packet,
Ipv6Header ipv6Header,

View File

@@ -171,9 +171,9 @@ class Ipv6RoutingProtocol : public Object
*
* Protocols are expected to implement this method to be notified whenever
* a new address is removed from an interface. Typically used to remove the 'network route' of
* an interface. Can be invoked on an up or down interface. \param interface the index of the
* interface we are being notified about \param address a new address being added to an
* interface
* an interface. Can be invoked on an up or down interface.
* \param interface the index of the interface we are being notified about
* \param address a new address being added to an interface
*/
virtual void NotifyRemoveAddress(uint32_t interface, Ipv6InterfaceAddress address) = 0;

View File

@@ -203,9 +203,9 @@ class LrWpanCsmaCa : public Object
*/
void DeferCsmaTimeout();
/**
* IEEE 802.15.4-2006 section 6.2.2.2
* PLME-CCA.confirm status
* @param status TRX_OFF, BUSY or IDLE
* IEEE 802.15.4-2006 section 6.2.2.2
* PLME-CCA.confirm status
* \param status TRX_OFF, BUSY or IDLE
*
* When Phy has completed CCA, it calls back here which in turn execute the final steps
* of the CSMA-CA algorithm.
@@ -260,8 +260,8 @@ class LrWpanCsmaCa : public Object
private:
void DoDispose() override;
/**
* \brief Get the time left in the CAP portion of the Outgoing or Incoming superframe.
* \return the time left in the CAP
* \brief Get the time left in the CAP portion of the Outgoing or Incoming superframe.
* \return the time left in the CAP
*/
Time GetTimeLeftInCap();
/**

View File

@@ -135,7 +135,8 @@ class SuperframeField
/**
* Serialize the entire superframe specification field.
* \param i an iterator which points to where the superframe specification field should be
* written. \return an iterator.
* written.
* \return an iterator.
*/
Buffer::Iterator Serialize(Buffer::Iterator i) const;
/**
@@ -177,7 +178,7 @@ class GtsFields
GtsFields();
/**
* Get the GTS Specification Field from the GTS Fields
* \return The GTS Spcecification Field
* \return The GTS Specification Field
*/
uint8_t GetGtsSpecField() const;
/**
@@ -196,8 +197,8 @@ class GtsFields
*/
void SetGtsDirectionField(uint8_t gtsDir);
/**
* Get the GTS Specification Permit. TRUE if coordinator is accepting GTS requests.
* \return True if the coordinator is accepting GTS request.
* Get the GTS Specification Permit. TRUE if coordinator is accepting GTS requests.
* \return True if the coordinator is accepting GTS request.
*/
bool GetGtsPermit() const;
/**
@@ -208,7 +209,8 @@ class GtsFields
/**
* Serialize the entire GTS fields.
* \param i an iterator which points to where the superframe specification field should be
* written. \return an iterator.
* written.
* \return an iterator.
*/
Buffer::Iterator Serialize(Buffer::Iterator i) const;
/**
@@ -292,7 +294,8 @@ class PendingAddrFields
uint8_t GetNumShortAddr() const;
/**
* Get the number of Extended Pending Address indicated in the Pending Address Specification
* Field. \return The number Short Pending Address.
* Field.
* \return The number Short Pending Address.
*/
uint8_t GetNumExtAddr() const;
@@ -359,8 +362,9 @@ class CapabilityField
uint32_t GetSerializedSize() const;
/**
* Serialize the entire Capability Information Field.
* \param i an iterator which points to where the Capability information field should be
* written. \return an iterator.
* \param i an iterator which points to where the Capability information field
* should be written.
* \return an iterator.
*/
Buffer::Iterator Serialize(Buffer::Iterator i) const;
/**
@@ -371,8 +375,9 @@ class CapabilityField
Buffer::Iterator Deserialize(Buffer::Iterator i);
/**
* True if the device type is a Full Functional Device (FFD) false if is a Reduced Functional
* Device (RFD). \return True if the device type is a Full Functional Device (FFD) false if is a
* Reduced Functional Device (RFD).
* Device (RFD).
* \return True if the device type is a Full Functional Device (FFD) false if is a Reduced
* Functional Device (RFD).
*/
bool IsDeviceTypeFfd() const;
/**
@@ -388,14 +393,16 @@ class CapabilityField
bool IsReceiverOnWhenIdle() const;
/**
* True if the device is capable of sending and receiving cryptographically protected MAC
* frames. \return True if the device is capable of sending and receiving cryptographically
* protected MAC frames.
* frames.
* \return True if the device is capable of sending and receiving cryptographically protected
* MAC frames.
*/
bool IsSecurityCapability() const;
/**
* True if the device wishes the coordinator to allocate a short address as result of the
* association procedure. \return True if the device wishes the coordinator to allocate a short
* address as result of the association procedure.
* association procedure.
* \return True if the device wishes the coordinator to allocate a short address as result of
* the association procedure.
*/
bool IsShortAddrAllocOn() const;
/**

View File

@@ -155,7 +155,8 @@ class CommandPayloadHeader : public Header
void SetCommandFrameType(MacCommand macCmd);
/**
* Set the Capability Information Field to the command payload header (Association Request
* Command). \param cap The capability Information field
* Command).
* \param cap The capability Information field
*/
void SetCapabilityField(CapabilityField cap);
/**
@@ -185,14 +186,15 @@ class CommandPayloadHeader : public Header
MacCommand GetCommandFrameType() const;
/**
* Get the Capability Information Field from the command payload header. (Association Request
* Command) \return The Capability Information Field
* Command)
* \return The Capability Information Field
*/
CapabilityField GetCapabilityField() const;
private:
MacCommand m_cmdFrameId; //!< The command Frame Identifier
CapabilityField
m_capabilityInfo; //!< Capability Information Field (Association Request Command)
m_capabilityInfo; //!< Capability Information Field (Association Request Command)
Mac16Address m_shortAddr; //!< Contains the short address assigned by the coordinator
//!< (Association Response Command) See IEEE 802.15.4-2011 5.3.2.2.
AssocStatus m_assocStatus; //!< Association Status (Association Response Command)

View File

@@ -819,84 +819,84 @@ class LrWpanMac : public Object
uint16_t GetPanId() const;
/**
* Get the coordinator short address currently associated to this device.
* Get the coordinator short address currently associated to this device.
*
* \return The coordinator short address
* \return The coordinator short address
*/
Mac16Address GetCoordShortAddress() const;
/**
* Get the coordinator extended address currently associated to this device.
* Get the coordinator extended address currently associated to this device.
*
* \return The coordinator extended address
* \return The coordinator extended address
*/
Mac64Address GetCoordExtAddress() const;
/**
* IEEE 802.15.4-2006, section 7.1.1.1
* MCPS-DATA.request
* Request to transfer a MSDU.
* IEEE 802.15.4-2006, section 7.1.1.1
* MCPS-DATA.request
* Request to transfer a MSDU.
*
* \param params the request parameters
* \param p the packet to be transmitted
* \param params the request parameters
* \param p the packet to be transmitted
*/
void McpsDataRequest(McpsDataRequestParams params, Ptr<Packet> p);
/**
* IEEE 802.15.4-2006, section 7.1.14.1
* MLME-START.request
* Request to allow a PAN coordinator to initiate
* a new PAN or beginning a new superframe configuration.
* IEEE 802.15.4-2006, section 7.1.14.1
* MLME-START.request
* Request to allow a PAN coordinator to initiate
* a new PAN or beginning a new superframe configuration.
*
* \param params the request parameters
* \param params the request parameters
*/
void MlmeStartRequest(MlmeStartRequestParams params);
/**
* IEEE 802.15.4-2011, section 6.2.10.1
* MLME-SCAN.request
* Request primitive used to initiate a channel scan over a given list of channels.
* IEEE 802.15.4-2011, section 6.2.10.1
* MLME-SCAN.request
* Request primitive used to initiate a channel scan over a given list of channels.
*
* \param params the scan request parameters
* \param params the scan request parameters
*/
void MlmeScanRequest(MlmeScanRequestParams params);
/**
* IEEE 802.15.4-2011, section 6.2.2.1
* MLME-ASSOCIATE.request
* Request primitive used by a device to request an association with
* a coordinator.
* IEEE 802.15.4-2011, section 6.2.2.1
* MLME-ASSOCIATE.request
* Request primitive used by a device to request an association with
* a coordinator.
*
* \param params the request parameters
* \param params the request parameters
*/
void MlmeAssociateRequest(MlmeAssociateRequestParams params);
/**
* IEEE 802.15.4-2011, section 6.2.2.3
* MLME-ASSOCIATE.response
* Primitive used to initiate a response to an MLME-ASSOCIATE.indication
* primitive.
* IEEE 802.15.4-2011, section 6.2.2.3
* MLME-ASSOCIATE.response
* Primitive used to initiate a response to an MLME-ASSOCIATE.indication
* primitive.
*
* \param params the associate response parameters
* \param params the associate response parameters
*/
void MlmeAssociateResponse(MlmeAssociateResponseParams params);
/**
* IEEE 802.15.4-2011, section 6.2.13.1
* MLME-SYNC.request
* Request to synchronize with the coordinator by acquiring and,
* if specified, tracking beacons.
* IEEE 802.15.4-2011, section 6.2.13.1
* MLME-SYNC.request
* Request to synchronize with the coordinator by acquiring and,
* if specified, tracking beacons.
*
* \param params the request parameters
* \param params the request parameters
*/
void MlmeSyncRequest(MlmeSyncRequestParams params);
/**
* IEEE 802.15.4-2011, section 6.2.14.2
* MLME-POLL.request
* Prompts the device to request data from the coordinator.
* IEEE 802.15.4-2011, section 6.2.14.2
* MLME-POLL.request
* Prompts the device to request data from the coordinator.
*
* \param params the request parameters
* \param params the request parameters
*/
void MlmePollRequest(MlmePollRequestParams params);
@@ -1014,64 +1014,64 @@ class LrWpanMac : public Object
// interfaces between MAC and PHY
/**
* IEEE 802.15.4-2006 section 6.2.1.3
* PD-DATA.indication
* Indicates the transfer of an MPDU from PHY to MAC (receiving)
* @param psduLength number of bytes in the PSDU
* @param p the packet to be transmitted
* @param lqi Link quality (LQI) value measured during reception of the PPDU
* IEEE 802.15.4-2006 section 6.2.1.3
* PD-DATA.indication
* Indicates the transfer of an MPDU from PHY to MAC (receiving)
* \param psduLength number of bytes in the PSDU
* \param p the packet to be transmitted
* \param lqi Link quality (LQI) value measured during reception of the PPDU
*/
void PdDataIndication(uint32_t psduLength, Ptr<Packet> p, uint8_t lqi);
/**
* IEEE 802.15.4-2006 section 6.2.1.2
* Confirm the end of transmission of an MPDU to MAC
* @param status to report to MAC
* PHY PD-DATA.confirm status
* IEEE 802.15.4-2006 section 6.2.1.2
* Confirm the end of transmission of an MPDU to MAC
* \param status to report to MAC
* PHY PD-DATA.confirm status
*/
void PdDataConfirm(LrWpanPhyEnumeration status);
/**
* IEEE 802.15.4-2006 section 6.2.2.2
* PLME-CCA.confirm status
* @param status TRX_OFF, BUSY or IDLE
* IEEE 802.15.4-2006 section 6.2.2.2
* PLME-CCA.confirm status
* \param status TRX_OFF, BUSY or IDLE
*/
void PlmeCcaConfirm(LrWpanPhyEnumeration status);
/**
* IEEE 802.15.4-2006 section 6.2.2.4
* PLME-ED.confirm status and energy level
* @param status SUCCESS, TRX_OFF or TX_ON
* @param energyLevel 0x00-0xff ED level for the channel
* IEEE 802.15.4-2006 section 6.2.2.4
* PLME-ED.confirm status and energy level
* \param status SUCCESS, TRX_OFF or TX_ON
* \param energyLevel 0x00-0xff ED level for the channel
*/
void PlmeEdConfirm(LrWpanPhyEnumeration status, uint8_t energyLevel);
/**
* IEEE 802.15.4-2006 section 6.2.2.6
* PLME-GET.confirm
* Get attributes per definition from Table 23 in section 6.4.2
* @param status SUCCESS or UNSUPPORTED_ATTRIBUTE
* @param id the attributed identifier
* @param attribute the attribute value
* IEEE 802.15.4-2006 section 6.2.2.6
* PLME-GET.confirm
* Get attributes per definition from Table 23 in section 6.4.2
* \param status SUCCESS or UNSUPPORTED_ATTRIBUTE
* \param id the attributed identifier
* \param attribute the attribute value
*/
void PlmeGetAttributeConfirm(LrWpanPhyEnumeration status,
LrWpanPibAttributeIdentifier id,
LrWpanPhyPibAttributes* attribute);
/**
* IEEE 802.15.4-2006 section 6.2.2.8
* PLME-SET-TRX-STATE.confirm
* Set PHY state
* @param status in RX_ON,TRX_OFF,FORCE_TRX_OFF,TX_ON
* IEEE 802.15.4-2006 section 6.2.2.8
* PLME-SET-TRX-STATE.confirm
* Set PHY state
* \param status in RX_ON,TRX_OFF,FORCE_TRX_OFF,TX_ON
*/
void PlmeSetTRXStateConfirm(LrWpanPhyEnumeration status);
/**
* IEEE 802.15.4-2006 section 6.2.2.10
* PLME-SET.confirm
* Set attributes per definition from Table 23 in section 6.4.2
* @param status SUCCESS, UNSUPPORTED_ATTRIBUTE, INVALID_PARAMETER, or READ_ONLY
* @param id the attributed identifier
* IEEE 802.15.4-2006 section 6.2.2.10
* PLME-SET.confirm
* Set attributes per definition from Table 23 in section 6.4.2
* \param status SUCCESS, UNSUPPORTED_ATTRIBUTE, INVALID_PARAMETER, or READ_ONLY
* \param id the attributed identifier
*/
void PlmeSetAttributeConfirm(LrWpanPhyEnumeration status, LrWpanPibAttributeIdentifier id);
@@ -1626,7 +1626,8 @@ class LrWpanMac : public Object
/**
* Extracts a packet from pending transactions list (Indirect transmissions).
* \param dst The extended address used an index to obtain an element from the pending
* transaction list. \param entry The dequeued element from the pending transaction list.
* transaction list.
* \param entry The dequeued element from the pending transaction list.
* \return The status of the dequeue
*/
bool DequeueInd(Mac64Address dst, Ptr<IndTxQueueElement> entry);

View File

@@ -174,9 +174,9 @@ typedef struct
*
* This method implements the PD SAP: PdDataIndication
*
* @param psduLength number of bytes in the PSDU
* @param p the packet to be transmitted
* @param lqi Link quality (LQI) value measured during reception of the PPDU
* \param psduLength number of bytes in the PSDU
* \param p the packet to be transmitted
* \param lqi Link quality (LQI) value measured during reception of the PPDU
*/
typedef Callback<void, uint32_t, Ptr<Packet>, uint8_t> PdDataIndicationCallback;
@@ -336,148 +336,148 @@ class LrWpanPhy : public SpectrumPhy
void StartRx(Ptr<SpectrumSignalParameters> params) override;
/**
* IEEE 802.15.4-2006 section 6.2.1.1
* PD-DATA.request
* Request to transfer MPDU from MAC (transmitting)
* @param psduLength number of bytes in the PSDU
* @param p the packet to be transmitted
* IEEE 802.15.4-2006 section 6.2.1.1
* PD-DATA.request
* Request to transfer MPDU from MAC (transmitting)
* \param psduLength number of bytes in the PSDU
* \param p the packet to be transmitted
*/
void PdDataRequest(const uint32_t psduLength, Ptr<Packet> p);
/**
* IEEE 802.15.4-2006 section 6.2.2.1
* PLME-CCA.request
* Perform a CCA per section 6.9.9
* IEEE 802.15.4-2006 section 6.2.2.1
* PLME-CCA.request
* Perform a CCA per section 6.9.9
*/
void PlmeCcaRequest();
/**
* Cancel an ongoing CCA request.
* Cancel an ongoing CCA request.
*/
void CcaCancel();
/**
* IEEE 802.15.4-2006 section 6.2.2.3
* PLME-ED.request
* Perform an ED per section 6.9.7
* IEEE 802.15.4-2006 section 6.2.2.3
* PLME-ED.request
* Perform an ED per section 6.9.7
*/
void PlmeEdRequest();
/**
* IEEE 802.15.4-2006 section 6.2.2.5
* PLME-GET.request
* Get attributes per definition from Table 23 in section 6.4.2
* @param id the attributed identifier
* IEEE 802.15.4-2006 section 6.2.2.5
* PLME-GET.request
* Get attributes per definition from Table 23 in section 6.4.2
* \param id the attributed identifier
*/
void PlmeGetAttributeRequest(LrWpanPibAttributeIdentifier id);
/**
* IEEE 802.15.4-2006 section 6.2.2.7
* PLME-SET-TRX-STATE.request
* Set PHY state
* @param state in RX_ON,TRX_OFF,FORCE_TRX_OFF,TX_ON
* IEEE 802.15.4-2006 section 6.2.2.7
* PLME-SET-TRX-STATE.request
* Set PHY state
* \param state in RX_ON,TRX_OFF,FORCE_TRX_OFF,TX_ON
*/
void PlmeSetTRXStateRequest(LrWpanPhyEnumeration state);
/**
* IEEE 802.15.4-2006 section 6.2.2.9
* PLME-SET.request
* Set attributes per definition from Table 23 in section 6.4.2
* @param id the attributed identifier
* @param attribute the attribute value
* IEEE 802.15.4-2006 section 6.2.2.9
* PLME-SET.request
* Set attributes per definition from Table 23 in section 6.4.2
* \param id the attributed identifier
* \param attribute the attribute value
*/
void PlmeSetAttributeRequest(LrWpanPibAttributeIdentifier id,
LrWpanPhyPibAttributes* attribute);
/**
* set the callback for the end of a RX, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implements PD Indication SAP.
* @param c the callback
* \param c the callback
*/
void SetPdDataIndicationCallback(PdDataIndicationCallback c);
/**
* set the callback for the end of a TX, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implements PD SAP.
* @param c the callback
* \param c the callback
*/
void SetPdDataConfirmCallback(PdDataConfirmCallback c);
/**
* set the callback for the end of a CCA, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implement PLME CCA confirm SAP
* @param c the callback
* \param c the callback
*/
void SetPlmeCcaConfirmCallback(PlmeCcaConfirmCallback c);
/**
* set the callback for the end of an ED, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implement PLME ED confirm SAP
* @param c the callback
* \param c the callback
*/
void SetPlmeEdConfirmCallback(PlmeEdConfirmCallback c);
/**
* set the callback for the end of an GetAttribute, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implement PLME GetAttribute confirm SAP
* @param c the callback
* \param c the callback
*/
void SetPlmeGetAttributeConfirmCallback(PlmeGetAttributeConfirmCallback c);
/**
* set the callback for the end of an SetTRXState, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implement PLME SetTRXState confirm SAP
* @param c the callback
* \param c the callback
*/
void SetPlmeSetTRXStateConfirmCallback(PlmeSetTRXStateConfirmCallback c);
/**
* set the callback for the end of an SetAttribute, as part of the
* interconnections betweenthe PHY and the MAC. The callback
* interconnections between the PHY and the MAC. The callback
* implement PLME SetAttribute confirm SAP
* @param c the callback
* \param c the callback
*/
void SetPlmeSetAttributeConfirmCallback(PlmeSetAttributeConfirmCallback c);
/**
* Get The current channel page number in use in this PHY from the PIB attributes.
*
* @return The current page number
* \return The current page number
*/
uint8_t GetCurrentPage() const;
/**
* Get The current channel number in use in this PHY from the PIB attributes.
*
* @return The current channel number
* \return The current channel number
*/
uint8_t GetCurrentChannelNum() const;
/**
* implement PLME SetAttribute confirm SAP
* bit rate is in bit/s. Symbol rate is in symbol/s.
* @param isData is true for data rate or false for symbol rate
* @return the rate value of this PHY
* \param isData is true for data rate or false for symbol rate
* \return the rate value of this PHY
*/
double GetDataOrSymbolRate(bool isData);
/**
* set the error model to use
*
* @param e pointer to LrWpanErrorModel to use
* \param e pointer to LrWpanErrorModel to use
*/
void SetErrorModel(Ptr<LrWpanErrorModel> e);
/**
* get the error model in use
*
* @return pointer to LrWpanErrorModel in use
* \return pointer to LrWpanErrorModel in use
*/
Ptr<LrWpanErrorModel> GetErrorModel() const;

View File

@@ -81,7 +81,9 @@ class FemtocellBlockAllocator
private:
/**
* Function that checks if the box area is overlapping with some of previously created building
* blocks. \param box the area to check \returns true if there is an overlap
* blocks.
* \param box the area to check
* \returns true if there is an overlap
*/
bool OverlapsWithAnyPrevious(Box box);
Box m_area; ///< Area

View File

@@ -61,8 +61,8 @@ class CcHelper : public Object
~CcHelper() override;
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
void DoDispose() override;
@@ -180,8 +180,9 @@ class CcHelper : public Object
* \param dlBandwidth downlink bandwidth for the current CC
* \param ulEarfcn uplink EARFCN - not control on the validity at this point
* \param dlEarfcn downlink EARFCN - not control on the validity at this point
* \param isPrimary identify if this is the Primary Component Carrier (PCC) - only one PCC is
* allowed \return the component carrier
* \param isPrimary identify if this is the Primary Component Carrier (PCC) - only one
* PCC is allowed
* \return the component carrier
*/
ComponentCarrier CreateSingleCc(uint16_t ulBandwidth,
uint16_t dlBandwidth,

View File

@@ -53,8 +53,8 @@ class EmuEpcHelper : public NoBackhaulEpcHelper
// inherited from Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
TypeId GetInstanceTypeId() const override;

View File

@@ -61,8 +61,8 @@ class EpcHelper : public Object
// inherited from Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
void DoDispose() override;

View File

@@ -106,8 +106,8 @@ class LteHelper : public Object
~LteHelper() override;
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
void DoDispose() override;
@@ -469,12 +469,13 @@ class LteHelper : public Object
uint8_t ActivateDedicatedEpsBearer(Ptr<NetDevice> ueDevice, EpsBearer bearer, Ptr<EpcTft> tft);
/**
* \brief Manually trigger dedicated bearer de-activation at specific simulation time
* \param ueDevice the UE on which dedicated bearer to be de-activated must be of the type
* LteUeNetDevice \param enbDevice eNB, must be of the type LteEnbNetDevice \param bearerId
* Bearer Identity which is to be de-activated
* \brief Manually trigger dedicated bearer de-activation at specific simulation time
* \param ueDevice the UE on which dedicated bearer to be de-activated must be of the type
* LteUeNetDevice
* \param enbDevice eNB, must be of the type LteEnbNetDevice
* \param bearerId Bearer Identity which is to be de-activated
*
* \warning Requires the use of EPC mode. See SetEpcHelper() method.
* \warning Requires the use of EPC mode. See SetEpcHelper() method.
*/
void DeActivateDedicatedEpsBearer(Ptr<NetDevice> ueDevice,
@@ -725,13 +726,13 @@ class LteHelper : public Object
uint16_t targetCellId);
/**
* \brief The actual function to trigger a manual bearer de-activation
* \param ueDevice the UE on which bearer to be de-activated must be of the type LteUeNetDevice
* \param enbDevice eNB, must be of the type LteEnbNetDevice
* \param bearerId Bearer Identity which is to be de-activated
* \brief The actual function to trigger a manual bearer de-activation
* \param ueDevice the UE on which bearer to be de-activated must be of the type LteUeNetDevice
* \param enbDevice eNB, must be of the type LteEnbNetDevice
* \param bearerId Bearer Identity which is to be de-activated
*
* This method is normally scheduled by DeActivateDedicatedEpsBearer() to run at a specific
* time when a manual bearer de-activation is desired by the simulation user.
* This method is normally scheduled by DeActivateDedicatedEpsBearer() to run at a specific
* time when a manual bearer de-activation is desired by the simulation user.
*/
void DoDeActivateDedicatedEpsBearer(Ptr<NetDevice> ueDevice,
Ptr<NetDevice> enbDevice,

View File

@@ -40,8 +40,8 @@ class LteHexGridEnbTopologyHelper : public Object
~LteHexGridEnbTopologyHelper() override;
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
void DoDispose() override;

View File

@@ -50,8 +50,8 @@ class LteStatsCalculator : public Object
~LteStatsCalculator() override;
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -61,8 +61,8 @@ class MacStatsCalculator : public LteStatsCalculator
// Inherited from ns3::Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -58,8 +58,8 @@ class NoBackhaulEpcHelper : public EpcHelper
// inherited from Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
TypeId GetInstanceTypeId() const override;

View File

@@ -63,8 +63,8 @@ class PhyRxStatsCalculator : public LteStatsCalculator
// Inherited from ns3::Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -70,8 +70,8 @@ class PhyStatsCalculator : public LteStatsCalculator
// Inherited from ns3::Object
/**
* Register this type.
* @return The object TypeId.
* Register this type.
* @return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -63,8 +63,8 @@ class PhyTxStatsCalculator : public LteStatsCalculator
// Inherited from ns3::Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -50,8 +50,8 @@ class PointToPointEpcHelper : public NoBackhaulEpcHelper
// inherited from Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
TypeId GetInstanceTypeId() const override;

View File

@@ -88,8 +88,8 @@ class RadioBearerStatsCalculator : public LteStatsCalculator
// Inherited from ns3::Object
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
void DoDispose() override;

View File

@@ -50,8 +50,8 @@ class RadioEnvironmentMapHelper : public Object
// inherited from Object
void DoDispose() override;
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -68,9 +68,11 @@ class EpcEnbApplication : public Application
/**
* Constructor
*
* \param lteSocket the socket to be used to send/receive IPv4 packets to/from the LTE radio
* interface \param lteSocket6 the socket to be used to send/receive IPv6 packets to/from the
* LTE radio interface \param cellId the identifier of the eNB
* \param lteSocket the socket to be used to send/receive IPv4 packets to/from the
* LTE radio interface
* \param lteSocket6 the socket to be used to send/receive IPv6 packets to/from the
* LTE radio interface
* \param cellId the identifier of the eNB
*/
EpcEnbApplication(Ptr<Socket> lteSocket, Ptr<Socket> lteSocket6, uint16_t cellId);
@@ -78,8 +80,9 @@ class EpcEnbApplication : public Application
* Add a S1-U interface to the eNB
*
* \param s1uSocket the socket to be used to send/receive packets to/from the S1-U interface
* connected with the SGW \param enbS1uAddress the IPv4 address of the S1-U interface of this
* eNB \param sgwS1uAddress the IPv4 address at which this eNB will be able to reach its SGW for
* connected with the SGW
* \param enbS1uAddress the IPv4 address of the S1-U interface of this eNB
* \param sgwS1uAddress the IPv4 address at which this eNB will be able to reach its SGW for
* S1-U communications
*/
void AddS1Interface(Ptr<Socket> s1uSocket,
@@ -222,8 +225,10 @@ class EpcEnbApplication : public Application
/**
* \brief This function accepts bearer id corresponding to a particular UE and schedules
* indication of bearer release towards MME \param imsi maps to mmeUeS1Id \param rnti maps to
* enbUeS1Id \param bearerId Bearer Identity which is to be de-activated
* indication of bearer release towards MME
* \param imsi maps to mmeUeS1Id
* \param rnti maps to enbUeS1Id
* \param bearerId Bearer Identity which is to be de-activated
*/
void DoReleaseIndication(uint64_t imsi, uint16_t rnti, uint8_t bearerId);

View File

@@ -33,7 +33,6 @@ namespace ns3
* LteEnbRrc and the EpcEnbApplication. In particular, this class implements the
* Provider part of the SAP, i.e., the methods exported by the
* EpcEnbApplication and called by the LteEnbRrc.
*
*/
class EpcEnbS1SapProvider
{
@@ -41,18 +40,18 @@ class EpcEnbS1SapProvider
virtual ~EpcEnbS1SapProvider();
/**
* Initial UE message.
*
*
* \param imsi
* \param rnti
* \param imsi IMSI
* \param rnti RNTI
*/
virtual void InitialUeMessage(uint64_t imsi, uint16_t rnti) = 0;
/**
* \brief Triggers epc-enb-application to send ERAB Release Indication message towards MME
* \param imsi the UE IMSI
* \param rnti the UE RNTI
* \param bearerId Bearer Identity which is to be de-activated
* \brief Triggers epc-enb-application to send ERAB Release Indication message towards MME
* \param imsi the UE IMSI
* \param rnti the UE RNTI
* \param bearerId Bearer Identity which is to be de-activated
*/
virtual void DoSendReleaseIndication(uint64_t imsi, uint16_t rnti, uint8_t bearerId) = 0;
@@ -80,11 +79,11 @@ class EpcEnbS1SapProvider
virtual void PathSwitchRequest(PathSwitchRequestParameters params) = 0;
/**
* release UE context at the S1 Application of the source eNB after
* Release UE context at the S1 Application of the source eNB after
* reception of the UE CONTEXT RELEASE X2 message from the target eNB
* during X2-based handover
*
* \param rnti
* \param rnti RNTI
*/
virtual void UeContextRelease(uint16_t rnti) = 0;
};
@@ -94,7 +93,6 @@ class EpcEnbS1SapProvider
* LteEnbRrc and the EpcEnbApplication. In particular, this class implements the
* User part of the SAP, i.e., the methods exported by the LteEnbRrc
* and called by the EpcEnbApplication.
*
*/
class EpcEnbS1SapUser
{
@@ -112,7 +110,7 @@ class EpcEnbS1SapUser
/**
* Initial context setup request
*
* \param params
* \param params Parameters
*/
virtual void InitialContextSetupRequest(InitialContextSetupRequestParameters params) = 0;
@@ -130,9 +128,9 @@ class EpcEnbS1SapUser
};
/**
* request the setup of a DataRadioBearer
* Request the setup of a DataRadioBearer
*
* \param params
* \param params Parameters
*/
virtual void DataRadioBearerSetupRequest(DataRadioBearerSetupRequestParameters params) = 0;
@@ -143,9 +141,9 @@ class EpcEnbS1SapUser
};
/**
* request a path switch acknowledge
* Request a path switch acknowledge
*
* \param params
* \param params Parameters
*/
virtual void PathSwitchRequestAcknowledge(PathSwitchRequestAcknowledgeParameters params) = 0;
};
@@ -153,7 +151,6 @@ class EpcEnbS1SapUser
/**
* Template for the implementation of the EpcEnbS1SapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcEnbS1SapProvider : public EpcEnbS1SapProvider
@@ -222,7 +219,6 @@ MemberEpcEnbS1SapProvider<C>::UeContextRelease(uint16_t rnti)
/**
* Template for the implementation of the EpcEnbS1SapUser as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcEnbS1SapUser : public EpcEnbS1SapUser

View File

@@ -49,7 +49,6 @@ class EpcS11Sap
/**
* Fully-qualified TEID, see 3GPP TS 29.274 section 8.22
*
*/
struct Fteid
{
@@ -59,7 +58,6 @@ class EpcS11Sap
/**
* TS 29.274 8.21 User Location Information (ULI)
*
*/
struct Uli
{
@@ -78,7 +76,6 @@ class EpcS11SapMme : public EpcS11Sap
public:
/**
* 3GPP TS 29.274 version 8.3.1 Release 8 section 8.28
*
*/
struct BearerContextCreated
{
@@ -121,7 +118,8 @@ class EpcS11SapMme : public EpcS11Sap
/**
* \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Request message shall be sent
* on the S11 interface by PGW to SGW and from SGW to MME \param msg the message
* on the S11 interface by PGW to SGW and from SGW to MME
* \param msg the message
*/
virtual void DeleteBearerRequest(DeleteBearerRequestMessage msg) = 0;
@@ -141,7 +139,7 @@ class EpcS11SapMme : public EpcS11Sap
};
/**
* send a Modify Bearer Response message
* Send a Modify Bearer Response message
*
* \param msg the message
*/
@@ -178,7 +176,7 @@ class EpcS11SapSgw : public EpcS11Sap
};
/**
* send a Create Session Request message
* Send a Create Session Request message
*
* \param msg the message
*/
@@ -201,7 +199,8 @@ class EpcS11SapSgw : public EpcS11Sap
/**
* \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Command message shall be sent
* on the S11 interface by the MME to the SGW \param msg the DeleteBearerCommandMessage
* on the S11 interface by the MME to the SGW
* \param msg the DeleteBearerCommandMessage
*/
virtual void DeleteBearerCommand(DeleteBearerCommandMessage msg) = 0;
@@ -222,7 +221,8 @@ class EpcS11SapSgw : public EpcS11Sap
/**
* \brief As per 3GPP TS 29.274 Release 9 V9.3.0, a Delete Bearer Command message shall be sent
* on the S11 interface by the MME to the SGW \param msg the message
* on the S11 interface by the MME to the SGW
* \param msg the message
*/
virtual void DeleteBearerResponse(DeleteBearerResponseMessage msg) = 0;
@@ -235,7 +235,7 @@ class EpcS11SapSgw : public EpcS11Sap
};
/**
* send a Modify Bearer Request message
* Send a Modify Bearer Request message
*
* \param msg the message
*/
@@ -245,7 +245,6 @@ class EpcS11SapSgw : public EpcS11Sap
/**
* Template for the implementation of the EpcS11SapMme as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcS11SapMme : public EpcS11SapMme
@@ -308,7 +307,6 @@ MemberEpcS11SapMme<C>::ModifyBearerResponse(ModifyBearerResponseMessage msg)
/**
* Template for the implementation of the EpcS11SapSgw as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcS11SapSgw : public EpcS11SapSgw

View File

@@ -52,12 +52,12 @@ class EpcS1apSapMme : public EpcS1apSap
{
public:
/**
* Initial UE message.
*
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param stmsi in practice, the imsi
* \param ecgi in practice, the cell Id
*
*/
virtual void InitialUeMessage(uint64_t mmeUeS1Id,
uint16_t enbUeS1Id,
@@ -66,7 +66,6 @@ class EpcS1apSapMme : public EpcS1apSap
/**
* E-RAB Release Indication Item IEs, 3GPP TS 36.413 version 9.8.0 section 9.1.3.7
*
*/
struct ErabToBeReleasedIndication
{
@@ -81,7 +80,6 @@ class EpcS1apSapMme : public EpcS1apSap
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabToBeReleaseIndication List of bearers to be deactivated
*
*/
virtual void ErabReleaseIndication(
uint64_t mmeUeS1Id,
@@ -90,7 +88,6 @@ class EpcS1apSapMme : public EpcS1apSap
/**
* E-RAB Setup Item IEs, see 3GPP TS 36.413 9.1.4.2
*
*/
struct ErabSetupItem
{
@@ -104,7 +101,7 @@ class EpcS1apSapMme : public EpcS1apSap
*
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabSetupList
* \param erabSetupList List of ERAB setup
*
*/
virtual void InitialContextSetupResponse(uint64_t mmeUeS1Id,
@@ -113,7 +110,6 @@ class EpcS1apSapMme : public EpcS1apSap
/**
* E-RABs Switched in Downlink Item IE, see 3GPP TS 36.413 9.1.5.8
*
*/
struct ErabSwitchedInDownlinkItem
{
@@ -127,8 +123,8 @@ class EpcS1apSapMme : public EpcS1apSap
*
* \param enbUeS1Id in practice, we use the RNTI
* \param mmeUeS1Id in practice, we use the IMSI
* \param gci
* \param erabToBeSwitchedInDownlinkList
* \param gci GCI
* \param erabToBeSwitchedInDownlinkList List of ERAB to be switched in downlink
*/
virtual void PathSwitchRequest(
uint64_t enbUeS1Id,
@@ -160,8 +156,7 @@ class EpcS1apSapEnb : public EpcS1apSap
*
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabToBeSetupList
*
* \param erabToBeSetupList List of ERAB to be setup
*/
virtual void InitialContextSetupRequest(uint64_t mmeUeS1Id,
uint16_t enbUeS1Id,
@@ -169,7 +164,6 @@ class EpcS1apSapEnb : public EpcS1apSap
/**
* E-RABs Switched in Uplink Item IE, see 3GPP TS 36.413 9.1.5.9
*
*/
struct ErabSwitchedInUplinkItem
{
@@ -183,8 +177,8 @@ class EpcS1apSapEnb : public EpcS1apSap
*
* \param enbUeS1Id in practice, we use the RNTI
* \param mmeUeS1Id in practice, we use the IMSI
* \param cgi
* \param erabToBeSwitchedInUplinkList
* \param cgi CGI
* \param erabToBeSwitchedInUplinkList List of ERAB to be switched in uplink
*/
virtual void PathSwitchRequestAcknowledge(
uint64_t enbUeS1Id,
@@ -196,7 +190,6 @@ class EpcS1apSapEnb : public EpcS1apSap
/**
* Template for the implementation of the EpcS1apSapMme as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcS1apSapMme : public EpcS1apSapMme
@@ -215,7 +208,7 @@ class MemberEpcS1apSapMme : public EpcS1apSapMme
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param imsi the IMSI
* \param ecgi
* \param ecgi ECGI
*/
void InitialUeMessage(uint64_t mmeUeS1Id,
uint16_t enbUeS1Id,
@@ -225,7 +218,7 @@ class MemberEpcS1apSapMme : public EpcS1apSapMme
* ERAB Release Indiation function
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabToBeReleaseIndication
* \param erabToBeReleaseIndication List of ERAB to be release indication
*/
void ErabReleaseIndication(
uint64_t mmeUeS1Id,
@@ -236,7 +229,7 @@ class MemberEpcS1apSapMme : public EpcS1apSapMme
* Initial context setup response
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabSetupList
* \param erabSetupList List of ERAB setup
*/
void InitialContextSetupResponse(uint64_t mmeUeS1Id,
uint16_t enbUeS1Id,
@@ -245,8 +238,8 @@ class MemberEpcS1apSapMme : public EpcS1apSapMme
* Path switch request
* \param enbUeS1Id in practice, we use the RNTI
* \param mmeUeS1Id in practice, we use the IMSI
* \param cgi
* \param erabToBeSwitchedInDownlinkList
* \param cgi CGI
* \param erabToBeSwitchedInDownlinkList List of ERAB to be switched in downlink
*/
void PathSwitchRequest(
uint64_t enbUeS1Id,
@@ -313,7 +306,6 @@ MemberEpcS1apSapMme<C>::PathSwitchRequest(
/**
* Template for the implementation of the EpcS1apSapEnb as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberEpcS1apSapEnb : public EpcS1apSapEnb
@@ -331,7 +323,7 @@ class MemberEpcS1apSapEnb : public EpcS1apSapEnb
* Initial context setup request function
* \param mmeUeS1Id in practice, we use the IMSI
* \param enbUeS1Id in practice, we use the RNTI
* \param erabToBeSetupList
* \param erabToBeSetupList List of ERAB to be setup
*/
void InitialContextSetupRequest(uint64_t mmeUeS1Id,
uint16_t enbUeS1Id,
@@ -340,8 +332,8 @@ class MemberEpcS1apSapEnb : public EpcS1apSapEnb
* Path switch request acknowledge function
* \param enbUeS1Id in practice, we use the RNTI
* \param mmeUeS1Id in practice, we use the IMSI
* \param cgi
* \param erabToBeSwitchedInUplinkList
* \param cgi CGI
* \param erabToBeSwitchedInUplinkList List of ERAB to be switched in uplink
*/
void PathSwitchRequestAcknowledge(
uint64_t enbUeS1Id,

View File

@@ -339,7 +339,6 @@ class EpcX2Sap
* \brief Parameters of the HANDOVER CANCEL message.
*
* See section 9.1.1.6 for further info about the parameters
*
*/
struct HandoverCancelParams
{
@@ -402,7 +401,7 @@ class EpcX2SapProvider : public EpcX2Sap
/**
* Send resource status update function
* \param params the resource statue update paramweters
* \param params the resource statue update parameters
*/
virtual void SendResourceStatusUpdate(ResourceStatusUpdateParams params) = 0;
@@ -510,13 +509,13 @@ class EpcX2SpecificEpcX2SapProvider : public EpcX2SapProvider
/**
* Send handover request function
* \param params the hadnover request parameters
* \param params the handover request parameters
*/
void SendHandoverRequest(HandoverRequestParams params) override;
/**
* Send handover request ack function
* \param params the handover request ack pararameters
* \param params the handover request ack parameters
*/
void SendHandoverRequestAck(HandoverRequestAckParams params) override;

View File

@@ -84,7 +84,7 @@ class FfMacCschedSapProvider
struct SiConfiguration_s m_siConfiguration; ///< SI configuration
uint16_t m_ulBandwidth; ///< UL bandwidth
uint16_t m_dlBandwidth; ///< DL badnwidth
uint16_t m_dlBandwidth; ///< DL bandwidth
enum NormalExtended_e m_ulCyclicPrefixLength; ///< UL cyclic prefix length
enum NormalExtended_e m_dlCyclicPrefixLength; ///< DL cyclic prefix length
@@ -113,7 +113,7 @@ class FfMacCschedSapProvider
uint8_t m_deltaPucchShift; ///< delta pu cch shift
uint8_t m_nrbCqi; ///< nrb CQI
uint8_t m_ncsAn; ///< ncs an
uint8_t m_srsSubframeConfiguration; ///< SRS subframe confguration
uint8_t m_srsSubframeConfiguration; ///< SRS subframe configuration
uint8_t m_srsSubframeOffset; ///< SRS subframe offset
uint8_t m_srsBandwidthConfiguration; ///< SRS bandwidth configuration
bool m_srsMaxUpPts; ///< SRS maximum up pts
@@ -142,7 +142,7 @@ class FfMacCschedSapProvider
struct DrxConfig_s m_drxConfig; ///< drx config
uint16_t m_timeAlignmentTimer; ///< time alignment timer
/// MeasGapConfigPattern_e enumaration
/// MeasGapConfigPattern_e enumeration
enum MeasGapConfigPattern_e
{
MGP_GP1,
@@ -151,7 +151,7 @@ class FfMacCschedSapProvider
} m_measGapConfigPattern; ///< measGapConfigPattern
uint8_t m_measGapConfigSubframeOffset; ///< measure gap config subframe offset
bool m_spsConfigPresent; ///< SPS configu present
bool m_spsConfigPresent; ///< SPS config present
struct SpsConfig_s m_spsConfig; ///< SPS config
bool m_srConfigPresent; ///< SR config present
struct SrConfig_s m_srConfig; ///< SR config

View File

@@ -77,15 +77,19 @@ class LteAmc : public Object
/**
* \brief Get the Transport Block Size for a selected MCS and number of PRB (table 7.1.7.2.1-1
* of 36.213) \param mcs the MCS index \param nprb the no. of PRB \return the Transport Block
* Size in bits
* of 36.213)
* \param mcs the MCS index
* \param nprb the no. of PRB
* \return the Transport Block Size in bits
*/
int GetDlTbSizeFromMcs(int mcs, int nprb);
/**
* \brief Get the Transport Block Size for a selected MCS and number of PRB (table 8.6.1-1
* of 36.213) \param mcs the MCS index \param nprb the no. of PRB \return the Transport Block
* Size in bits
* of 36.213)
* \param mcs the MCS index
* \param nprb the no. of PRB
* \return the Transport Block Size in bits
*/
int GetUlTbSizeFromMcs(int mcs, int nprb);

View File

@@ -34,7 +34,6 @@ namespace ns3
* In particular, this class implements the
* Provider part of the SAP, i.e., the methods exported by the
* LteUeRrc and called by the EpcUeNas.
*
*/
class LteAsSapProvider
{
@@ -84,7 +83,6 @@ class LteAsSapProvider
/**
* \brief Tell the RRC entity to release the connection.
*
*/
virtual void Disconnect() = 0;
};
@@ -95,7 +93,6 @@ class LteAsSapProvider
* In particular, this class implements the
* User part of the SAP, i.e., the methods exported by the
* EpcUeNas and called by the LteUeRrc.
*
*/
class LteAsSapUser
{
@@ -104,19 +101,16 @@ class LteAsSapUser
/**
* \brief Notify the NAS that RRC Connection Establishment was successful.
*
*/
virtual void NotifyConnectionSuccessful() = 0;
/**
* \brief Notify the NAS that RRC Connection Establishment failed.
*
*/
virtual void NotifyConnectionFailed() = 0;
/**
* Notify the NAS that RRC Connection was released
*
*/
virtual void NotifyConnectionReleased() = 0;
@@ -131,7 +125,6 @@ class LteAsSapUser
/**
* Template for the implementation of the LteAsSapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteAsSapProvider : public LteAsSapProvider
@@ -213,7 +206,6 @@ MemberLteAsSapProvider<C>::Disconnect()
/**
* Template for the implementation of the LteAsSapUser as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteAsSapUser : public LteAsSapUser

View File

@@ -41,24 +41,28 @@ class LteEnbCphySapProvider
{
public:
/**
* destructor
* Destructor
*/
virtual ~LteEnbCphySapProvider();
/**
*
* Set cell ID
*
* \param cellId the Cell Identifier
*/
virtual void SetCellId(uint16_t cellId) = 0;
/**
* Set bandwidth
*
* \param ulBandwidth the UL bandwidth in PRBs
* \param dlBandwidth the DL bandwidth in PRBs
*/
virtual void SetBandwidth(uint16_t ulBandwidth, uint16_t dlBandwidth) = 0;
/**
* Set EARFCN
*
* \param ulEarfcn the UL EARFCN
* \param dlEarfcn the DL EARFCN
*/
@@ -87,30 +91,37 @@ class LteEnbCphySapProvider
virtual void SetPa(uint16_t rnti, double pa) = 0;
/**
* Set transmission mode
*
* \param rnti the RNTI of the user
* \param txMode the transmissionMode of the user
*/
virtual void SetTransmissionMode(uint16_t rnti, uint8_t txMode) = 0;
/**
* Set SRS configuration index
*
* \param rnti the RNTI of the user
* \param srsCi the SRS Configuration Index of the user
*/
virtual void SetSrsConfigurationIndex(uint16_t rnti, uint16_t srsCi) = 0;
/**
* Set master information block
*
* \param mib the Master Information Block to be sent on the BCH
*/
virtual void SetMasterInformationBlock(LteRrcSap::MasterInformationBlock mib) = 0;
/**
* Set system information block type 1
*
* \param sib1 the System Information Block Type 1 to be sent on the BCH
*/
virtual void SetSystemInformationBlockType1(LteRrcSap::SystemInformationBlockType1 sib1) = 0;
/**
* Get reference signal power
*
* \return Reference Signal Power for SIB2
*/
@@ -127,7 +138,7 @@ class LteEnbCphySapUser
{
public:
/**
* destructor
* Destructor
*/
virtual ~LteEnbCphySapUser();
};
@@ -135,7 +146,6 @@ class LteEnbCphySapUser
/**
* Template for the implementation of the LteEnbCphySapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteEnbCphySapProvider : public LteEnbCphySapProvider
@@ -258,7 +268,6 @@ MemberLteEnbCphySapProvider<C>::GetReferenceSignalPower()
/**
* Template for the implementation of the LteEnbCphySapUser as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteEnbCphySapUser : public LteEnbCphySapUser

View File

@@ -86,7 +86,8 @@ class LteEnbPhySapUser
/**
* \brief Receive SendLteControlMessage (PDCCH map, CQI feedbacks) using the ideal control
* channel \param msg the Ideal Control Message to receive
* channel
* \param msg the Ideal Control Message to receive
*/
virtual void ReceiveLteControlMessage(Ptr<LteControlMessage> msg) = 0;

View File

@@ -1050,8 +1050,10 @@ class LteEnbRrc : public Object
/**
* \brief This function acts as an interface to trigger Release indication messages towards eNB
* and EPC \param imsi the IMSI \param rnti the RNTI \param bearerId Bearer Identity which is to
* be de-activated
* and EPC
* \param imsi the IMSI
* \param rnti the RNTI
* \param bearerId Bearer Identity which is to be de-activated
*/
void DoSendReleaseDataRadioBearer(uint64_t imsi, uint16_t rnti, uint8_t bearerId);
@@ -1151,8 +1153,9 @@ class LteEnbRrc : public Object
/**
* Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::CompleteSetupUe interface to
* UeManager::CompleteSetupUe \param rnti the RNTI \param params the
* LteEnbRrcSapProvider::CompleteSetupUeParameters
* UeManager::CompleteSetupUe
* \param rnti the RNTI
* \param params the LteEnbRrcSapProvider::CompleteSetupUeParameters
*/
void DoCompleteSetupUe(uint16_t rnti, LteEnbRrcSapProvider::CompleteSetupUeParameters params);
/**

View File

@@ -78,8 +78,11 @@ class LteMiErrorModel
public:
/**
* \brief find the mmib (mean mutual information per bit) for different modulations of the
* specified TB \param sinr the perceived sinr values in the whole bandwidth in Watt \param map
* the active RBs for the TB \param mcs the MCS of the TB \return the mmib
* specified TB
* \param sinr the perceived sinr values in the whole bandwidth in Watt
* \param map the active RBs for the TB
* \param mcs the MCS of the TB
* \return the mmib
*/
static double Mib(const SpectrumValue& sinr, const std::vector<int>& map, uint8_t mcs);
/**

View File

@@ -53,7 +53,7 @@ class LtePdcpSapProvider
* This method is to be called when upper RRC entity has a
* RRC PDU ready to send
*
* \param params
* \param params Parameters
*/
virtual void TransmitPdcpSdu(TransmitPdcpSduParameters params) = 0;
};
@@ -83,7 +83,7 @@ class LtePdcpSapUser
/**
* Called by the PDCP entity to notify the RRC entity of the reception of a new RRC PDU
*
* \param params
* \param params Parameters
*/
virtual void ReceivePdcpSdu(ReceivePdcpSduParameters params) = 0;
};

View File

@@ -50,7 +50,6 @@ class Packet;
* the ns-3 coding style. Due to the 1-to-1 mapping with TS 36.331,
* detailed doxygen documentation is omitted, so please refer to
* 36.331 for the meaning of these data structures / fields.
*
*/
class LteRrcSap
{
@@ -736,7 +735,7 @@ class LteRrcSap
struct CellIdentification
{
uint32_t physCellId; ///< physical cell ID
uint32_t dlCarrierFreq; ///< ARFCN - valueEUTRA
uint32_t dlCarrierFreq; ///< ARFCN - valueEUTRA
};
/// AntennaInfoCommon structure
@@ -1427,7 +1426,6 @@ MemberLteUeRrcSapUser<C>::SendIdealUeContextRemoveRequest(uint16_t rnti)
/**
* Template for the implementation of the LteUeRrcSapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteUeRrcSapProvider : public LteUeRrcSapProvider
@@ -1670,7 +1668,6 @@ MemberLteEnbRrcSapUser<C>::DecodeHandoverCommand(Ptr<Packet> p)
/**
* Template for the implementation of the LteEnbRrcSapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteEnbRrcSapProvider : public LteEnbRrcSapProvider

View File

@@ -62,7 +62,8 @@ class LteUeCcmRrcSapProvider
*
* \param lcId is the Logical Channel Id
* \param lcConfig is a single structure contains logical Channel Id, Logical Channel config and
* Component Carrier Id \param msu is the pointer to LteMacSapUser related to the Rlc instance
* Component Carrier Id
* \param msu is the pointer to LteMacSapUser related to the Rlc instance
* \return vector of LcsConfig contains the lc configuration for each Mac
* the size of the vector is equal to the number of component
* carrier enabled.

View File

@@ -41,13 +41,12 @@ class LteUeCphySapProvider
{
public:
/**
* destructor
* Destructor
*/
virtual ~LteUeCphySapProvider();
/**
* reset the PHY
*
* Reset the PHY
*/
virtual void Reset() = 0;
@@ -176,7 +175,6 @@ class LteUeCphySapProvider
* \brief Reset the PHY after radio link failure function
* It resets the physical layer parameters of the
* UE after RLF.
*
*/
virtual void ResetPhyAfterRlf() = 0;
@@ -186,7 +184,6 @@ class LteUeCphySapProvider
* Upon receiving N311 in-sync indications from the UE
* PHY the UE RRC instructs the UE PHY to reset the
* RLF parameters so, it can start RLF detection again.
*
*/
virtual void ResetRlfParams() = 0;
@@ -196,7 +193,6 @@ class LteUeCphySapProvider
* problems are detected at the UE and the recovery process is
* started by checking if the radio frames are in-sync for N311
* consecutive times.
*
*/
virtual void StartInSnycDetection() = 0;
@@ -299,7 +295,6 @@ class LteUeCphySapUser
/**
* Template for the implementation of the LteUeCphySapProvider as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteUeCphySapProvider : public LteUeCphySapProvider
@@ -477,7 +472,6 @@ MemberLteUeCphySapProvider<C>::SetImsi(uint64_t imsi)
/**
* Template for the implementation of the LteUeCphySapUser as a member
* of an owner class of type C to which all methods are forwarded
*
*/
template <class C>
class MemberLteUeCphySapUser : public LteUeCphySapUser

View File

@@ -504,34 +504,39 @@ class LteUeRrc : public Object
void DoRecvSystemInformation(LteRrcSap::SystemInformation msg);
/**
* Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionSetup
* interface. \param msg the LteRrcSap::RrcConnectionSetup
* interface.
* \param msg the LteRrcSap::RrcConnectionSetup
*/
void DoRecvRrcConnectionSetup(LteRrcSap::RrcConnectionSetup msg);
/**
* Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReconfiguration
* interface. \param msg the LteRrcSap::RrcConnectionReconfiguration
* interface.
* \param msg the LteRrcSap::RrcConnectionReconfiguration
*/
void DoRecvRrcConnectionReconfiguration(LteRrcSap::RrcConnectionReconfiguration msg);
/**
* Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReestablishment
* interface. \param msg LteRrcSap::RrcConnectionReestablishment
* interface.
* \param msg LteRrcSap::RrcConnectionReestablishment
*/
void DoRecvRrcConnectionReestablishment(LteRrcSap::RrcConnectionReestablishment msg);
/**
* Part of the RRC protocol. Implement the
* LteUeRrcSapProvider::RecvRrcConnectionReestablishmentReject interface. \param msg
* LteRrcSap::RrcConnectionReestablishmentReject
* LteUeRrcSapProvider::RecvRrcConnectionReestablishmentReject interface.
* \param msg LteRrcSap::RrcConnectionReestablishmentReject
*/
void DoRecvRrcConnectionReestablishmentReject(
LteRrcSap::RrcConnectionReestablishmentReject msg);
/**
* Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionRelease
* interface. \param msg LteRrcSap::RrcConnectionRelease
* interface.
* \param msg LteRrcSap::RrcConnectionRelease
*/
void DoRecvRrcConnectionRelease(LteRrcSap::RrcConnectionRelease msg);
/**
* Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReject
* interface. \param msg the LteRrcSap::RrcConnectionReject
* interface.
* \param msg the LteRrcSap::RrcConnectionReject
*/
void DoRecvRrcConnectionReject(LteRrcSap::RrcConnectionReject msg);

View File

@@ -152,7 +152,8 @@ class NoOpComponentCarrierManager : public LteEnbComponentCarrierManager
virtual void DoUlReceiveSr(uint16_t rnti, uint8_t componentCarrierId);
/**
* \brief Function implements the function of the SAP interface of CCM instance which is used by
* MAC to notify the PRB occupancy reported by scheduler. \param prbOccupancy the PRB occupancy
* MAC to notify the PRB occupancy reported by scheduler.
* \param prbOccupancy the PRB occupancy
* \param componentCarrierId the component carrier ID
*/
virtual void DoNotifyPrbOccupancy(double prbOccupancy, uint8_t componentCarrierId);

View File

@@ -78,10 +78,10 @@ class LteCellSelectionTestCase : public TestCase
* \param relPosY relative position to the inter site distance in Y
* \param isCsgMember if true, simulation is allowed access to CSG cell
* \param checkPoint the time in the simulation when the UE is verified
* \param expectedCellId1 ///< The cell ID that the UE is expected to attach to (0 means
* that the UE should not attach to any cell). \param expectedCellId2 ///< An alternative
* cell ID that the UE is expected to attach to (0 means that this no alternative cell is
* expected).
* \param expectedCellId1 the cell ID that the UE is expected to attach to
* (0 means that the UE should not attach to any cell).
* \param expectedCellId2 an alternative cell ID that the UE is expected to attach to
* (0 means that this no alternative cell is expected).
*/
UeSetup_t(double relPosX,
double relPosY,

View File

@@ -172,9 +172,13 @@ class LteRadioLinkFailureTestCase : public TestCase
/**
* \brief This callback function is executed when UE RRC receives an in-sync or out-of-sync
* indication \param context the context string \param imsi the IMSI \param rnti the RNTI \param
* cellId the cell ID \param type in-sync or out-of-sync indication \param count the number of
* in-sync or out-of-sync indications
* indication
* \param context the context string
* \param imsi the IMSI
* \param rnti the RNTI
* \param cellId the cell ID
* \param type in-sync or out-of-sync indication
* \param count the number of in-sync or out-of-sync indications
*/
void PhySyncDetectionCallback(std::string context,
uint64_t imsi,

View File

@@ -95,8 +95,9 @@ class EpcTftClassifierTestCase : public TestCase
* \param dp the destination port
* \param tos the TOS
* \param tftId the TFT ID
* \param useIpv6 use IPv6 or IPv4 addresses. If set, addresses will be used as IPv4 mapped
* addresses \returns the name string
* \param useIpv6 use IPv6 or IPv4 addresses. If set, addresses will be used as IPv4
* mapped addresses
* \returns the name string
*/
static std::string BuildNameString(Ptr<EpcTftClassifier> c,
EpcTft::Direction d,

View File

@@ -45,8 +45,10 @@ class LteRrcConnectionEstablishmentTestCase : public TestCase
* \param nBearers number of bearers to be setup in each connection
* \param tConnBase connection time base value for all UEs in ms
* \param tConnIncrPerUe additional connection time increment for each UE index (0...nUes-1) in
* ms \param delayDiscStart expected duration to perform connection establishment in ms \param
* errorExpected if true, test case will wait a bit longer to accommodate for transmission error
* ms
* \param delayDiscStart expected duration to perform connection establishment in ms
* \param errorExpected if true, test case will wait a bit longer to accommodate for
* transmission error
* \param useIdealRrc If set to false, real RRC protocol model will be used
* \param admitRrcConnectionRequest If set to false, eNb will not allow UE connections
* \param description additional description of the test case
@@ -71,11 +73,13 @@ class LteRrcConnectionEstablishmentTestCase : public TestCase
* \param nUes number of UEs in the test
* \param nBearers number of bearers to be setup in each connection
* \param tConnBase connection time base value for all UEs in ms
* \param tConnIncrPerUe additional connection time increment for each UE index (0...nUes-1) in
* ms \param delayDiscStart expected duration to perform connection establishment in ms \param
* useIdealRrc If set to false, real RRC protocol model will be used \param
* admitRrcConnectionRequest If set to false, eNb will not allow UE connections \param
* description additional description of the test case \returns the name string
* \param tConnIncrPerUe additional connection time increment for each UE index (0...nUes-1)
* in ms
* \param delayDiscStart expected duration to perform connection establishment in ms
* \param useIdealRrc If set to false, real RRC protocol model will be used
* \param admitRrcConnectionRequest If set to false, eNb will not allow UE connections
* \param description additional description of the test case
* \returns the name string
*/
static std::string BuildNameString(uint32_t nUes,
uint32_t nBearers,

View File

@@ -84,8 +84,9 @@ class LteX2HandoverMeasuresTestCase : public TestCase
* \param useUdp true if UDP is to be used, false if TCP is to be used
* \param schedulerType type of scheduler to be used (e.g. "ns3::PfFfMacScheduler")
* \param handoverAlgorithmType type of handover algorithm to be used (e.g.
* "ns3::A3RsrpHandoverAlgorithm") \param admitHo true if Ho is admitted, false if it is not
* admitted \param useIdealRrc true if ideal RRC is to be used, false if real RRC is to be used
* "ns3::A3RsrpHandoverAlgorithm")
* \param admitHo true if Ho is admitted, false if it is not admitted
* \param useIdealRrc true if ideal RRC is to be used, false if real RRC is to be used
*/
LteX2HandoverMeasuresTestCase(uint32_t nEnbs,
uint32_t nUes,
@@ -108,8 +109,10 @@ class LteX2HandoverMeasuresTestCase : public TestCase
* \param useUdp true if UDP is to be used, false if TCP is to be used
* \param schedulerType the scheduler type
* \param handoverAlgorithmType type of handover algorithm to be used (e.g.
* "ns3::A3RsrpHandoverAlgorithm") \param admitHo true if Ho is admitted, false if it is not
* admitted \param useIdealRrc true if the ideal RRC should be used \returns the name string
* "ns3::A3RsrpHandoverAlgorithm")
* \param admitHo true if Ho is admitted, false if it is not admitted
* \param useIdealRrc true if the ideal RRC should be used
* \returns the name string
*/
static std::string BuildNameString(uint32_t nEnbs,
uint32_t nUes,

View File

@@ -174,7 +174,8 @@ class HwmpRtable : public Object
LookupResult LookupReactiveExpired(Mac48Address destination);
/**
* Find proactive path to tree root. Note that calling this method has side effect of deleting
* expired proactive path \return The lookup result
* expired proactive path
* \return The lookup result
*/
LookupResult LookupProactive();
/**
@@ -186,7 +187,9 @@ class HwmpRtable : public Object
/**
* When peer link with a given MAC-address fails - it returns list of unreachable destination
* addresses \param peerAddress the peer address \returns the list of unreachable destinations
* addresses
* \param peerAddress the peer address
* \returns the list of unreachable destinations
*/
std::vector<HwmpProtocol::FailedDestination> GetUnreachableDestinations(
Mac48Address peerAddress);

View File

@@ -111,11 +111,13 @@ class PeerManagementProtocol : public Object
/**
* Deliver Peer link management information to the protocol-part
* \param interface is a interface ID of a given MAC (interfaceID rather than MAC address,
* because many interfaces may have the same MAC) \param peerAddress is address of peer \param
* peerMeshPointAddress is address of peer mesh point device (equal to peer address when only
* one interface) \param aid is association ID, which peer has assigned to us \param
* peerManagementElement is peer link management element \param meshConfig is mesh configuration
* element taken from the peer management frame
* because many interfaces may have the same MAC)
* \param peerAddress is address of peer
* \param peerMeshPointAddress is address of peer mesh point device (equal to peer address when
* only one interface)
* \param aid is association ID, which peer has assigned to us
* \param peerManagementElement is peer link management element
* \param meshConfig is mesh configuration element taken from the peer management frame
*/
void ReceivePeerLinkFrame(uint32_t interface,
Mac48Address peerAddress,
@@ -154,8 +156,8 @@ class PeerManagementProtocol : public Object
/// \name Interface to other protocols (MLME)
///@{
/**
* Set peer link status change callback
* \param cb the callback
* Set peer link status change callback
* \param cb the callback
*/
void SetPeerLinkStatusCallback(Callback<void, Mac48Address, Mac48Address, uint32_t, bool> cb);
/**

View File

@@ -66,7 +66,8 @@ class MeshPointDevice : public NetDevice
///@{
/**
* \brief Attach new interface to the station. Interface must support 48-bit MAC address and
* SendFrom method. \param port the port used
* SendFrom method.
* \param port the port used
*
* \attention Only MeshPointDevice can have IP address, but not individual interfaces.
*/

View File

@@ -87,16 +87,19 @@ class MeshWifiInterfaceMac : public WifiMac
/// \name Beacons
///@{
/**
* Set maximum initial random delay before first beacon
* \param interval maximum random interval
* Set maximum initial random delay before first beacon
* \param interval maximum random interval
*/
void SetRandomStartDelay(Time interval);
/**
* Set interval between two successive beacons
* \param interval beacon interval
* Set interval between two successive beacons
* \param interval beacon interval
*/
void SetBeaconInterval(Time interval);
/// \return interval between two beacons
/**
* Get beacon interval.
* \return interval between two beacons
*/
Time GetBeaconInterval() const;
/**
* \brief Next beacon frame time
@@ -108,7 +111,7 @@ class MeshWifiInterfaceMac : public WifiMac
Time GetTbtt() const;
/**
* \brief Shift TBTT.
* \param shift
* \param shift Shift
*
* This is supposed to be used by any entity managing beacon collision avoidance (e.g. Peer
* management protocol in 802.11s)
@@ -121,7 +124,7 @@ class MeshWifiInterfaceMac : public WifiMac
/**
* Install plugin.
*
* \param plugin
* \param plugin Plugin
*
* \todo return unique ID to allow user to unregister plugins
*/
@@ -143,7 +146,7 @@ class MeshWifiInterfaceMac : public WifiMac
/**
* Switch frequency channel.
*
* \param new_id
* \param new_id New ID.
*/
void SwitchFrequencyChannel(uint16_t new_id);
@@ -157,11 +160,15 @@ class MeshWifiInterfaceMac : public WifiMac
/**
* Check supported rates.
*
* \param rates
* \param rates Rates.
* \return true if rates are supported
*/
bool CheckSupportedRates(SupportedRates rates) const;
/// \return list of supported bitrates
/**
* Get supported rates.
* \return list of supported bitrates
*/
SupportedRates GetSupportedRates() const;
/// \name Metric Calculation routines:
@@ -184,7 +191,10 @@ class MeshWifiInterfaceMac : public WifiMac
* \param os the output stream
*/
void Report(std::ostream& os) const;
/// Reset statistics function
/**
* Reset statistics function
*/
void ResetStats();
/**
@@ -234,9 +244,13 @@ class MeshWifiInterfaceMac : public WifiMac
* \param to the to address
*/
void ForwardDown(Ptr<Packet> packet, Mac48Address from, Mac48Address to);
/// Send beacon
/**
* Send beacon.
*/
void SendBeacon();
/// Schedule next beacon
/**
* Schedule next beacon.
*/
void ScheduleNextBeacon();
/**
* Get current beaconing status
@@ -244,7 +258,9 @@ class MeshWifiInterfaceMac : public WifiMac
* \returns true if beacon active
*/
bool GetBeaconGeneration() const;
/// Real d-tor
/**
* Real d-tor.
*/
void DoDispose() override;
private:
@@ -254,7 +270,7 @@ class MeshWifiInterfaceMac : public WifiMac
/// \name Mesh timing intervals
///@{
/// whether beaconing is enabled
/// Whether beaconing is enabled
bool m_beaconEnable;
/// Beaconing interval.
Time m_beaconInterval;
@@ -285,10 +301,12 @@ class MeshWifiInterfaceMac : public WifiMac
/**
* Print statistics.
*
* \param os
* \param os Output stream
*/
void Print(std::ostream& os) const;
/// constructor
/**
* Constructor.
*/
Statistics();
};

View File

@@ -145,7 +145,7 @@ class Ns2MobilityHelperTest : public TestCase
/**
* Set NS-2 trace to read as single large string (don't forget to add \\n and quote \"'s)
* \param trace the mobility trace
* \param trace the mobility trace
*/
void SetTrace(const std::string& trace)
{

View File

@@ -93,8 +93,8 @@ class GrantedTimeWindowMpiInterface : public ParallelCommunicationInterface, Obj
{
public:
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -48,8 +48,8 @@ class MpiReceiver : public Object
{
public:
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();
~MpiReceiver() override;

View File

@@ -52,8 +52,8 @@ class NullMessageMpiInterface : public ParallelCommunicationInterface, Object
{
public:
/**
* Register this type.
* \return The object TypeId.
* Register this type.
* \return The object TypeId.
*/
static TypeId GetTypeId();

View File

@@ -61,8 +61,8 @@ class RemoteChannelBundle : public Object
RemoteChannelBundle();
/**
* Construct and assing system Id.
* \param [in] remoteSystemId The system id.
* Construct and assign system Id.
* \param [in] remoteSystemId The system id.
*/
RemoteChannelBundle(const uint32_t remoteSystemId);
@@ -91,10 +91,10 @@ class RemoteChannelBundle : public Object
Time GetGuaranteeTime() const;
/**
* \param time The guarantee time.
*
* Set the guarantee time for the bundle. This should be called
* after a packet or Null Message received.
*
* \param time The guarantee time.
*/
void SetGuaranteeTime(Time time);
@@ -125,11 +125,11 @@ class RemoteChannelBundle : public Object
std::size_t GetSize() const;
/**
* \param time The delay from now when the null message should be received.
*
* Send Null Message to the remote task associated with this bundle.
* Message will be delivered at current simulation time + the time
* passed in.
*
* \param time The delay from now when the null message should be received.
*/
void Send(Time time);

View File

@@ -254,7 +254,7 @@ class PacketMetadata
/**
* \brief Get the metadata serialized size
* \return the seralized size
* \return the serialized size
*/
uint32_t GetSerializedSize() const;
@@ -266,17 +266,17 @@ class PacketMetadata
ItemIterator BeginItem(Buffer buffer) const;
/**
* \brief Serialization to raw uint8_t*
* \param buffer the buffer to serialize to
* \param maxSize the maximum serialization size
* \return 1 on success, 0 on failure
* \brief Serialization to raw uint8_t*
* \param buffer the buffer to serialize to
* \param maxSize the maximum serialization size
* \return 1 on success, 0 on failure
*/
uint32_t Serialize(uint8_t* buffer, uint32_t maxSize) const;
/**
* \brief Deserialization from raw uint8_t*
* \param buffer the buffer to deserialize from
* \param size the size
* \return 1 on success, 0 on failure
* \brief Deserialization from raw uint8_t*
* \param buffer the buffer to deserialize from
* \param size the size
* \return 1 on success, 0 on failure
*/
uint32_t Deserialize(const uint8_t* buffer, uint32_t size);
@@ -424,8 +424,7 @@ class PacketMetadata
uint32_t m_count;
/** size (in bytes) of m_data buffer below */
uint16_t m_size;
/** max of the m_used field over all objects which
* reference this struct Data instance */
/** max of the m_used field over all objects which reference this struct Data instance */
uint16_t m_dirtyEnd;
/** variable-sized buffer of bytes */
uint8_t m_data[PACKET_METADATA_DATA_M_DATA_SIZE];
@@ -443,41 +442,41 @@ class PacketMetadata
struct SmallItem
{
/** offset (in bytes) from start of m_data buffer
to next element in linked list. value is 0xffff
if next element does not exist.
stored as a fixed-size 16 bit integer.
to next element in linked list. value is 0xffff
if next element does not exist.
stored as a fixed-size 16 bit integer.
*/
uint16_t next;
/** offset (in bytes) from start of m_data buffer
to previous element in linked list. value is 0xffff
if previous element does not exist.
stored as a fixed-size 16 bit integer.
to previous element in linked list. value is 0xffff
if previous element does not exist.
stored as a fixed-size 16 bit integer.
*/
uint16_t prev;
/** the high 31 bits of this field identify the
type of the header or trailer represented by
this item: the value zero represents payload.
If the low bit of this uid is one, an ExtraItem
structure follows this SmallItem structure.
stored as a variable-size 32 bit integer.
type of the header or trailer represented by
this item: the value zero represents payload.
If the low bit of this uid is one, an ExtraItem
structure follows this SmallItem structure.
stored as a variable-size 32 bit integer.
*/
uint32_t typeUid;
/** the size (in bytes) of the header or trailer represented
by this element.
stored as a variable-size 32 bit integer.
by this element.
stored as a variable-size 32 bit integer.
*/
uint32_t size;
/** this field tries to uniquely identify each header or
trailer _instance_ while the typeUid field uniquely
identifies each header or trailer _type_. This field
is used to test whether two items are equal in the sense
that they represent the same header or trailer instance.
That equality test is based on the typeUid and chunkUid
fields so, the likelihood that two header instances
share the same chunkUid _and_ typeUid is very small
unless they are really representations of the same header
instance.
stored as a fixed-size 16 bit integer.
trailer _instance_ while the typeUid field uniquely
identifies each header or trailer _type_. This field
is used to test whether two items are equal in the sense
that they represent the same header or trailer instance.
That equality test is based on the typeUid and chunkUid
fields so, the likelihood that two header instances
share the same chunkUid _and_ typeUid is very small
unless they are really representations of the same header
instance.
stored as a fixed-size 16 bit integer.
*/
uint16_t chunkUid;
};
@@ -488,19 +487,19 @@ class PacketMetadata
struct ExtraItem
{
/** offset (in bytes) from start of original header to
the start of the fragment still present.
stored as a variable-size 32 bit integer.
the start of the fragment still present.
stored as a variable-size 32 bit integer.
*/
uint32_t fragmentStart;
/** offset (in bytes) from start of original header to
the end of the fragment still present.
stored as a variable-size 32 bit integer.
the end of the fragment still present.
stored as a variable-size 32 bit integer.
*/
uint32_t fragmentEnd;
/** the packetUid of the packet in which this header or trailer
was first added. It could be different from the m_packetUid
field if the user has aggregated multiple packets into one.
stored as a fixed-size 64 bit integer.
was first added. It could be different from the m_packetUid
field if the user has aggregated multiple packets into one.
stored as a fixed-size 64 bit integer.
*/
uint64_t packetUid;
};

View File

@@ -40,24 +40,24 @@ class FlowIdTag : public Tag
FlowIdTag();
/**
* Constructs a FlowIdTag with the given flow id
* Constructs a FlowIdTag with the given flow id
*
* \param flowId Id to use for the tag
* \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
* 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
* Gets the flow id for the tag
* \returns current flow id for this tag
*/
uint32_t GetFlowId() const;
/**
* Uses a static variable to generate sequential flow id
* \returns flow id allocated
* Uses a static variable to generate sequential flow id
* \returns flow id allocated
*/
static uint32_t AllocateFlowId();

View File

@@ -551,8 +551,9 @@ class Ipv6Prefix
void SetPrefixLength(uint8_t prefixLength);
/**
* \brief Get the minimum prefix length, i.e., 128 - the length of the largest sequence trailing
* zeroes. \return minimum prefix length
* \brief Get the minimum prefix length, i.e., 128 - the length of the largest sequence
* trailing zeroes.
* \return minimum prefix length
*/
uint8_t GetMinimumPrefixLength() const;

View File

@@ -374,9 +374,9 @@ class LollipopCounter
* be on a circular region, and it is represented by
* the smallest circular distance between two numbers.
*
* Arithmetic operator.
* \param [in] val Counter to compute the difference against
* \return The result of the difference.
* Arithmetic operator.
* \param [in] val Counter to compute the difference against
* \return The result of the difference.
*/
T AbsoluteMagnitudeOfDifference(const LollipopCounter& val) const
{

View File

@@ -274,15 +274,16 @@ class PcapFile
/**
* \brief Compare two PCAP files packet-by-packet
*
* \param f1 First PCAP file name
* \param f2 Second PCAP file name
* \param sec [out] Time stamp of first different packet, seconds. Undefined if files don't
* differ.
* \param usec [out] Time stamp of first different packet, microseconds. Undefined if files
* don't differ.
* \param packets [out] Number of first different packet. Total number of parsed packets if
* files don't differ.
* \param snapLen Snap length (if used)
* \return true if files are different, false otherwise
*
* \param f1 First PCAP file name
* \param f2 Second PCAP file name
* \param sec [out] Time stamp of first different packet, seconds. Undefined if files
* doesn't differ. \param usec [out] Time stamp of first different packet, microseconds.
* Undefined if files doesn't differ. \param packets [out] Number of first different packet.
* Total number of parsed packets if files doesn't differ. \param snapLen Snap length (if
* used)
*/
static bool Diff(const std::string& f1,
const std::string& f2,

View File

@@ -616,7 +616,8 @@ RoutingProtocol::RecvOlsr(Ptr<Socket> socket)
/// \brief This auxiliary function (defined in \RFC{3626}) is used for calculating the MPR Set.
///
/// \param tuple the neighbor tuple which has the main address of the node we are going to calculate
/// its degree to. \return the degree of the node.
/// its degree to.
/// \return the degree of the node.
///
int
RoutingProtocol::Degree(const NeighborTuple& tuple)

View File

@@ -231,7 +231,7 @@ class RoutingProtocol : public Ipv4RoutingProtocol
* in HNA messages sent by the node.
* If this method is called more than once, entries from the old
* association are deleted before entries from the new one are added.
* \param routingTable the Ipv4StaticRouting routing table to be associated.
* \param routingTable the Ipv4StaticRouting routing table to be associated.
*/
void SetRoutingTableAssociation(Ptr<Ipv4StaticRouting> routingTable);
@@ -415,9 +415,9 @@ class RoutingProtocol : public Ipv4RoutingProtocol
private:
/**
* \brief Tests whether or not the specified route uses a non-OLSR outgoing interface.
* \param route The route to be tested.
* \returns True if the outgoing interface of the specified route is a non-OLSR interface,
* \brief Tests whether or not the specified route uses a non-OLSR outgoing interface.
* \param route The route to be tested.
* \returns True if the outgoing interface of the specified route is a non-OLSR interface,
* false otherwise.
*/
bool UsesNonOlsrOutgoingInterface(const Ipv4RoutingTableEntry& route);
@@ -542,8 +542,9 @@ class RoutingProtocol : public Ipv4RoutingProtocol
*
* \param olsrMessage The %OLSR message which must be forwarded.
* \param duplicated NULL if the message has never been considered for forwarding, or a
* duplicate tuple in other case. \param localIface The address of the interface where the
* message was received from. \param senderAddress The sender IPv4 address.
* duplicate tuple in other case.
* \param localIface The address of the interface where the message was received from.
* \param senderAddress The sender IPv4 address.
*/
void ForwardDefault(olsr::MessageHeader olsrMessage,
DuplicateTuple* duplicated,
@@ -815,9 +816,9 @@ class RoutingProtocol : public Ipv4RoutingProtocol
int Degree(const NeighborTuple& tuple);
/**
* Check that address is one of my interfaces.
* \param a the address to check.
* \return true if the address is own by the node.
* Check that address is one of my interfaces.
* \param a the address to check.
* \return true if the address is own by the node.
*/
bool IsMyOwnAddress(const Ipv4Address& a) const;

View File

@@ -455,12 +455,15 @@ class Controller : public Object
*
* \param key The matching key data; used to create a flow that matches the packet.
* \param buffer_id The OpenFlow Buffer ID; used to run the actions on the packet if we add or
* modify the flow. \param command Whether to add, modify, or delete this flow. \param acts List
* of actions to execute. \param actions_len Length of the actions buffer. \param idle_timeout
* Flow expires if left inactive for this amount of time (specify OFP_FLOW_PERMANENT to disable
* feature). \param hard_timeout Flow expires after this amount of time (specify
* OFP_FLOW_PERMANENT to disable feature). \return Flow data that when passed to SetFlow will
* add, modify, or delete a flow it defines.
* modify the flow.
* \param command Whether to add, modify, or delete this flow.
* \param acts List of actions to execute.
* \param actions_len Length of the actions buffer.
* \param idle_timeout Flow expires if left inactive for this amount of time (specify
* OFP_FLOW_PERMANENT to disable feature).
* \param hard_timeout Flow expires after this amount of time (specify OFP_FLOW_PERMANENT to
* disable feature).
* \return Flow data that when passed to SetFlow will add, modify, or delete a flow it defines.
*/
ofp_flow_mod* BuildFlow(sw_flow_key key,
uint32_t buffer_id,

View File

@@ -185,9 +185,9 @@ class OpenFlowSwitchNetDevice : public NetDevice
* \param packet_uid Packet UID; used to fetch the packet and its metadata.
* \param in_port The index of the port the Packet was initially received on.
* \param max_len The maximum number of bytes the caller wants to be sent; a value of 0
* indicates the entire packet should be sent. Used when outputting to controller. \param
* out_port The port we want to output on. \param ignore_no_fwd If true, Ports that are set to
* not forward are forced to forward.
* indicates the entire packet should be sent. Used when outputting to controller.
* \param out_port The port we want to output on.
* \param ignore_no_fwd If true, Ports that are set to not forward are forced to forward.
*/
void DoOutput(uint32_t packet_uid,
int in_port,
@@ -321,8 +321,9 @@ class OpenFlowSwitchNetDevice : public NetDevice
*
* \param packet_uid Packet UID; used to fetch the packet and its metadata.
* \param in_port The index of the port the Packet was initially received on. This port doesn't
* forward when flooding. \param flood If true, don't send out on the ports with flooding
* disabled. \return 0 if everything's ok, otherwise an error number.
* forward when flooding.
* \param flood If true, don't send out on the ports with flooding disabled.
* \return 0 if everything's ok, otherwise an error number.
*/
int OutputAll(uint32_t packet_uid, int in_port, bool flood);
@@ -355,7 +356,8 @@ class OpenFlowSwitchNetDevice : public NetDevice
* \param packet_uid Packet UID; used to fetch the packet and its metadata.
* \param in_port The index of the port the Packet was initially received on.
* \param max_len The maximum number of bytes that the caller wants to be sent; a value of 0
* indicates the entire packet should be sent. \param reason Why the packet is being sent.
* indicates the entire packet should be sent.
* \param reason Why the packet is being sent.
*/
void OutputControl(uint32_t packet_uid, int in_port, size_t max_len, int reason);

View File

@@ -201,7 +201,8 @@ class SixLowPanNetDevice : public NetDevice
* \param [in] contextId context id (most be between 0 and 15 included).
* \param [in] contextPrefix context prefix to be used in compression/decompression.
* \param [in] compressionAllowed compression and decompression allowed (true), decompression
* only (false). \param [in] validLifetime validity time (relative to the actual time).
* only (false).
* \param [in] validLifetime validity time (relative to the actual time).
*
*/
void AddContext(uint8_t contextId,
@@ -215,7 +216,8 @@ class SixLowPanNetDevice : public NetDevice
* \param [in] contextId context id (most be between 0 and 15 included).
* \param [out] contextPrefix context prefix to be used in compression/decompression.
* \param [out] compressionAllowed compression and decompression allowed (true), decompression
* only (false). \param [out] validLifetime validity time (relative to the actual time).
* only (false).
* \param [out] validLifetime validity time (relative to the actual time).
*
* \return false if the context has not been found.
*
@@ -274,10 +276,11 @@ class SixLowPanNetDevice : public NetDevice
/**
* \param [in] packet Packet sent from above down to Network Device.
* \param [in] source Source mac address (only used if doSendFrom is true, i.e., "MAC
* spoofing"). \param [in] dest Mac address of the destination (already resolved). \param [in]
* protocolNumber Identifies the type of payload contained in this packet. Used to call the
* right L3Protocol when the packet is received. \param [in] doSendFrom Perform a SendFrom
* instead of a Send.
* spoofing").
* \param [in] dest Mac address of the destination (already resolved).
* \param [in] protocolNumber Identifies the type of payload contained in this packet. Used to
* call the right L3Protocol when the packet is received.
* \param [in] doSendFrom Perform a SendFrom instead of a Send.
*
* Called from higher layer to send packet into Network Device
* with the specified source and destination Addresses.
@@ -546,11 +549,14 @@ class SixLowPanNetDevice : public NetDevice
/**
* \brief Performs a packet fragmentation.
* \param [in] packet the packet to be fragmented (with headers already compressed with
* 6LoWPAN). \param [in] origPacketSize the size of the IP packet before the 6LoWPAN header
* compression, including the IP/L4 headers. \param [in] origHdrSize the size of the IP header
* before the 6LoWPAN header compression. \param [in] extraHdrSize the sum of the sizes of BC0
* header and MESH header if mesh routing is used or 0. \param [out] listFragments A reference
* to the list of the resulting packets, all with the proper headers in place.
* 6LoWPAN).
* \param [in] origPacketSize the size of the IP packet before the 6LoWPAN header compression,
* including the IP/L4 headers.
* \param [in] origHdrSize the size of the IP header before the 6LoWPAN header compression.
* \param [in] extraHdrSize the sum of the sizes of BC0 header and MESH header if mesh routing
* is used or 0.
* \param [out] listFragments A reference to the list of the resulting packets, all with the
* proper headers in place.
*/
void DoFragmentation(Ptr<Packet> packet,
uint32_t origPacketSize,
@@ -613,8 +619,8 @@ class SixLowPanNetDevice : public NetDevice
uint16_t m_meshCacheLength; //!< length of the cache for each source.
Ptr<RandomVariableStream>
m_meshUnderJitter; //!< Random variable for the mesh-under packet retransmission.
std::map<Address /* OriginatorAdddress */, std::list<uint8_t /* SequenceNumber */>>
m_seenPkts; //!< Seen packets, memorized by OriginatorAdddress, SequenceNumber.
std::map<Address /* OriginatorAddress */, std::list<uint8_t /* SequenceNumber */>>
m_seenPkts; //!< Seen packets, memorized by OriginatorAddress, SequenceNumber.
Ptr<Node> m_node; //!< Smart pointer to the Node.
Ptr<NetDevice> m_netDevice; //!< Smart pointer to the underlying NetDevice.
@@ -670,7 +676,7 @@ class SixLowPanNetDevice : public NetDevice
* \brief Clean an address from its prefix.
*
* This function is used to find the relevant bits to be sent in stateful IPHC compression.
* Only the pefix length is used - the address prefix is assumed to be matching the prefix.
* Only the prefix length is used - the address prefix is assumed to be matching the prefix.
*
* \param address the address to be cleaned
* \param prefix the prefix to remove

View File

@@ -290,10 +290,14 @@ class ThreeGppChannelModel : public MatrixBasedChannelModel
* Compute the channel matrix between two nodes a and b, and their
* antenna arrays aAntenna and bAntenna using the procedure
* described in 3GPP TR 38.901
* \param channelParams the channel parameters previously generated for the pair of nodes a and
* b \param table3gpp the 3gpp parameters table \param sMob the mobility model of node s \param
* uMob the mobility model of node u \param sAntenna the antenna array of node s \param uAntenna
* the antenna array of node u \return the channel realization
* \param channelParams the channel parameters previously generated for the pair of
* nodes a and b
* \param table3gpp the 3gpp parameters table
* \param sMob the mobility model of node s
* \param uMob the mobility model of node u
* \param sAntenna the antenna array of node s
* \param uAntenna the antenna array of node u
* \return the channel realization
*/
virtual Ptr<ChannelMatrix> GetNewChannel(Ptr<const ThreeGppChannelParams> channelParams,
@@ -325,9 +329,10 @@ class ThreeGppChannelModel : public MatrixBasedChannelModel
/**
* Check if the channel matrix has to be updated (it needs update when the channel params
* generation time is more recent than channel matrix generation time \param channelParams
* channel params structure \param channelMatrix channel matrix structure \return true if the
* channel matrix has to be updated, false otherwise
* generation time is more recent than channel matrix generation time
* \param channelParams channel params structure
* \param channelMatrix channel matrix structure
* \return true if the channel matrix has to be updated, false otherwise
*/
bool ChannelMatrixNeedsUpdate(Ptr<const ThreeGppChannelParams> channelParams,
Ptr<const ChannelMatrix> channelMatrix);

View File

@@ -96,8 +96,9 @@ class WifiSpectrumValueHelper
* \param minInnerBandDbr the minimum relative power in the inner band (in dBr)
* \param minOuterbandDbr the minimum relative power in the outer band (in dBr)
* \param lowestPointDbr maximum relative power of the outermost subcarriers of the guard band
* (in dBr) \return a pointer to a newly allocated SpectrumValue representing the OFDM Transmit
* Power Spectral Density in W/Hz for each Band
* (in dBr)
* \return a pointer to a newly allocated SpectrumValue representing the OFDM Transmit Power
* Spectral Density in W/Hz for each Band
*/
static Ptr<SpectrumValue> CreateOfdmTxPowerSpectralDensity(uint32_t centerFrequency,
uint16_t channelWidth,
@@ -118,9 +119,10 @@ class WifiSpectrumValueHelper
* \param minInnerBandDbr the minimum relative power in the inner band (in dBr)
* \param minOuterbandDbr the minimum relative power in the outer band (in dBr)
* \param lowestPointDbr maximum relative power of the outermost subcarriers of the guard band
* (in dBr) \param puncturedSubchannels bitmap indicating whether a 20 MHz subchannel is
* punctured or not \return a pointer to a newly allocated SpectrumValue representing the
* duplicated 20 MHz OFDM Transmit Power Spectral Density in W/Hz for each Band
* (in dBr)
* \param puncturedSubchannels bitmap indicating whether a 20 MHz subchannel is punctured or not
* \return a pointer to a newly allocated SpectrumValue representing the duplicated 20 MHz OFDM
* Transmit Power Spectral Density in W/Hz for each Band
*/
static Ptr<SpectrumValue> CreateDuplicated20MhzTxPowerSpectralDensity(
uint32_t centerFrequency,
@@ -144,8 +146,9 @@ class WifiSpectrumValueHelper
* \param minInnerBandDbr the minimum relative power in the inner band (in dBr)
* \param minOuterbandDbr the minimum relative power in the outer band (in dBr)
* \param lowestPointDbr maximum relative power of the outermost subcarriers of the guard band
* (in dBr) \return a pointer to a newly allocated SpectrumValue representing the HT OFDM
* Transmit Power Spectral Density in W/Hz for each Band
* (in dBr)
* \return a pointer to a newly allocated SpectrumValue representing the HT OFDM Transmit Power
* Spectral Density in W/Hz for each Band
*/
static Ptr<SpectrumValue> CreateHtOfdmTxPowerSpectralDensity(uint32_t centerFrequency,
uint16_t channelWidth,
@@ -167,9 +170,10 @@ class WifiSpectrumValueHelper
* \param minInnerBandDbr the minimum relative power in the inner band (in dBr)
* \param minOuterbandDbr the minimum relative power in the outer band (in dBr)
* \param lowestPointDbr maximum relative power of the outermost subcarriers of the guard band
* (in dBr) \param puncturedSubchannels bitmap indicating whether a 20 MHz subchannel is
* punctured or not \return a pointer to a newly allocated SpectrumValue representing the HE
* OFDM Transmit Power Spectral Density in W/Hz for each Band
* (in dBr)
* \param puncturedSubchannels bitmap indicating whether a 20 MHz subchannel is punctured or not
* \return a pointer to a newly allocated SpectrumValue representing the HE OFDM Transmit Power
* Spectral Density in W/Hz for each Band
*/
static Ptr<SpectrumValue> CreateHeOfdmTxPowerSpectralDensity(
uint32_t centerFrequency,
@@ -274,18 +278,24 @@ class WifiSpectrumValueHelper
* between the inner and the middle bands.
*
* \param c spectrumValue to allocate according to transmit power spectral density mask (in W/Hz
* for each band) \param allocatedSubBands vector of start and stop subcarrier indexes of the
* allocated sub bands \param maskBand start and stop subcarrier indexes of transmit mask (in
* case signal doesn't cover whole SpectrumModel) \param txPowerPerBandW power allocated to each
* subcarrier in the allocated sub bands \param nGuardBands size (in number of subcarriers) of
* the guard band (left and right) \param innerSlopeWidth size (in number of subcarriers) of the
* inner band (i.e. slope going from 0 dBr to -20 dBr in the figure above) \param
* minInnerBandDbr the minimum relative power in the inner band (i.e. -20 dBr in the figure
* above) \param minOuterbandDbr the minimum relative power in the outer band (i.e. -28 dBr in
* the figure above) \param lowestPointDbr maximum relative power of the outermost subcarriers
* of the guard band (in dBr) \param puncturedSubBands vector of start and stop subcarrier
* indexes of the punctured sub bands \param puncturedSlopeWidth size (in number of subcarriers)
* of the punctured band slope
* for each band)
* \param allocatedSubBands vector of start and stop subcarrier indexes of the allocated sub
* bands
* \param maskBand start and stop subcarrier indexes of transmit mask (in case signal doesn't
* cover whole SpectrumModel)
* \param txPowerPerBandW power allocated to each subcarrier in the allocated sub bands
* \param nGuardBands size (in number of subcarriers) of the guard band (left and right)
* \param innerSlopeWidth size (in number of subcarriers) of the inner band (i.e. slope going
* from 0 dBr to -20 dBr in the figure above)
* \param minInnerBandDbr the minimum relative power in the inner band (i.e., -20 dBr in the
* figure above)
* \param minOuterbandDbr the minimum relative power in the outer band (i.e., -28 dBr in the
* figure above)
* \param lowestPointDbr maximum relative power of the outermost subcarriers of the guard band
* (in dBr)
* \param puncturedSubBands vector of start and stop subcarrier indexes of the punctured sub
* bands
* \param puncturedSlopeWidth size (in number of subcarriers) of the punctured band slope
*/
static void CreateSpectrumMaskForOfdm(
Ptr<SpectrumValue> c,

View File

@@ -544,31 +544,31 @@ class QueueDisc : public Object
void DoInitialize() override;
/**
* \brief Perform the actions required when the queue disc is notified of
* a packet dropped before enqueue
* \param item item that was dropped
* \param reason the reason why the item was dropped
* This method must be called by subclasses to record that a packet was
* dropped before enqueue for the specified reason
* \brief Perform the actions required when the queue disc is notified of
* a packet dropped before enqueue
* \param item item that was dropped
* \param reason the reason why the item was dropped
* This method must be called by subclasses to record that a packet was
* dropped before enqueue for the specified reason
*/
void DropBeforeEnqueue(Ptr<const QueueDiscItem> item, const char* reason);
/**
* \brief Perform the actions required when the queue disc is notified of
* a packet dropped after dequeue
* \param item item that was dropped
* \param reason the reason why the item was dropped
* This method must be called by subclasses to record that a packet was
* dropped after dequeue for the specified reason
* \brief Perform the actions required when the queue disc is notified of
* a packet dropped after dequeue
* \param item item that was dropped
* \param reason the reason why the item was dropped
* This method must be called by subclasses to record that a packet was
* dropped after dequeue for the specified reason
*/
void DropAfterDequeue(Ptr<const QueueDiscItem> item, const char* reason);
/**
* \brief Marks the given packet and, if successful, updates the counters
* associated with the given reason
* \param item item that has to be marked
* \param reason the reason why the item has to be marked
* \return true if the item was successfully marked, false otherwise
* \brief Marks the given packet and, if successful, updates the counters
* associated with the given reason
* \param item item that has to be marked
* \param reason the reason why the item has to be marked
* \return true if the item was successfully marked, false otherwise
*/
bool Mark(Ptr<QueueDiscItem> item, const char* reason);
@@ -671,21 +671,21 @@ class QueueDisc : public Object
bool Transmit(Ptr<QueueDiscItem> item);
/**
* \brief Perform the actions required when the queue disc is notified of
* a packet enqueue
* \param item item that was enqueued
* \brief Perform the actions required when the queue disc is notified of
* a packet enqueue
* \param item item that was enqueued
*/
void PacketEnqueued(Ptr<const QueueDiscItem> item);
/**
* \brief Perform the actions required when the queue disc is notified of
* a packet dequeue
* \param item item that was dequeued
* \brief Perform the actions required when the queue disc is notified of
* a packet dequeue
* \param item item that was dequeued
*/
void PacketDequeued(Ptr<const QueueDiscItem> item);
static const uint32_t DEFAULT_QUOTA =
64; //!< Default quota (as in /proc/sys/net/core/dev_weight)
/// Default quota (as in /proc/sys/net/core/dev_weight)
static const uint32_t DEFAULT_QUOTA = 64;
std::vector<Ptr<InternalQueue>> m_queues; //!< Internal queues
std::vector<Ptr<PacketFilter>> m_filters; //!< Packet filters

View File

@@ -104,9 +104,11 @@ class TbfQueueDiscTestCase : public TestCase
void Enqueue(Ptr<TbfQueueDisc> queue, Address dest, uint32_t size);
/**
* DequeueAndCheck function to check if a packet is blocked or not after dequeuing and verify
* against expected result \param queue the queue disc on which DequeueAndCheck needs to be done
* \param flag the boolean value against which the return value of dequeue () has to be compared
* with \param printStatement the string to be printed in the NS_TEST_EXPECT_MSG_EQ
* against expected result
* \param queue the queue disc on which DequeueAndCheck needs to be done
* \param flag the boolean value against which the return value of dequeue ()
* has to be compared with
* \param printStatement the string to be printed in the NS_TEST_EXPECT_MSG_EQ
*/
void DequeueAndCheck(Ptr<TbfQueueDisc> queue, bool flag, std::string printStatement);
/**

View File

@@ -228,11 +228,14 @@ class PyViz
* \param [in] boundsY1 Bounding box, minimum Y coord
* \param [in] boundsX2 Bounding box, maximum X coord
* \param [in] boundsY2 Bounding box, maximum Y coord
* \param [in,out] lineX1 Line, minimum X coord (any on input, clipped to the bounding box on
* output) \param [in,out] lineY1 Line, minimum Y coord (any on input, clipped to the bounding
* box on output) \param [in,out] lineX2 Line, maximum X coord (any on input, clipped to the
* bounding box on output) \param [in,out] lineY2 Line, maximum Y coord (any on input, clipped
* to the bounding box on output)
* \param [in,out] lineX1 Line, minimum X coord (any on input, clipped to the bounding box
* on output)
* \param [in,out] lineY1 Line, minimum Y coord (any on input, clipped to the bounding box
* on output)
* \param [in,out] lineX2 Line, maximum X coord (any on input, clipped to the bounding box
* on output)
* \param [in,out] lineY2 Line, maximum Y coord (any on input, clipped to the bounding box
* on output)
*/
// -#- @lineX1(direction=inout); @lineY1(direction=inout); @lineX2(direction=inout);
// @lineY2(direction=inout) -#-
@@ -276,14 +279,14 @@ class PyViz
struct TransmissionSampleKey
{
/**
* less than operator
* Less than operator
*
* \param other object to compare
* \return true if less than
*/
bool operator<(const TransmissionSampleKey& other) const;
/**
* equality operator
* Equality operator
*
* \param other object to compare
* \return true if equal
@@ -300,22 +303,22 @@ class PyViz
uint32_t bytes; ///< bytes
};
// data
// Data
std::map<uint32_t, PacketCaptureOptions> m_packetCaptureOptions; ///< packet capture options
std::vector<std::string> m_pauseMessages; ///< pause message
std::map<TxRecordKey, TxRecordValue> m_txRecords; ///< transmit records
std::map<TransmissionSampleKey, TransmissionSampleValue>
m_transmissionSamples; ///< transmission samples
std::map<Ptr<Node>, uint32_t> m_packetDrops; ///< packt drops
std::map<Ptr<Node>, uint32_t> m_packetDrops; ///< packet drops
std::set<uint32_t>
m_nodesOfInterest; ///< list of node IDs whose transmissions will be monitored
std::map<uint32_t, Time> m_packetsOfInterest; ///< list of packet UIDs that will be monitored
std::map<uint32_t, LastPacketsSample> m_lastPackets; ///< last packets
std::map<uint32_t, std::vector<NetDeviceStatistics>> m_nodesStatistics; ///< node statsitics
std::map<uint32_t, std::vector<NetDeviceStatistics>> m_nodesStatistics; ///< node statistics
// Trace callbacks
/**
* network transmit common trace callback function
* Network transmit common trace callback function
* \param context the context
* \param packet the packet
* \param destination the destination MAC address
@@ -324,7 +327,7 @@ class PyViz
Ptr<const Packet> packet,
const Mac48Address& destination);
/**
* network receive common trace callback function
* Network receive common trace callback function
* \param context the context
* \param packet the packet
* \param source the source MAC address
@@ -334,31 +337,31 @@ class PyViz
const Mac48Address& source);
/**
* WIFI transmit trace callback function
* Wi-Fi transmit trace callback function
* \param context the context
* \param packet the packet
*/
void TraceNetDevTxWifi(std::string context, Ptr<const Packet> packet);
/**
* WIFI receive trace callback function
* Wi-Fi receive trace callback function
* \param context the context
* \param packet the packet
*/
void TraceNetDevRxWifi(std::string context, Ptr<const Packet> packet);
/**
* queue drop trace callback function
* Queue drop trace callback function
* \param context the context
* \param packet the packet
*/
void TraceDevQueueDrop(std::string context, Ptr<const Packet> packet);
/**
* ipv4 drop trace callback function
* Ipv4 drop trace callback function
* \param context the context
* \param hdr the header
* \param packet the packet
* \param reason the drop reason
* \param dummy_ipv4
* \param dummy_ipv4 the dummy Ipv4
* \param interface the interface
*/
void TraceIpv4Drop(std::string context,
@@ -381,14 +384,14 @@ class PyViz
*/
void TraceNetDevRxCsma(std::string context, Ptr<const Packet> packet);
/**
* CSMA promiscious receive function
* CSMA promiscuous receive function
* \param context the context
* \param packet the packet
*/
void TraceNetDevPromiscRxCsma(std::string context, Ptr<const Packet> packet);
/**
* Point to point transmit trace calllback function
* Point to point transmit trace callback function
* \param context the context
* \param packet the packet
*/
@@ -401,7 +404,7 @@ class PyViz
void TraceNetDevRxPointToPoint(std::string context, Ptr<const Packet> packet);
/**
* WIMax transmit trace callback function
* WiMax transmit trace callback function
* \param context the context
* \param packet the packet
* \param destination the destination MAC address
@@ -410,7 +413,7 @@ class PyViz
Ptr<const Packet> packet,
const Mac48Address& destination);
/**
* WIMax transmit trace callback function
* WiMax transmit trace callback function
* \param context the context
* \param packet the packet
* \param source the source MAC address
@@ -439,7 +442,7 @@ class PyViz
const Mac48Address& source);
/**
* Findnet device statistics function
* Find net device statistics function
* \param node the node
* \param interface the interface number
* \returns the device statistics
@@ -454,7 +457,8 @@ class PyViz
bool m_stop; ///< stop?
Time m_runUntil; ///< run until time
/// stop simulation callback function
/// Stop simulation callback function
void CallbackStopSimulation();
};

View File

@@ -243,8 +243,8 @@ class WaveNetDevice : public WifiNetDevice
*/
bool StartSch(const SchInfo& schInfo);
/**
* \param channelNumber the channel which access resource will be released.
* \return whether channel access is released successfully
* \param channelNumber the channel which access resource will be released.
* \return whether channel access is released successfully
*/
bool StopSch(uint32_t channelNumber);

View File

@@ -79,7 +79,8 @@ class ErrorRateModel : public Object
* \param nbits the number of bits in this chunk
* \param numRxAntennas the number of active RX antennas (1 if not provided)
* \param field the PPDU field to which the chunk belongs to (assumes this is for the payload
* part if not provided) \param staId the station ID for MU
* part if not provided)
* \param staId the station ID for MU
*
* \return probability of successfully receiving the chunk
*/

View File

@@ -458,7 +458,8 @@ class HePhy : public VhtPhy
*
* \param event the event holding incoming PPDU's information
* \param status the status of the reception of the correctly received SIG-A after the
* configuration support check \return the updated status of the reception of the SIG-A
* configuration support check
* \return the updated status of the reception of the SIG-A
*/
virtual PhyFieldRxStatus ProcessSigA(Ptr<Event> event, PhyFieldRxStatus status);
@@ -468,7 +469,8 @@ class HePhy : public VhtPhy
*
* \param event the event holding incoming PPDU's information
* \param status the status of the reception of the correctly received SIG-A after the
* configuration support check \return the updated status of the reception of the SIG-B
* configuration support check
* \return the updated status of the reception of the SIG-B
*/
virtual PhyFieldRxStatus ProcessSigB(Ptr<Event> event, PhyFieldRxStatus status);

View File

@@ -62,8 +62,9 @@ class HtCapabilities : public WifiInformationElement
* Set the Supported MCS Set field in the HT Capabilities information element.
*
* \param ctrl1 the first 64 bytes of the Supported MCS Set field in the HT Capabilities
* information element \param ctrl2 the last 64 bytes of the Supported MCS Set field in the HT
* Capabilities information element
* information element
* \param ctrl2 the last 64 bytes of the Supported MCS Set field in the HT Capabilities
* information element
*/
void SetSupportedMcsSet(uint64_t ctrl1, uint64_t ctrl2);
/**

View File

@@ -82,8 +82,9 @@ class HtOperation : public WifiInformationElement
/**
* Set the Basic MCS Set field in the HT Operation information element.
*
* \param ctrl1 the first 64 bytes of the Basic MCS Set field in the HT Operation information
* element \param ctrl2 the last 64 bytes of the Basic MCS Set field in the HT Operation
* \param ctrl1 the first 64 bytes of the Basic MCS Set field in the HT Operation
* information element
* \param ctrl2 the last 64 bytes of the Basic MCS Set field in the HT Operation
* information element
*/
void SetBasicMcsSet(uint64_t ctrl1, uint64_t ctrl2);

Some files were not shown because too many files have changed in this diff Show More