implement the ns-3 type and attribute system More...
#include <object-base.h>
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) |
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) |
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:
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 55 of file object-base.h.
|
virtual |
Definition at line 53 of file object-base.cc.
References NS_LOG_FUNCTION.
|
protected |
attributes | the 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 65 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(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.
Referenced by ns3::ConfigStore::ConfigStore(), ns3::Object::Construct(), and ns3::RttEstimator::RttEstimator().
|
private |
Definition at line 145 of file object-base.cc.
References ns3::AttributeChecker::CreateValidValue(), and NS_LOG_FUNCTION.
Referenced by ConstructSelf(), SetAttribute(), and SetAttributeFailSafe().
void ns3::ObjectBase::GetAttribute | ( | std::string | name, |
AttributeValue & | value | ||
) | const |
name | the name of the attribute to read |
value | a reference to the value where the result should be stored. |
If the input attribute name does not exist, this method crashes.
Definition at line 198 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(), NS_FATAL_ERROR, NS_LOG_FUNCTION, ns3::PeekPointer(), ns3::AttributeValue::SerializeToString(), and ns3::StringValue::Set().
Referenced by ns3::DistributedSimulatorImpl::CalculateLookAhead(), ns3::cell_data_function_col_1(), ns3::cell_tooltip_callback(), ns3::LteRrcConnectionEstablishmentTestCase::CheckConnected(), ns3::LteX2HandoverTestCase::CheckConnected(), ns3::LenaMimoTestCase::DoRun(), RootNamespaceConfigTestCase::DoRun(), UnderRootNamespaceConfigTestCase::DoRun(), ObjectVectorConfigTestCase::DoRun(), ObjectVectorAttributeTestCase::DoRun(), ObjectMapAttributeTestCase::DoRun(), IntegerTraceSourceAttributeTestCase::DoRun(), PointerAttributeTestCase::DoRun(), ns3::UanPhyDual::GetModesPhy1(), ns3::UanPhyDual::GetModesPhy2(), ns3::RandomBuildingPositionAllocator::GetNext(), ns3::RandomRoomPositionAllocator::GetNext(), ns3::UanPhyDual::GetPerModelPhy1(), ns3::UanPhyDual::GetPerModelPhy2(), ns3::UanPhyDual::GetSinrModelPhy1(), ns3::UanPhyDual::GetSinrModelPhy2(), main(), ns3::Packet::Print(), and ns3::QosWifiMacHelper::Setup().
bool ns3::ObjectBase::GetAttributeFailSafe | ( | std::string | name, |
AttributeValue & | attribute | ||
) | const |
name | the name of the attribute to read |
attribute | the attribute where the result value should be stored |
Definition at line 233 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(), NS_LOG_FUNCTION, ns3::PeekPointer(), ns3::AttributeValue::SerializeToString(), and ns3::StringValue::Set().
Referenced by AttributeTestCase< T >::CheckGetCodePaths().
|
pure virtual |
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::SocketIpv6TclassTag, ns3::Icmpv6Echo, ns3::SocketIpTosTag, ns3::SocketSetDontFragmentTag, ns3::dsr::DsrOptionRerrUnreachHeader, ns3::SocketIpv6HopLimitTag, ns3::SocketIpTtlTag, ns3::Icmpv6Redirection, ns3::SocketAddressTag, ns3::Icmpv6RS, ns3::dsr::DsrOptionRerrHeader, ns3::Ipv6ExtensionAHHeader, ns3::AnimByteTag, ns3::dsr::DsrOptionAck, ns3::Ipv6ExtensionESPHeader, ns3::dsr::DsrOptionSRHeader, ns3::PbbPacket, ns3::dsr::DsrOptionAckReq, ns3::Icmpv6RA, ns3::IdealHandoverCommandHeader, ns3::Ipv6ExtensionLooseRoutingHeader, ns3::dsr::DsrOptionRerr, ns3::IdealHandoverPreparationInfoHeader, 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::dsr::DsrOptionRreq, ns3::Ipv6ExtensionFragmentHeader, ns3::UlMap, ns3::DlMap, ns3::UanHeaderRcCts, ns3::MgtAddBaResponseHeader, ns3::EpcX2ResourceStatusUpdateHeader, ns3::DsaReq, ns3::aodv::RerrHeader, ns3::dsr::DsrRoutingHeader, ns3::Ipv6ExtensionDestinationHeader, ns3::EpcX2LoadInformationHeader, ns3::dsr::DsrOptionRreqHeader, ns3::Ipv6OptionJumbogramHeader, ns3::FragmentationSubheader, ns3::MgtAddBaRequestHeader, ns3::aodv::RrepAckHeader, ns3::Icmpv6OptionHeader, ns3::EpcX2UeContextReleaseHeader, ns3::WifiActionHeader, ns3::UanHeaderRcCtsGlobal, ns3::Dcd, ns3::Ipv6ExtensionHopByHopHeader, ns3::GrantManagementSubheader, ns3::Ipv6OptionPadnHeader, ns3::Ipv4Header, ns3::Ucd, ns3::EpcX2SnStatusTransferHeader, ns3::dsr::DsrOptionPadnHeader, ns3::DeviceNameTag, ns3::olsr::MessageHeader, ns3::aodv::RrepHeader, ns3::RngRsp, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailer< N >, ns3::EpcX2HandoverPreparationFailureHeader, ns3::PacketSocketTag, ns3::BandwidthRequestHeader, ns3::RttMeanDeviation, ns3::Ipv6OptionPad1Header, ns3::dsr::DsrOptionPad1Header, ns3::UanHeaderRcRts, anonymous_namespace{packet-test-suite.cc}::ATestTrailer< N >, ns3::TcpHeader, ns3::Icmpv4TimeExceeded, ns3::MgtProbeResponseHeader, ns3::EpcX2HandoverRequestAckHeader, BenchTag< N >, ns3::LteRlcAmHeader, ns3::FlowMonitor, ns3::Icmpv6Header, ns3::UdpHeader, ns3::aodv::RreqHeader, ns3::MgtProbeRequestHeader, ns3::GenericMacHeader, ns3::CtrlBAckResponseHeader, ns3::EthernetHeader, ns3::Object, anonymous_namespace{packet-test-suite.cc}::ATestHeader< N >, ns3::olsr::PacketHeader, ns3::WifiMacHeader, ns3::EthernetTrailer, ns3::dsr::DsrFsHeader, ns3::EpcX2HandoverRequestHeader, 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::RttEstimator, ns3::Ipv6PacketInfoTag, ns3::QosTag, ns3::dsdv::DsdvHeader, ns3::Ipv4PacketInfoTag, ns3::dot11s::HwmpTag, ns3::PppHeader, ns3::aodv::TypeHeader, ns3::Ipv6OptionHeader, ns3::LtePdcpHeader, ns3::MacHeaderType, SequenceNumberTestObj, ns3::MgtAssocRequestHeader, ns3::ArpHeader, ns3::Icmpv4Header, anonymous_namespace{packet-test-suite.cc}::ATestTag< N >, ns3::RadiotapHeader, ns3::Ipv6ExtensionHeader, ns3::CtrlBAckRequestHeader, ns3::TxModeTag, ns3::WifiInformationElementVector, ns3::LlcSnapHeader, ns3::flame::FlameHeader, ns3::ConfigStore, ns3::RrcAsn1Header, ns3::WifiMacTrailer, ns3::Asn1Header, ns3::GtpuHeader, ns3::Ipv4FlowProbeTag, ns3::LteRlcSduStatusTag, ns3::dot11s::MeshHeader, ns3::WimaxMacToMacHeader, ns3::PdcpTag, ns3::EpcX2Header, ns3::EpsBearerTag, ns3::RlcTag, ns3::AmsduSubframeHeader, ns3::AlohaNoackMacHeader, BenchHeader< N >, ns3::LteRadioBearerTag, ns3::SnrTag, ns3::Ns3NscStack, ns3::LtePhyTag, MyTag, ns3::FlowIdTag, MyHeader, and ns3::DelayJitterEstimationTimestampTag.
Referenced by ns3::PacketTagList::Add(), ns3::Packet::AddByteTag(), ns3::PacketMetadata::AddHeader(), ns3::PacketMetadata::AddTrailer(), ConstructSelf(), ns3::Packet::FindFirstMatchingByteTag(), GetAttribute(), GetAttributeFailSafe(), ns3::ByteTagIterator::Item::GetTag(), ns3::PacketTagIterator::Item::GetTag(), ns3::PacketTagList::Peek(), ns3::PacketTagList::Remove(), ns3::PacketMetadata::RemoveHeader(), ns3::PacketMetadata::RemoveTrailer(), SetAttribute(), SetAttributeFailSafe(), TraceConnect(), TraceConnectWithoutContext(), TraceDisconnect(), and TraceDisconnectWithoutContext().
|
static |
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::SocketIpv6TclassTag, ns3::Icmpv6Echo, ns3::SocketIpTosTag, ns3::SocketSetDontFragmentTag, ns3::dsr::DsrOptionRerrUnreachHeader, ns3::SocketIpv6HopLimitTag, ns3::SocketIpTtlTag, ns3::SocketAddressTag, ns3::Icmpv6Redirection, ns3::WeibullRandomVariable, ns3::Icmpv6RS, ns3::dsr::DsrOptionRerrHeader, ns3::Ipv6ExtensionAHHeader, ns3::AnimByteTag, ns3::Ipv6ExtensionAH, ns3::dsr::DsrOptionAck, ns3::Ipv6ExtensionESPHeader, ns3::ParetoRandomVariable, ns3::Ipv6ExtensionESP, ns3::PbbPacket, ns3::dsr::DsrOptionSRHeader, ns3::RangePropagationLossModel, ns3::dsr::DsrOptionAckReq, ns3::Icmpv6RA, ns3::IdealHandoverCommandHeader, ns3::GlobalRouter, ns3::Ipv6ExtensionLooseRouting, ns3::MatrixPropagationLossModel, ns3::Ipv6ExtensionLooseRoutingHeader, ns3::FixedRssLossModel, ns3::dsr::DsrOptionRerr, ns3::Ipv6ExtensionRoutingDemux, ns3::IdealHandoverPreparationInfoHeader, ns3::RngReq, ns3::NakagamiPropagationLossModel, ns3::dsr::DsrOptionRrepHeader, ns3::ofi::LearningController, ns3::dsr::DsrOptionSR, ns3::Icmpv6NA, ns3::ExponentialRandomVariable, ns3::Ipv6ExtensionRoutingHeader, ns3::DsaAck, ns3::Ipv6ExtensionRouting, ns3::LteEnbRrc, ns3::ThreeLogDistancePropagationLossModel, ns3::dsr::DsrOptionRrep, ns3::ReceiveListErrorModel, ns3::DsaRsp, ns3::MgtDelBaHeader, ns3::LogDistancePropagationLossModel, ns3::Icmpv6NS, ns3::Ipv6OptionRouterAlertHeader, ns3::ofi::Controller, ns3::ListErrorModel, ns3::dsr::DsrOptionRreq, ns3::Ipv6ExtensionFragmentHeader, ns3::UanHeaderRcAck, ns3::UlMap, ns3::DlMap, ns3::SequentialRandomVariable, ns3::MgtAddBaResponseHeader, ns3::dsr::RouteCache, ns3::EpcX2ResourceStatusUpdateHeader, ns3::DsaReq, ns3::aodv::RerrHeader, ns3::dsr::DsrOptionPadn, ns3::dsr::DsrRoutingHeader, ns3::EpcX2LoadInformationHeader, ns3::Ipv6ExtensionDestinationHeader, ns3::dsr::DsrOptionRreqHeader, ns3::FragmentationSubheader, ns3::ConstantRandomVariable, ns3::Ipv6OptionJumbogramHeader, ns3::EpcTestRrc, ns3::BurstErrorModel, ns3::TwoRayGroundPropagationLossModel, ns3::UniformDiscPositionAllocator, ns3::MgtAddBaRequestHeader, ns3::UanHeaderRcCts, ns3::aodv::RrepAckHeader, ns3::Ipv6ExtensionFragment, ns3::dsr::DsrOptionPad1, ns3::Ipv6OptionRouterAlert, ns3::EpcX2UeContextReleaseHeader, ns3::Icmpv6OptionHeader, ns3::WifiActionHeader, ns3::Dcd, ns3::RandomDiscPositionAllocator, ns3::GrantManagementSubheader, ns3::Ipv6ExtensionHopByHopHeader, ns3::Ipv4Header, ns3::Ucd, ns3::UanPropModel, ns3::Ipv6OptionPadnHeader, ns3::EpcX2SnStatusTransferHeader, ns3::DeviceNameTag, ns3::dsr::DsrOptionPadnHeader, ns3::Ipv6ExtensionDestination, ns3::RandomBoxPositionAllocator, ns3::olsr::MessageHeader, ns3::Ipv6OptionJumbogram, ns3::UanHeaderRcCtsGlobal, ns3::aodv::RrepHeader, ns3::RngRsp, ns3::RrcConnectionRequestHeader, ns3::RandomRectanglePositionAllocator, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailer< N >, ns3::FriisPropagationLossModel, ns3::EpcX2HandoverPreparationFailureHeader, ns3::dsr::PassiveBuffer, ns3::RateErrorModel, ns3::PacketSocketTag, ns3::BandwidthRequestHeader, ns3::UanPhyGen, ns3::UanPhy, ns3::RttMeanDeviation, ns3::LteTestMac, ns3::LteSpectrumPhy, ns3::Ipv6OptionPad1Header, ns3::WifiPhy, ns3::dsr::DsrOptionPad1Header, ns3::Ipv6ExtensionHopByHop, ns3::UniformRandomVariable, ns3::WifiRadioEnergyModel, ns3::Ipv6OptionPadn, ns3::LteRlcSm, ns3::dsr::RreqTable, ns3::TcpHeader, ns3::UanMacRc, anonymous_namespace{packet-metadata-test.cc}::HistoryTrailerBase, anonymous_namespace{packet-test-suite.cc}::ATestTrailer< N >, ns3::Icmpv4TimeExceeded, ns3::MgtProbeResponseHeader, ns3::EpcX2HandoverRequestAckHeader, ns3::UanPhyCalcSinrFhFsk, ns3::TopologyReader, ns3::LteRlcAmHeader, ns3::FlowMonitor, BenchTag< N >, ns3::SameRoomPositionAllocator, ns3::UanTransducer, ns3::Icmpv6Header, ns3::RandomPropagationLossModel, ns3::ErrorModel, ns3::UdpHeader, ns3::LteEnbRrcProtocolReal, ns3::LteTestPdcp, ns3::aodv::RreqHeader, ns3::MgtProbeRequestHeader, ns3::UanHeaderRcRts, ns3::GenericMacHeader, ns3::CtrlBAckResponseHeader, ns3::Ipv6OptionPad1, ns3::EthernetHeader, ns3::TapBridge, ns3::LteEnbRrcProtocolIdeal, ns3::Icmpv4DestinationUnreachable, ns3::UeManager, ns3::dsr::DsrRouting, ns3::PssFfMacScheduler, ns3::UanPhyPer, ns3::FdTbfqFfMacScheduler, ns3::TdTbfqFfMacScheduler, ns3::UanPhyCalcSinrDefault, ns3::olsr::PacketHeader, ns3::ConstantSpeedPropagationDelayModel, ns3::WifiMacHeader, ns3::LteUeRrc, ns3::DistributedSimulatorImpl, ns3::HalfDuplexIdealPhy, ns3::FdBetFfMacScheduler, ns3::TdBetFfMacScheduler, anonymous_namespace{packet-test-suite.cc}::ATestHeader< N >, ns3::EthernetTrailer, ns3::PfFfMacScheduler, ns3::MultiModelSpectrumChannel, ns3::GridPositionAllocator, ns3::MinstrelWifiManager, ns3::OnOffApplication, ns3::OpenFlowSwitchNetDevice, ns3::EpcX2HandoverRequestHeader, ns3::WaypointMobilityModel, ns3::dsr::DsrFsHeader, ns3::FdNetDevice, ns3::RadioBearerStatsCalculator, ns3::EpcX2, ns3::FdMtFfMacScheduler, ns3::TdMtFfMacScheduler, ns3::TtaFfMacScheduler, ns3::RedQueue, ns3::AthstatsWifiTraceSink, 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::LteRlcHeader, ns3::RrFfMacScheduler, anonymous_namespace{object-test-suite.cc}::DerivedB, ns3::Ipv4, ns3::NetDevice, ns3::UanPhyDual, ns3::Icmpv4Echo, ns3::RandomPropagationDelayModel, ns3::BinaryErrorModel, anonymous_namespace{packet-metadata-test.cc}::HistoryHeader< N >, ns3::UplinkSchedulerMBQoS, ns3::LiIonEnergySource, ns3::LteDataRadioBearerInfo, ns3::EnergySource, ns3::dsr::GraReply, ns3::Ipv4GlobalRouting, ns3::Ipv4StaticRouting, ns3::PacketSink, ns3::Ipv6RawSocketImpl, ns3::FfMacScheduler, ns3::LtePhy, ns3::LteUePhy, ns3::EpsBearerTagUdpClient, ns3::ListPositionAllocator, ns3::PyVizPacketTag, ns3::DcaTxop, ns3::Ipv6RawSocketFactory, ns3::PhyStatsCalculator, ns3::dot11s::PeerLinkFrameStart, ns3::Socket, ns3::ManagementMessageType, ns3::BridgeNetDevice, ns3::LteEnbPhy, ns3::flame::FlameTag, ns3::flame::FlameRtable, ns3::AlohaNoackNetDevice, ns3::VirtualNetDevice, ns3::aodv::DeferredRouteOutputTag, ns3::Object, ns3::dsdv::DeferredRouteOutputTag, ns3::dsr::DsrOptionHeader, ns3::PhyTxStatsCalculator, ns3::UanMacRcGw, ns3::UanPhyPerUmodem, ns3::Ipv6L3Protocol, ns3::TcpSocket, ns3::TcpWestwood, ns3::dot11s::HwmpRtable, ns3::BSSchedulerRtps, ns3::SubscriberStationNetDevice, Derived, ns3::Ipv6PacketInfoTag, ns3::TcpSocketBase, ns3::EpcHelper, ns3::PhyRxStatsCalculator, ns3::Application, ns3::QosTag, ns3::YansWifiPhy, ns3::WimaxPhy, anonymous_namespace{object-test-suite.cc}::BaseB, ns3::dsdv::DsdvHeader, ns3::Ipv4PacketInfoTag, ns3::Ipv6Header, ns3::LteUeRrcProtocolReal, ns3::dot11s::HwmpTag, ns3::BaseStationNetDevice, ns3::Ipv6StaticRouting, ns3::PppHeader, ns3::aodv::TypeHeader, ns3::CsmaNetDevice, ns3::LteHelper, ns3::LtePdcpHeader, ns3::PointToPointNetDevice, ns3::AcousticModemEnergyModel, ns3::HybridBuildingsPropagationLossModel, ns3::RandomVariableStream, ns3::RttEstimator, ns3::LteSignalingRadioBearerInfo, ns3::RemSpectrumPhy, ns3::HierarchicalMobilityModel, ns3::UanNetDevice, ns3::UplinkSchedulerRtps, ns3::BuildingsPropagationLossModel, ns3::MacStatsCalculator, ns3::EpcMme, ns3::LteEnbMac, ns3::Ipv4NixVectorRouting, ns3::WaveformGenerator, ns3::TcpL4Protocol, ns3::EpcEnbApplication, ns3::MeshWifiInterfaceMac, ns3::Node, ns3::JakesProcess, ns3::YansErrorRateModel, ns3::UdpTraceClient, ns3::dsdv::RoutingProtocol, ns3::IpL4Protocol, ns3::Ipv6RoutingProtocol, ns3::LteRlc, ns3::LteUeRrcProtocolIdeal, ns3::NonCommunicatingNetDevice, ns3::BandwidthManager, ns3::aodv::RoutingProtocol, ns3::Scheduler, ns3::ArpCache, ns3::Ipv6Interface, ns3::Ipv6OptionHeader, ns3::NscTcpSocketImpl, ns3::UanChannel, ns3::EmuNetDevice, ns3::NdiscCache, ns3::EpcSgwPgwApplication, ns3::LteUeNetDevice, ns3::RandomWaypointMobilityModel, ns3::SteadyStateRandomWaypointMobilityModel, ns3::SpectrumAnalyzer, ns3::WifiMacQueue, ns3::SimpleOfdmWimaxPhy, ns3::Radvd, 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::MeshPointDevice, ns3::UanHeaderRcData, ns3::MgtAssocRequestHeader, ns3::RegularWifiMac, ns3::Ping6, ns3::ArpHeader, ns3::Ipv4Interface, ns3::Ipv6Option, ns3::RadiotapHeader, ns3::PropagationLossModel, ns3::SpectrumPhy, ns3::YansWifiChannel, ns3::GridBuildingAllocator, ns3::ArpL3Protocol, ns3::RadioEnvironmentMapHelper, ns3::EpcUeNas, 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::LteUeMac, ns3::TraceFadingLossModel, 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::LteSimpleHelper, ns3::LteTestRrc, 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::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::RrcAsn1Header, ns3::Channel, ns3::SingleModelSpectrumChannel, ns3::RocketfuelTopologyReader, ns3::StaWifiMac, ns3::WifiMacTrailer, ns3::RandomBuildingPositionAllocator, ConfigTestObject, AlternateTestObject, ns3::Ipv6ExtensionDemux, ns3::Ipv6OptionDemux, ns3::TcpTahoe, ns3::Asn1Header, ns3::LteRadioBearerInfo, ns3::dot11s::AirtimeLinkMetricCalculator, ns3::MpiReceiver, ns3::Header, ns3::ArfWifiManager, ns3::MsduAggregator, ns3::WifiChannel, 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, anonymous_namespace{packet-test-suite.cc}::ATestTag< N >, ns3::UdpEchoClient, ns3::Building, ns3::Ipv4FlowProbeTag, ns3::TcpRfc793, ns3::LteHexGridEnbTopologyHelper, ns3::GtpuHeader, ns3::LteRlcSduStatusTag, ns3::LteSimpleNetDevice, ns3::dot11s::MeshHeader, ns3::MobilityModel, SequenceNumberTestObj, ns3::PcapFileWrapper, ns3::AmrrWifiManager, ns3::ApWifiMac, ns3::RraaWifiManager, ns3::WimaxChannel, ns3::WimaxMacToMacHeader, ns3::IsotropicAntennaModel, ns3::BuildingListPriv, ns3::ItuR1238PropagationLossModel, ns3::MapScheduler, ns3::RealtimeSimulatorImpl, ns3::SimpleDeviceEnergyModel, 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::LteRlcTm, 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::EpcX2Header, ns3::EpsBearerTag, 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, ns3::SnrTag, 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, MyHeader, ns3::Ipv4RawSocketImpl, ns3::Icmpv4L4Protocol, ns3::Chunk, ns3::DelayJitterEstimationTimestampTag, and A.
Definition at line 46 of file object-base.cc.
References ns3::GetObjectIid(), and NS_LOG_FUNCTION_NOARGS.
Referenced by ConstructSelf().
|
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 59 of file object-base.cc.
References NS_LOG_FUNCTION.
Referenced by ConstructSelf().
void ns3::ObjectBase::SetAttribute | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the name of the attribute to set |
value | the 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 160 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(), NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by ns3::UanMacRc::Associate(), ns3::UanMacRc::AssociateTimeout(), ns3::cell_edited_callback(), FemtocellBlockAllocator::Create(), ns3::TraceFadingLossModel::DoCalcRxPowerSpectralDensity(), ns3::dot11s::HwmpProtocol::DoInitialize(), ns3::dot11s::PeerManagementProtocol::DoInitialize(), ns3::MeshWifiInterfaceMac::DoInitialize(), ns3::SteadyStateRandomWaypointMobilityModel::DoInitializePrivate(), UanTest::DoOnePhyTest(), BufferTest::DoRun(), RttTestCase::DoRun(), ns3::LenaMimoTestCase::DoRun(), ns3::ItuR1411LosPropagationLossModelTestCase::DoRun(), ns3::ItuR1411NlosOverRooftopPropagationLossModelTestCase::DoRun(), ns3::OkumuraHataPropagationLossModelTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LteRlcAmE2eTestCase::DoRun(), ns3::LteRlcUmE2eTestCase::DoRun(), ns3::LteRrcConnectionEstablishmentTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::Ipv6L3ProtocolTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LteFadingTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), NscTcpLossTestCase1::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), Ns3TcpLossTestCase::DoRun(), Ns3TcpStateTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LteHandoverDelayTestCase::DoRun(), ErrorModelSimple::DoRun(), RandomVariableStreamUniformTestCase::DoRun(), Ipv6RawSocketImplTest::DoRun(), ns3::EpcS1uDlTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), BurstErrorModelSimple::DoRun(), NscTcpLossTestCase2::DoRun(), RandomVariableStreamUniformAntitheticTestCase::DoRun(), ns3::EpcS1uUlTestCase::DoRun(), RandomVariableStreamConstantTestCase::DoRun(), RandomVariableStreamSequentialTestCase::DoRun(), RandomVariableStreamNormalTestCase::DoRun(), 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(), Ipv4RawSocketImplTest::DoSendData_IpHdr(), Ipv4HeaderTest::DoSendData_IpHdr_Dscp(), 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(), Ipv4FragmentationTest::StartClient(), Ipv6FragmentationTest::StartClient(), and NetAnimExperiment::UpdatePositions().
bool ns3::ObjectBase::SetAttributeFailSafe | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the name of the attribute to set |
value | the name of the attribute to set |
Definition at line 180 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_LOG_FUNCTION.
Referenced by DropTailQueueTestCase::DoRun(), WaypointLazyNotifyTrue::DoRun(), WaypointInitialPositionIsWaypoint::DoRun(), AttributeTestCase< T >::DoRun(), RandomVariableStreamAttributeTestCase::DoRun(), IntegerTraceSourceAttributeTestCase::DoRun(), IntegerTraceSourceTestCase::DoRun(), PointerAttributeTestCase::DoRun(), CallbackValueTestCase::DoRun(), ns3::LteHelper::InstallSingleEnbDevice(), and RedQueueTestCase::RunRedTest().
bool ns3::ObjectBase::TraceConnect | ( | std::string | name, |
std::string | context, | ||
const CallbackBase & | cb | ||
) |
name | the name of the targetted trace source |
context | the trace context associated to the callback |
cb | the callback to connect to the trace source. |
The targetted trace source should be registered with TypeId::AddTraceSource.
Definition at line 281 of file object-base.cc.
References GetInstanceTypeId(), ns3::TypeId::LookupTraceSourceByName(), and NS_LOG_FUNCTION.
Referenced by ns3::AnimationInterface::ConnectLteEnb(), and ns3::AnimationInterface::ConnectLteUe().
bool ns3::ObjectBase::TraceConnectWithoutContext | ( | std::string | name, |
const CallbackBase & | cb | ||
) |
name | the name of the targetted trace source |
cb | the 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(), ns3::TypeId::LookupTraceSourceByName(), and NS_LOG_FUNCTION.
Referenced by ns3::Config::MatchContainer::ConnectWithoutContext(), ns3::LteRlcUmE2eTestCase::DoRun(), ns3::LteRlcAmE2eTestCase::DoRun(), SequenceNumberTestCase::DoRun(), Ns3TcpCwndTestCase1::DoRun(), ns3::Bug555TestCase::DoRun(), Ns3TcpCwndTestCase2::DoRun(), IntegerTraceSourceTestCase::DoRun(), TracedCallbackTestCase::DoRun(), ns3::InternetStackHelper::EnableAsciiIpv4Internal(), ns3::YansWifiPhyHelper::EnablePcapInternal(), ns3::WimaxHelper::EnablePcapInternal(), ns3::InternetStackHelper::EnablePcapIpv4Internal(), ns3::aodv::RoutingProtocol::NotifyInterfaceUp(), ns3::HierarchicalMobilityModel::SetChild(), ns3::dot11s::PeerManagementProtocolMac::SetParent(), and ns3::HierarchicalMobilityModel::SetParent().
bool ns3::ObjectBase::TraceDisconnect | ( | std::string | name, |
std::string | context, | ||
const CallbackBase & | cb | ||
) |
name | the name of the targetted trace source |
context | the trace context associated to the callback |
cb | the callback to disconnect from the trace source. |
The targetted trace source should be registered with TypeId::AddTraceSource.
Definition at line 307 of file object-base.cc.
References GetInstanceTypeId(), ns3::TypeId::LookupTraceSourceByName(), and NS_LOG_FUNCTION.
bool ns3::ObjectBase::TraceDisconnectWithoutContext | ( | std::string | name, |
const CallbackBase & | cb | ||
) |
name | the name of the targetted trace source |
cb | the callback to disconnect from the trace source. |
The targetted trace source should be registered with TypeId::AddTraceSource.
Definition at line 294 of file object-base.cc.
References GetInstanceTypeId(), ns3::TypeId::LookupTraceSourceByName(), and NS_LOG_FUNCTION.
Referenced by ns3::Config::MatchContainer::DisconnectWithoutContext(), ns3::dsr::DsrRouting::DoDispose(), IntegerTraceSourceTestCase::DoRun(), TracedCallbackTestCase::DoRun(), ns3::aodv::RoutingProtocol::NotifyInterfaceDown(), ns3::HierarchicalMobilityModel::SetChild(), and ns3::HierarchicalMobilityModel::SetParent().