point-to-point: (fixes #266, merges !433) Use one channel object factory

This commit is contained in:
Tommaso Pecorella
2020-10-02 13:27:41 -07:00
committed by Tom Henderson
parent a364863e1e
commit a33e7ce7a6
2 changed files with 3 additions and 10 deletions

View File

@@ -47,9 +47,6 @@ PointToPointHelper::PointToPointHelper ()
m_queueFactory.SetTypeId ("ns3::DropTailQueue<Packet>");
m_deviceFactory.SetTypeId ("ns3::PointToPointNetDevice");
m_channelFactory.SetTypeId ("ns3::PointToPointChannel");
#ifdef NS3_MPI
m_remoteChannelFactory.SetTypeId ("ns3::PointToPointRemoteChannel");
#endif
}
void
@@ -78,9 +75,6 @@ void
PointToPointHelper::SetChannelAttribute (std::string n1, const AttributeValue &v1)
{
m_channelFactory.Set (n1, v1);
#ifdef NS3_MPI
m_remoteChannelFactory.Set (n1, v1);
#endif
}
void
@@ -273,11 +267,13 @@ PointToPointHelper::Install (Ptr<Node> a, Ptr<Node> b)
}
if (useNormalChannel)
{
m_channelFactory.SetTypeId ("ns3::PointToPointChannel");
channel = m_channelFactory.Create<PointToPointChannel> ();
}
else
{
channel = m_remoteChannelFactory.Create<PointToPointRemoteChannel> ();
m_channelFactory.SetTypeId ("ns3::PointToPointRemoteChannel");
channel = m_channelFactory.Create<PointToPointRemoteChannel> ();
Ptr<MpiReceiver> mpiRecA = CreateObject<MpiReceiver> ();
Ptr<MpiReceiver> mpiRecB = CreateObject<MpiReceiver> ();
mpiRecA->SetReceiveCallback (MakeCallback (&PointToPointNetDevice::Receive, devA));

View File

@@ -184,9 +184,6 @@ private:
ObjectFactory m_queueFactory; //!< Queue Factory
ObjectFactory m_channelFactory; //!< Channel Factory
ObjectFactory m_deviceFactory; //!< Device Factory
#ifdef NS3_MPI
ObjectFactory m_remoteChannelFactory; //!< Remote Channel Factory
#endif
};
} // namespace ns3