A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::ObjectBase Class Reference

implement the ns-3 type and attribute system More...

#include <object-base.h>

+ Inheritance diagram for ns3::ObjectBase:

Public Member Functions

virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
virtual TypeId GetInstanceTypeId (void) const =0
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::ObjectBase.

Protected Member Functions

void ConstructSelf (const AttributeConstructionList &attributes)
virtual void NotifyConstructionCompleted (void)

Private Member Functions

bool DoSet (Ptr< const AttributeAccessor > spec, Ptr< const AttributeChecker > checker, const AttributeValue &value)

Detailed Description

implement the ns-3 type and attribute system

Every class which wants to integrate in the ns-3 type and attribute system should derive from this base class. This base class provides:

  • a way to associate an ns3::TypeId to each object instance
  • a way to set and get the attributes registered in the ns3::TypeId.

Definition at line 55 of file object-base.h.

Constructor & Destructor Documentation

ns3::ObjectBase::~ObjectBase ( )
virtual

Definition at line 51 of file object-base.cc.

Member Function Documentation

void ns3::ObjectBase::ConstructSelf ( const AttributeConstructionList attributes)
protected
Parameters
attributesthe attribute values used to initialize the member variables of this object's instance.

Invoked from subclasses to initialize all of their attribute members. This method will typically be invoked automatically from ns3::CreateObject if your class derives from ns3::Object. If you derive from ns3::ObjectBase directly, you should make sure that you invoke this method from your most-derived constructor.

Definition at line 60 of file object-base.cc.

References ns3::TypeId::AttributeInformation::accessor, ns3::TypeId::ATTR_CONSTRUCT, ns3::TypeId::AttributeInformation::checker, DoSet(), ns3::AttributeConstructionList::Find(), ns3::TypeId::AttributeInformation::flags, ns3::TypeId::GetAttribute(), ns3::TypeId::GetAttributeFullName(), ns3::TypeId::GetAttributeN(), GetInstanceTypeId(), ns3::TypeId::GetName(), ns3::TypeId::GetParent(), GetTypeId(), ns3::TypeId::AttributeInformation::initialValue, ns3::TypeId::AttributeInformation::name, NotifyConstructionCompleted(), and NS_LOG_DEBUG.

Referenced by ns3::ConfigStore::ConfigStore(), ns3::Object::Construct(), and ns3::RttEstimator::RttEstimator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool ns3::ObjectBase::DoSet ( Ptr< const AttributeAccessor spec,
Ptr< const AttributeChecker checker,
const AttributeValue value 
)
private

Definition at line 139 of file object-base.cc.

References ns3::AttributeChecker::CreateValidValue().

Referenced by ConstructSelf(), SetAttribute(), and SetAttributeFailSafe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool ns3::ObjectBase::GetAttributeFailSafe ( std::string  name,
AttributeValue attribute 
) const
Parameters
namethe name of the attribute to read
attributethe attribute where the result value should be stored
Returns
true if the requested attribute was found, false otherwise.

Definition at line 222 of file object-base.cc.

References ns3::TypeId::AttributeInformation::accessor, ns3::TypeId::ATTR_GET, ns3::TypeId::AttributeInformation::checker, ns3::AttributeChecker::Create(), ns3::TypeId::AttributeInformation::flags, ns3::AttributeAccessor::Get(), GetInstanceTypeId(), ns3::AttributeAccessor::HasGetter(), ns3::PeekPointer(), ns3::AttributeValue::SerializeToString(), and ns3::StringValue::Set().

Referenced by ns3::AttributeTestCase< T >::CheckGetCodePaths().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual TypeId ns3::ObjectBase::GetInstanceTypeId ( void  ) const
pure virtual
Returns
the TypeId associated to the most-derived type of this instance.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Implemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionMtu, ns3::dsr::DsrOptionAckHeader, ns3::Icmpv6ParameterError, ns3::Icmpv6TimeExceeded, ns3::dsr::DsrOptionAckReqHeader, ns3::Icmpv6TooBig, ns3::dsr::DsrOptionRerrUnsupportHeader, ns3::Icmpv6DestinationUnreachable, ns3::Icmpv6Echo, ns3::dsr::DsrOptionRerrUnreachHeader, ns3::Icmpv6Redirection, ns3::Icmpv6RS, ns3::dsr::DsrOptionRerrHeader, ns3::SocketSetDontFragmentTag, ns3::Ipv6ExtensionAHHeader, ns3::SocketIpTtlTag, ns3::SocketAddressTag, ns3::dsr::DsrOptionAck, ns3::Ipv6ExtensionESPHeader, ns3::AnimByteTag, ns3::dsr::DsrOptionSRHeader, ns3::PbbPacket, ns3::Icmpv6RA, ns3::dsr::DsrOptionAckReq, ns3::Ipv6ExtensionLooseRoutingHeader, ns3::dsr::DsrOptionRerr, ns3::RngReq, ns3::dsr::DsrOptionRrepHeader, ns3::dsr::DsrOptionSR, ns3::Icmpv6NA, ns3::Ipv6ExtensionRoutingHeader, ns3::DsaAck, ns3::dsr::DsrOptionRrep, ns3::DsaRsp, ns3::UanHeaderRcAck, ns3::MgtDelBaHeader, ns3::Icmpv6NS, ns3::Ipv6OptionRouterAlertHeader, ns3::Ipv6ExtensionFragmentHeader, ns3::dsr::DsrOptionRreq, ns3::UlMap, ns3::DlMap, ns3::UanHeaderRcCts, ns3::MgtAddBaResponseHeader, ns3::DsaReq, ns3::aodv::RerrHeader, ns3::dsr::DsrRoutingHeader, ns3::Ipv6ExtensionDestinationHeader, ns3::dsr::DsrOptionRreqHeader, ns3::Ipv6OptionJumbogramHeader, ns3::FragmentationSubheader, ns3::MgtAddBaRequestHeader, ns3::aodv::RrepAckHeader, ns3::Icmpv6OptionHeader, ns3::WifiActionHeader, ns3::UanHeaderRcCtsGlobal, ns3::Dcd, ns3::Ipv6ExtensionHopByHopHeader, ns3::GrantManagementSubheader, ns3::Ipv6OptionPadnHeader, ns3::Ipv4Header, ns3::Ucd, ns3::dsr::DsrOptionPadnHeader, ns3::olsr::MessageHeader, ns3::aodv::RrepHeader, ns3::RngRsp, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailer< N >, ns3::BandwidthRequestHeader, ns3::Ipv6OptionPad1Header, ns3::dsr::DsrOptionPad1Header, ns3::UanHeaderRcRts, ns3::anonymous_namespace{packet-test-suite.cc}::ATestTrailer< N >, ns3::TcpHeader, ns3::Icmpv4TimeExceeded, ns3::MgtProbeResponseHeader, BenchTag< N >, ns3::LteRlcAmHeader, ns3::FlowMonitor, ns3::Icmpv6Header, ns3::UdpHeader, ns3::aodv::RreqHeader, ns3::MgtProbeRequestHeader, ns3::GenericMacHeader, ns3::CtrlBAckResponseHeader, ns3::EthernetHeader, ns3::Object, ns3::anonymous_namespace{packet-test-suite.cc}::ATestHeader< N >, ns3::olsr::PacketHeader, ns3::WifiMacHeader, ns3::EthernetTrailer, ns3::dsr::DsrFsHeader, ns3::UanHeaderCommon, ns3::MgtAssocResponseHeader, ns3::Icmpv4Echo, ns3::LteRlcHeader, ns3::Tlv, ns3::UanHeaderRcData, anonymous_namespace{packet-metadata-test.cc}::HistoryHeader< N >, ns3::aodv::DeferredRouteOutputTag, ns3::dsdv::DeferredRouteOutputTag, ns3::dsr::DsrOptionHeader, ns3::PyVizPacketTag, ns3::dot11s::PeerLinkFrameStart, ns3::ManagementMessageType, ns3::Ipv6Header, ns3::flame::FlameTag, ns3::Ipv6PacketInfoTag, ns3::QosTag, ns3::dsdv::DsdvHeader, ns3::Ipv4PacketInfoTag, ns3::dot11s::HwmpTag, ns3::PppHeader, ns3::aodv::TypeHeader, ns3::Ipv6OptionHeader, ns3::LtePdcpHeader, ns3::MacHeaderType, ns3::SequenceNumberTestObj, ns3::MgtAssocRequestHeader, ns3::ArpHeader, ns3::Icmpv4Header, ns3::anonymous_namespace{packet-test-suite.cc}::ATestTag< N >, ns3::RadiotapHeader, ns3::Ipv6ExtensionHeader, ns3::CtrlBAckRequestHeader, ns3::TxModeTag, ns3::WifiInformationElementVector, ns3::LlcSnapHeader, ns3::SnrTag, ns3::flame::FlameHeader, ns3::ConfigStore, ns3::WifiMacTrailer, ns3::Ipv4FlowProbeTag, ns3::GtpuHeader, ns3::LteRlcSduStatusTag, ns3::dot11s::MeshHeader, ns3::WimaxMacToMacHeader, ns3::PdcpTag, ns3::RlcTag, ns3::AmsduSubframeHeader, ns3::AlohaNoackMacHeader, BenchHeader< N >, ns3::LteRadioBearerTag, ns3::Ns3NscStack, ns3::LtePhyTag, MyTag, ns3::FlowIdTag, MyHeader, and ns3::DelayJitterEstimationTimestampTag.

Referenced by ns3::PacketTagList::Add(), ns3::Packet::AddByteTag(), ns3::PacketMetadata::AddHeader(), ns3::Packet::AddHeader(), ns3::Packet::AddPacketTag(), ns3::PacketMetadata::AddTrailer(), ns3::Packet::AddTrailer(), ConstructSelf(), ns3::Packet::FindFirstMatchingByteTag(), GetAttribute(), GetAttributeFailSafe(), ns3::ByteTagIterator::Item::GetTag(), ns3::PacketTagIterator::Item::GetTag(), ns3::PacketTagList::Peek(), ns3::Packet::PeekHeader(), ns3::Packet::PeekTrailer(), ns3::PacketTagList::Remove(), ns3::PacketMetadata::RemoveHeader(), ns3::Packet::RemoveHeader(), ns3::Packet::RemovePacketTag(), ns3::PacketMetadata::RemoveTrailer(), ns3::Packet::RemoveTrailer(), SetAttribute(), SetAttributeFailSafe(), TraceConnect(), TraceConnectWithoutContext(), TraceDisconnect(), and TraceDisconnectWithoutContext().

+ Here is the caller graph for this function:

TypeId ns3::ObjectBase::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::ObjectBase.

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented in ns3::EmpiricalRandomVariable, ns3::DeterministicRandomVariable, ns3::ZetaRandomVariable, ns3::ZipfRandomVariable, ns3::TriangularRandomVariable, ns3::Icmpv6OptionRedirected, ns3::ErlangRandomVariable, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, ns3::GammaRandomVariable, ns3::Icmpv6OptionMtu, ns3::dsr::DsrOptionAckHeader, ns3::Icmpv6ParameterError, ns3::LogNormalRandomVariable, ns3::Icmpv6TimeExceeded, ns3::dsr::DsrOptionAckReqHeader, ns3::Icmpv6TooBig, ns3::dsr::DsrOptionRerrUnsupportHeader, ns3::Icmpv6DestinationUnreachable, ns3::NormalRandomVariable, ns3::Icmpv6Echo, ns3::dsr::DsrOptionRerrUnreachHeader, ns3::Icmpv6Redirection, ns3::WeibullRandomVariable, ns3::Icmpv6RS, ns3::dsr::DsrOptionRerrHeader, ns3::SocketSetDontFragmentTag, ns3::Ipv6ExtensionAHHeader, ns3::SocketIpTtlTag, ns3::Ipv6ExtensionAH, ns3::SocketAddressTag, ns3::dsr::DsrOptionAck, ns3::Ipv6ExtensionESPHeader, ns3::ParetoRandomVariable, ns3::AnimByteTag, ns3::Ipv6ExtensionESP, ns3::PbbPacket, ns3::dsr::DsrOptionSRHeader, ns3::RangePropagationLossModel, ns3::Icmpv6RA, ns3::dsr::DsrOptionAckReq, ns3::GlobalRouter, ns3::Ipv6ExtensionLooseRouting, ns3::MatrixPropagationLossModel, ns3::Ipv6ExtensionLooseRoutingHeader, ns3::FixedRssLossModel, ns3::dsr::DsrOptionRerr, ns3::Ipv6ExtensionRoutingDemux, ns3::RngReq, ns3::NakagamiPropagationLossModel, ns3::dsr::DsrOptionRrepHeader, ns3::ofi::LearningController, ns3::dsr::DsrOptionSR, ns3::Icmpv6NA, ns3::ExponentialRandomVariable, ns3::Ipv6ExtensionRoutingHeader, ns3::DsaAck, ns3::Ipv6ExtensionRouting, ns3::ThreeLogDistancePropagationLossModel, ns3::dsr::DsrOptionRrep, ns3::DsaRsp, ns3::MgtDelBaHeader, ns3::LogDistancePropagationLossModel, ns3::Icmpv6NS, ns3::Ipv6OptionRouterAlertHeader, ns3::ofi::Controller, ns3::Ipv6ExtensionFragmentHeader, ns3::UanHeaderRcAck, ns3::UlMap, ns3::DlMap, ns3::dsr::DsrOptionRreq, ns3::SequentialRandomVariable, ns3::MgtAddBaResponseHeader, ns3::dsr::RouteCache, ns3::DsaReq, ns3::aodv::RerrHeader, ns3::ReceiveListErrorModel, ns3::dsr::DsrOptionPadn, ns3::dsr::DsrRoutingHeader, ns3::Ipv6ExtensionDestinationHeader, ns3::dsr::DsrOptionRreqHeader, ns3::FragmentationSubheader, ns3::ConstantRandomVariable, ns3::Ipv6OptionJumbogramHeader, ns3::UniformDiscPositionAllocator, ns3::MgtAddBaRequestHeader, ns3::UanHeaderRcCts, ns3::TwoRayGroundPropagationLossModel, ns3::aodv::RrepAckHeader, ns3::Ipv6ExtensionFragment, ns3::Ipv6OptionRouterAlert, ns3::ListErrorModel, ns3::Icmpv6OptionHeader, ns3::WifiActionHeader, ns3::dsr::DsrOptionPad1, ns3::Dcd, ns3::RandomDiscPositionAllocator, ns3::GrantManagementSubheader, ns3::Ipv6ExtensionHopByHopHeader, ns3::Ipv4Header, ns3::Ucd, ns3::UanPropModel, ns3::Ipv6OptionPadnHeader, ns3::dsr::DsrOptionPadnHeader, ns3::Ipv6ExtensionDestination, ns3::RandomBoxPositionAllocator, ns3::olsr::MessageHeader, ns3::Ipv6OptionJumbogram, ns3::UanHeaderRcCtsGlobal, ns3::aodv::RrepHeader, ns3::RngRsp, ns3::RandomRectanglePositionAllocator, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailer< N >, ns3::FriisPropagationLossModel, ns3::BandwidthRequestHeader, ns3::UanPhyGen, ns3::LteTestMac, ns3::UanPhy, ns3::RateErrorModel, ns3::RttMeanDeviation, ns3::Ipv6OptionPad1Header, ns3::WifiPhy, ns3::dsr::DsrOptionPad1Header, ns3::Ipv6ExtensionHopByHop, ns3::UniformRandomVariable, ns3::WifiRadioEnergyModel, ns3::Ipv6OptionPadn, ns3::LteRlcSm, ns3::TcpHeader, ns3::UanMacRc, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailerBase, ns3::anonymous_namespace{packet-test-suite.cc}::ATestTrailer< N >, ns3::Icmpv4TimeExceeded, ns3::MgtProbeResponseHeader, ns3::UanPhyCalcSinrFhFsk, ns3::TopologyReader, ns3::LteRlcAmHeader, ns3::FlowMonitor, BenchTag< N >, ns3::SameRoomPositionAllocator, ns3::UanTransducer, ns3::Icmpv6Header, ns3::RandomPropagationLossModel, ns3::LteTestPdcp, ns3::UdpHeader, ns3::LteEnbRrc, ns3::aodv::RreqHeader, ns3::MgtProbeRequestHeader, ns3::ErrorModel, ns3::UanHeaderRcRts, ns3::GenericMacHeader, ns3::CtrlBAckResponseHeader, ns3::Ipv6OptionPad1, ns3::EthernetHeader, ns3::TapBridge, ns3::Icmpv4DestinationUnreachable, ns3::dsr::DsrRouting, ns3::UanPhyPer, ns3::UanPhyCalcSinrDefault, ns3::olsr::PacketHeader, ns3::ConstantSpeedPropagationDelayModel, ns3::WifiMacHeader, ns3::dsr::RreqTable, ns3::LteSpectrumPhy, ns3::DistributedSimulatorImpl, ns3::HalfDuplexIdealPhy, ns3::anonymous_namespace{packet-test-suite.cc}::ATestHeader< N >, ns3::EthernetTrailer, ns3::GridPositionAllocator, ns3::MinstrelWifiManager, ns3::OnOffApplication, ns3::OpenFlowSwitchNetDevice, ns3::MultiModelSpectrumChannel, ns3::WaypointMobilityModel, ns3::dsr::DsrFsHeader, ns3::RedQueue, ns3::AthstatsWifiTraceSink, ns3::AttributeObjectTest, ns3::MgtAssocResponseHeader, ns3::WifiRemoteStationManager, ns3::flame::FlameProtocol, ns3::GaussMarkovMobilityModel, ns3::EdcaTxopN, ns3::RandomRoomPositionAllocator, ns3::Ipv6, ns3::olsr::RoutingProtocol, ns3::WimaxNetDevice, ns3::dsr::DsrOptions, ns3::PacketSocket, ns3::Ipv4L3Protocol, ns3::CsmaChannel, ns3::UeInfo, ns3::LteRlcHeader, anonymous_namespace{object-test-suite.cc}::DerivedB, ns3::Ipv4, ns3::PfFfMacScheduler, ns3::NetDevice, ns3::UanPhyDual, ns3::Icmpv4Echo, ns3::RadioBearerStatsCalculator, ns3::RandomPropagationDelayModel, ns3::BinaryErrorModel, anonymous_namespace{packet-metadata-test.cc}::HistoryHeader< N >, ns3::UplinkSchedulerMBQoS, ns3::LiIonEnergySource, ns3::EnergySource, ns3::dsr::GraReply, ns3::Ipv4GlobalRouting, ns3::Ipv4StaticRouting, ns3::PacketSink, ns3::Ipv6RawSocketImpl, ns3::LteUeRrc, ns3::ListPositionAllocator, ns3::PyVizPacketTag, ns3::DcaTxop, ns3::Ipv6RawSocketFactory, ns3::dot11s::PeerLinkFrameStart, ns3::ManagementMessageType, ns3::BridgeNetDevice, ns3::LtePhy, ns3::LteUePhy, ns3::LteRadioBearerTagUdpClient, ns3::flame::FlameTag, ns3::flame::FlameRtable, ns3::Socket, ns3::AlohaNoackNetDevice, ns3::VirtualNetDevice, ns3::aodv::DeferredRouteOutputTag, ns3::Object, ns3::dsdv::DeferredRouteOutputTag, ns3::dsr::DsrOptionHeader, ns3::RrFfMacScheduler, ns3::UanMacRcGw, ns3::UanPhyPerUmodem, ns3::YansWifiPhy, ns3::Ipv6L3Protocol, ns3::TcpSocket, ns3::dot11s::HwmpRtable, ns3::BSSchedulerRtps, ns3::SubscriberStationNetDevice, ns3::Derived, ns3::Ipv6PacketInfoTag, ns3::Application, ns3::QosTag, ns3::WimaxPhy, anonymous_namespace{object-test-suite.cc}::BaseB, ns3::dsdv::DsdvHeader, ns3::Ipv4PacketInfoTag, ns3::Ipv6Header, ns3::TcpSocketBase, ns3::dot11s::HwmpTag, ns3::BaseStationNetDevice, ns3::Ipv6StaticRouting, ns3::PppHeader, ns3::aodv::TypeHeader, ns3::CsmaNetDevice, ns3::EpcHelper, ns3::LteEnbPhy, ns3::LtePdcpHeader, ns3::PointToPointNetDevice, ns3::AcousticModemEnergyModel, ns3::HybridBuildingsPropagationLossModel, ns3::RandomVariableStream, ns3::RttEstimator, ns3::MacStatsCalculator, ns3::RemSpectrumPhy, ns3::HierarchicalMobilityModel, ns3::UanNetDevice, ns3::UplinkSchedulerRtps, ns3::BuildingsPropagationLossModel, ns3::Ipv4NixVectorRouting, ns3::WaveformGenerator, ns3::TcpL4Protocol, ns3::MeshWifiInterfaceMac, ns3::Node, ns3::JakesProcess, ns3::YansErrorRateModel, ns3::UdpTraceClient, ns3::dsdv::RoutingProtocol, ns3::IpL4Protocol, ns3::Ipv6RoutingProtocol, ns3::LteHelper, ns3::LteEnbMac, ns3::LteRlc, ns3::NonCommunicatingNetDevice, ns3::BandwidthManager, ns3::aodv::RoutingProtocol, ns3::Scheduler, ns3::ArpCache, ns3::Ipv6Interface, ns3::Ipv6OptionHeader, ns3::NscTcpSocketImpl, ns3::UanChannel, ns3::NdiscCache, ns3::FfMacScheduler, ns3::RandomWaypointMobilityModel, ns3::SteadyStateRandomWaypointMobilityModel, ns3::SpectrumAnalyzer, ns3::WifiMacQueue, ns3::SimpleOfdmWimaxPhy, ns3::Radvd, ns3::EmuNetDevice, ns3::Ipv6Extension, ns3::Ipv6ListRouting, ns3::dot11s::PeerManagementProtocol, ns3::Cost231PropagationLossModel, ns3::WifiNetDevice, ns3::MacHeaderType, ns3::AntennaModel, ns3::BulkSendApplication, ns3::SeqTsHeader, ns3::DeviceEnergyModel, ns3::RvBatteryModel, ns3::Ipv4RoutingProtocol, ns3::UdpSocketImpl, ns3::LteEnbNetDevice, ns3::LteInterference, ns3::LteUeNetDevice, ns3::MeshPointDevice, ns3::UanHeaderRcData, ns3::MgtAssocRequestHeader, ns3::RegularWifiMac, ns3::Ping6, ns3::ArpHeader, ns3::Ipv4Interface, ns3::Ipv6Option, ns3::EpcSgwPgwApplication, ns3::RadiotapHeader, ns3::PropagationLossModel, ns3::SpectrumPhy, ns3::YansWifiChannel, ns3::GridBuildingAllocator, ns3::ArpL3Protocol, ns3::RadioEnvironmentMapHelper, ns3::LteNetDevice, ns3::SocketFactory, ns3::UanNoiseModelDefault, ns3::CtrlBAckRequestHeader, ns3::TxModeTag, ns3::ParabolicAntennaModel, ns3::BuildingsMobilityModel, ns3::CalendarScheduler, ns3::HeapScheduler, ns3::EnergySourceContainer, ns3::Icmpv4Header, ns3::Icmpv6L4Protocol, ns3::UdpL4Protocol, ns3::TraceFadingLossModel, ns3::LteTestRrc, ns3::dot11s::HwmpProtocol, ns3::PointToPointChannel, ns3::SpectrumChannel, ns3::SpectrumPropagationLossModel, ns3::InetTopologyReader, ns3::UanHeaderCommon, ns3::UanMac, ns3::WifiInformationElementVector, ns3::BSSchedulerSimple, ns3::BSScheduler, ns3::ServiceFlowManager, ns3::NscTcpL4Protocol, ns3::TcpSocketFactory, ns3::UdpSocket, ns3::EpcEnbApplication, ns3::LteSimpleHelper, ns3::RandomWalk2dMobilityModel, ns3::OkumuraHataPropagationLossModel, ns3::UanMacCw, ns3::UplinkScheduler, ns3::CosineAntennaModel, ns3::UdpServer, ns3::Ipv4ListRouting, ns3::ErrorNetDevice, ns3::dot11s::PeerLink, ns3::MeshL2RoutingProtocol, ns3::LlcSnapHeader, ns3::Queue, ns3::SimpleNetDevice, ns3::ItuR1411LosPropagationLossModel, ns3::ItuR1411NlosOverRooftopPropagationLossModel, ns3::UanPhyCalcSinrDual, ns3::IdealWifiManager, ns3::SnrTag, ns3::UdpClient, ns3::Synchronizer, ns3::LteAmc, ns3::LteTestUePhy, ns3::flame::FlameHeader, ns3::RandomDirection2dMobilityModel, ns3::Kun2600MhzPropagationLossModel, ns3::OrbisTopologyReader, ns3::UanMacAloha, ns3::UanPhyPerGenDefault, ns3::UanPhyCalcSinr, ns3::VisualSimulatorImpl, ns3::WifiMac, ns3::UplinkSchedulerSimple, ns3::ConnectionManager, ns3::UdpEchoServer, ns3::ConfigStore, anonymous_namespace{object-test-suite.cc}::DerivedA, ns3::Ipv6ExtensionHeader, ns3::Channel, ns3::SingleModelSpectrumChannel, ns3::RocketfuelTopologyReader, ns3::StaWifiMac, ns3::WifiMacTrailer, ns3::RandomBuildingPositionAllocator, ns3::ConfigTestObject, AlternateTestObject, ns3::Ipv6ExtensionDemux, ns3::Ipv6OptionDemux, ns3::TcpTahoe, ns3::LteUeMac, ns3::dot11s::AirtimeLinkMetricCalculator, ns3::MpiReceiver, ns3::Header, ns3::ArfWifiManager, ns3::MsduAggregator, ns3::WifiChannel, ns3::Ipv4FlowProbeTag, ns3::LtePdcp, ns3::FriisSpectrumPropagationLossModel, ns3::OnoeWifiManager, ns3::SSLinkManager, ns3::SSScheduler, ns3::WimaxConnection, ns3::OhBuildingsPropagationLossModel, ns3::ListScheduler, ns3::TcpRxBuffer, ns3::TcpTxBuffer, ns3::UdpSocketFactory, ns3::LteStatsCalculator, ns3::Trailer, ns3::anonymous_namespace{packet-test-suite.cc}::ATestTag< N >, ns3::UdpEchoClient, ns3::Building, ns3::TcpRfc793, ns3::LteHexGridEnbTopologyHelper, ns3::GtpuHeader, ns3::LteRlcSduStatusTag, ns3::LteSimpleNetDevice, ns3::dot11s::MeshHeader, ns3::MobilityModel, ns3::SequenceNumberTestObj, ns3::PcapFileWrapper, ns3::AmrrWifiManager, ns3::ApWifiMac, ns3::RraaWifiManager, ns3::WimaxChannel, ns3::WimaxMacToMacHeader, ns3::IsotropicAntennaModel, ns3::BuildingListPriv, ns3::ItuR1238PropagationLossModel, ns3::MapScheduler, ns3::RealtimeSimulatorImpl, ns3::LoopbackNetDevice, ns3::TcpReno, ns3::ErrorChannel, ns3::LteRlcAm, ns3::UanPropModelIdeal, ns3::AarfcdWifiManager, ns3::CaraWifiManager, ns3::NistErrorRateModel, ns3::BSLinkManager, ns3::BasicEnergySource, ns3::Ipv4RawSocketFactory, ns3::PdcpTag, ns3::LteRadioBearerInfo, ns3::LteRlcUm, ns3::FlameStack, ns3::NodeListPriv, ns3::PropagationDelayModel, ns3::UanPropModelThorp, ns3::UanTransducerHd, ns3::BurstProfileManager, ns3::IpcsClassifier, ns3::SSManager, ns3::WimaxMacQueue, ns3::V4Ping, ns3::BridgeChannel, ns3::DefaultSimulatorImpl, ns3::TcpNewReno, ns3::RlcTag, ns3::Tag, ns3::SimpleChannel, ns3::JakesPropagationLossModel, ns3::AarfWifiManager, ns3::AdhocWifiMac, ns3::AmsduSubframeHeader, ns3::ConstantRateWifiManager, ns3::SimulatorImpl, ns3::ConstantVelocityMobilityModel, ns3::PositionAllocator, ns3::PacketBurst, ns3::PacketSocketFactory, ns3::PointToPointRemoteChannel, ns3::AlohaNoackMacHeader, ns3::WifiPhyStateHelper, BenchHeader< N >, ns3::LteRadioBearerTag, ns3::Dot11sStack, ns3::ChannelListPriv, ns3::DropTailQueue, anonymous_namespace{packet-metadata-test.cc}::HistoryHeaderBase, ns3::ErrorRateModel, ns3::ConstantPositionMobilityModel, ns3::ConstantSpectrumPropagationLossModel, ns3::Dcf, ns3::MsduStandardAggregator, ns3::Ns3NscStack, ns3::LtePhyTag, ns3::ConstantAccelerationMobilityModel, anonymous_namespace{object-test-suite.cc}::BaseA, MyTag, ns3::UanNoiseModel, TestObject, ns3::FlowIdTag, ns3::SimpleDeviceEnergyModel, MyHeader, ns3::Ipv4RawSocketImpl, ns3::Icmpv4L4Protocol, ns3::Chunk, ns3::DelayJitterEstimationTimestampTag, and A.

Definition at line 45 of file object-base.cc.

References ns3::GetObjectIid().

Referenced by ConstructSelf().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::ObjectBase::NotifyConstructionCompleted ( void  )
protectedvirtual

This method is invoked once all member attributes have been initialized. Subclasses can override this method to be notified of this event but if they do this, they must chain up to their parent's NotifyConstructionCompleted method.

Reimplemented in ns3::FlowMonitor, and ns3::VisualSimulatorImpl.

Definition at line 56 of file object-base.cc.

Referenced by ConstructSelf().

+ Here is the caller graph for this function:

void ns3::ObjectBase::SetAttribute ( std::string  name,
const AttributeValue value 
)
Parameters
namethe name of the attribute to set
valuethe name of the attribute to set

Set a single attribute. This cannot fail: if the input is invalid, it will crash immediately.

Definition at line 152 of file object-base.cc.

References ns3::TypeId::AttributeInformation::accessor, ns3::TypeId::ATTR_SET, ns3::TypeId::AttributeInformation::checker, DoSet(), ns3::TypeId::AttributeInformation::flags, GetInstanceTypeId(), ns3::AttributeAccessor::HasSetter(), and NS_FATAL_ERROR.

Referenced by ns3::UanMacRc::Associate(), ns3::UanMacRc::AssociateTimeout(), ns3::cell_edited_callback(), FemtocellBlockAllocator::Create(), ns3::TraceFadingLossModel::DoCalcRxPowerSpectralDensity(), UanTest::DoOnePhyTest(), ns3::BufferTest::DoRun(), ns3::LenaMimoTestCase::DoRun(), ns3::ItuR1411LosPropagationLossModelTestCase::DoRun(), ns3::ItuR1411NlosOverRooftopPropagationLossModelTestCase::DoRun(), ns3::OkumuraHataPropagationLossModelTestCase::DoRun(), ns3::LenaPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LteRlcUmE2eTestCase::DoRun(), ns3::LteRlcAmE2eTestCase::DoRun(), ErrorModelSimple::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::Ipv6L3ProtocolTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LteFadingTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), NscTcpLossTestCase1::DoRun(), Ns3TcpLossTestCase::DoRun(), Ns3TcpStateTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), RandomVariableStreamUniformTestCase::DoRun(), ns3::EpcS1uDlTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), NscTcpLossTestCase2::DoRun(), RandomVariableStreamUniformAntitheticTestCase::DoRun(), ns3::EpcS1uUlTestCase::DoRun(), RandomVariableStreamConstantTestCase::DoRun(), RandomVariableStreamSequentialTestCase::DoRun(), RandomVariableStreamNormalTestCase::DoRun(), ns3::ObjectVectorTraceConfigTestCase::DoRun(), RandomVariableStreamNormalAntitheticTestCase::DoRun(), RandomVariableStreamExponentialTestCase::DoRun(), RandomVariableStreamExponentialAntitheticTestCase::DoRun(), RandomVariableStreamParetoTestCase::DoRun(), RandomVariableStreamParetoAntitheticTestCase::DoRun(), RandomVariableStreamWeibullTestCase::DoRun(), RandomVariableStreamWeibullAntitheticTestCase::DoRun(), RandomVariableStreamLogNormalTestCase::DoRun(), RandomVariableStreamLogNormalAntitheticTestCase::DoRun(), RandomVariableStreamGammaTestCase::DoRun(), RandomVariableStreamGammaAntitheticTestCase::DoRun(), RandomVariableStreamErlangTestCase::DoRun(), RandomVariableStreamErlangAntitheticTestCase::DoRun(), RandomVariableStreamZipfTestCase::DoRun(), RandomVariableStreamZipfAntitheticTestCase::DoRun(), RandomVariableStreamZetaTestCase::DoRun(), RandomVariableStreamZetaAntitheticTestCase::DoRun(), RandomVariableStreamEmpiricalAntitheticTestCase::DoRun(), ns3::Ipv4RawSocketImplTest::DoSendData_IpHdr(), ns3::Ipv4HeaderTest::DoSendData_IpHdr_Dscp(), ns3::dot11s::HwmpProtocol::DoStart(), ns3::dot11s::PeerManagementProtocol::DoStart(), ns3::MeshWifiInterfaceMac::DoStart(), ns3::EpcHelper::EpcHelper(), FemtocellBlockAllocator::FemtocellBlockAllocator(), ns3::LteHelper::InstallSingleEnbDevice(), ns3::JakesPropagationLossModel::JakesPropagationLossModel(), ns3::LteFadingTestSuite::LteFadingTestSuite(), ns3::LteSpectrumPhy::LteSpectrumPhy(), main(), ns3::aodv::RoutingProtocol::NotifyInterfaceUp(), ns3::dsdv::RoutingProtocol::NotifyInterfaceUp(), ns3::UanMacRc::RtsTimeout(), NetAnimExperiment::Run(), ns3::UanMacRc::ScheduleData(), ns3::Ping6::Send(), ns3::UanMacRc::SendRts(), ns3::Config::MatchContainer::Set(), ns3::HybridBuildingsPropagationLossModel::SetCitySize(), ns3::HybridBuildingsPropagationLossModel::SetEnvironment(), ns3::HybridBuildingsPropagationLossModel::SetFrequency(), ns3::UanPhyDual::SetModesPhy1(), ns3::UanPhyDual::SetModesPhy2(), ns3::UanPhyDual::SetPerModelPhy1(), ns3::UanPhyDual::SetPerModelPhy2(), ns3::HybridBuildingsPropagationLossModel::SetRooftopHeight(), ns3::UanPhyDual::SetSinrModelPhy1(), ns3::UanPhyDual::SetSinrModelPhy2(), ns3::V4Ping::StartApplication(), ns3::Ping6::StartApplication(), ns3::Radvd::StartApplication(), ns3::Ipv4FragmentationTest::StartClient(), ns3::Ipv6FragmentationTest::StartClient(), ns3::SteadyStateRandomWaypointMobilityModel::SteadyStateStart(), and NetAnimExperiment::UpdatePositions().

+ Here is the call graph for this function:

bool ns3::ObjectBase::SetAttributeFailSafe ( std::string  name,
const AttributeValue value 
)
Parameters
namethe name of the attribute to set
valuethe name of the attribute to set
Returns
true if the requested attribute exists and could be set, false otherwise.

Definition at line 171 of file object-base.cc.

References ns3::TypeId::AttributeInformation::accessor, ns3::TypeId::ATTR_SET, ns3::TypeId::AttributeInformation::checker, DoSet(), ns3::TypeId::AttributeInformation::flags, GetInstanceTypeId(), and ns3::AttributeAccessor::HasSetter().

Referenced by WaypointLazyNotifyTrue::DoRun(), WaypointInitialPositionIsWaypoint::DoRun(), ns3::AttributeTestCase< T >::DoRun(), and ns3::LteHelper::InstallSingleEnbDevice().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool ns3::ObjectBase::TraceConnect ( std::string  name,
std::string  context,
const CallbackBase cb 
)
Parameters
namethe name of the targetted trace source
contextthe trace context associated to the callback
cbthe callback to connect to the trace source.

The targetted trace source should be registered with TypeId::AddTraceSource.

Definition at line 268 of file object-base.cc.

References GetInstanceTypeId(), and ns3::TypeId::LookupTraceSourceByName().

Referenced by ns3::AnimationInterface::ConnectLteEnb(), and ns3::AnimationInterface::ConnectLteUe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool ns3::ObjectBase::TraceDisconnect ( std::string  name,
std::string  context,
const CallbackBase cb 
)
Parameters
namethe name of the targetted trace source
contextthe trace context associated to the callback
cbthe callback to disconnect from the trace source.

The targetted trace source should be registered with TypeId::AddTraceSource.

Definition at line 292 of file object-base.cc.

References GetInstanceTypeId(), and ns3::TypeId::LookupTraceSourceByName().

+ Here is the call graph for this function:

bool ns3::ObjectBase::TraceDisconnectWithoutContext ( std::string  name,
const CallbackBase cb 
)
Parameters
namethe name of the targetted trace source
cbthe callback to disconnect from the trace source.

The targetted trace source should be registered with TypeId::AddTraceSource.

Definition at line 280 of file object-base.cc.

References GetInstanceTypeId(), and ns3::TypeId::LookupTraceSourceByName().

Referenced by ns3::Config::MatchContainer::DisconnectWithoutContext(), ns3::dsr::DsrRouting::DoDispose(), ns3::aodv::RoutingProtocol::NotifyInterfaceDown(), ns3::HierarchicalMobilityModel::SetChild(), and ns3::HierarchicalMobilityModel::SetParent().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:


The documentation for this class was generated from the following files: