src/internet-node/ipv4-l3-protocol.cc
changeset 1333 c0d66de933e9
parent 1325 f3be9eed2d90
child 1341 f685d4bf320f
equal deleted inserted replaced
1332:d03df65ebdb7 1333:c0d66de933e9
   151   uint32_t index = AddIpv4Interface (interface);
   151   uint32_t index = AddIpv4Interface (interface);
   152   AddHostRouteTo (Ipv4Address::GetLoopback (), index);
   152   AddHostRouteTo (Ipv4Address::GetLoopback (), index);
   153   interface->SetUp ();
   153   interface->SetUp ();
   154 }
   154 }
   155 
   155 
   156 TraceResolver *
   156 Ptr<TraceResolver>
   157 Ipv4L3Protocol::CreateTraceResolver (void)
   157 Ipv4L3Protocol::CreateTraceResolver (void)
   158 {
   158 {
   159   CompositeTraceResolver *resolver = new CompositeTraceResolver ();
   159   Ptr<CompositeTraceResolver> resolver = Create<CompositeTraceResolver> ();
   160   resolver->Add ("tx", m_txTrace, Ipv4L3ProtocolTraceContextElement(Ipv4L3ProtocolTraceContextElement::TX));
   160   resolver->Add ("tx", m_txTrace, Ipv4L3ProtocolTraceContextElement(Ipv4L3ProtocolTraceContextElement::TX));
   161   resolver->Add ("rx", m_rxTrace, Ipv4L3ProtocolTraceContextElement(Ipv4L3ProtocolTraceContextElement::RX));
   161   resolver->Add ("rx", m_rxTrace, Ipv4L3ProtocolTraceContextElement(Ipv4L3ProtocolTraceContextElement::RX));
   162   resolver->Add ("drop", m_dropTrace, Ipv4L3ProtocolTraceContextElement (Ipv4L3ProtocolTraceContextElement::DROP));
   162   resolver->Add ("drop", m_dropTrace, Ipv4L3ProtocolTraceContextElement (Ipv4L3ProtocolTraceContextElement::DROP));
   163   resolver->Add ("interfaces", 
   163   resolver->Add ("interfaces", 
   164                  MakeCallback (&Ipv4L3Protocol::InterfacesCreateTraceResolver, this));
   164                  MakeCallback (&Ipv4L3Protocol::InterfacesCreateTraceResolver, this));
   165   return resolver;
   165   return resolver;
   166 }
   166 }
   167 
   167 
   168 TraceResolver *
   168 Ptr<TraceResolver>
   169 Ipv4L3Protocol::InterfacesCreateTraceResolver (void) const
   169 Ipv4L3Protocol::InterfacesCreateTraceResolver (void) const
   170 {
   170 {
   171   ArrayTraceResolver<Ipv4Interface *, Ipv4l3ProtocolInterfaceIndex> *resolver = 
   171   Ptr<ArrayTraceResolver<Ipv4Interface *, Ipv4l3ProtocolInterfaceIndex> >resolver = 
   172     new ArrayTraceResolver<Ipv4Interface *,Ipv4l3ProtocolInterfaceIndex> 
   172     Create<ArrayTraceResolver<Ipv4Interface *,Ipv4l3ProtocolInterfaceIndex> >
   173     (MakeCallback (&Ipv4L3Protocol::GetNInterfaces, this),
   173     (MakeCallback (&Ipv4L3Protocol::GetNInterfaces, this),
   174      MakeCallback (&Ipv4L3Protocol::GetInterface, this));
   174      MakeCallback (&Ipv4L3Protocol::GetInterface, this));
   175   return resolver;
   175   return resolver;
   176 }
   176 }
   177 
   177