This commit is contained in:
Mathieu Lacage
2008-03-24 11:43:49 -07:00
parent 80fec1898e
commit 41bbee50af

View File

@@ -10,11 +10,28 @@
namespace ns3 {
/**
* \brief build a set of CsmaNetDevice objects
*/
class CsmaHelper
{
public:
CsmaHelper ();
/**
* \param type the type of queue
* \param n1 the name of the attribute to set on the queue
* \param v1 the value of the attribute to set on the queue
* \param n2 the name of the attribute to set on the queue
* \param v2 the value of the attribute to set on the queue
* \param n3 the name of the attribute to set on the queue
* \param v3 the value of the attribute to set on the queue
* \param n4 the name of the attribute to set on the queue
* \param v4 the value of the attribute to set on the queue
*
* Set the type of queue to create and associated to each
* CsmaNetDevice created through CsmaHelper::Build.
*/
void SetQueue (std::string type,
std::string n1 = "", Attribute v1 = Attribute (),
std::string n2 = "", Attribute v2 = Attribute (),
@@ -22,15 +39,40 @@ public:
std::string n4 = "", Attribute v4 = Attribute ());
/**
* Set these parameters on each PointToPointNetDevice created
* by this helper.
* \param n1 the name of the attribute to set
* \param v1 the value of the attribute to set
*
* Set these parameters on each CsmaNetDevice created
* by CsmaHelper::Build
*/
void SetDeviceParameter (std::string n1, Attribute v1);
/**
* \param n1 the name of the attribute to set
* \param v1 the value of the attribute to set
*
* Set these parameters on each CsmaChannel created
* by CsmaHelper::Build
*/
void SetChannelParameter (std::string n1, Attribute v1);
/**
* \param c a set of nodes
*
* This method creates a simple ns3::CsmaChannel with the
* attributes configured by CsmaHelper::SetChannelParameter and
* then calls CsmaHelper::Build.
*/
NetDeviceContainer Build (const NodeContainer &c);
/**
* \param c a set of nodes
* \param channel the channel to use as a backbone.
*
* For each node in the input container, we create a ns::CsmaNetDevice with
* the requested parameters, a queue for this NetDevice, and associate
* the resulting ns3::NetDevice with the ns3::Node and ns3::CsmaChannel.
*/
NetDeviceContainer Build (const NodeContainer &c, Ptr<CsmaChannel> channel);
private: