Configuration of simulation parameters and tracing. More...
Files | |
file | config.cc |
Imlementation of the various ns3::Config functions and classes. | |
file | config.h |
Declaration of the various ns3::Config functions and classes. | |
file | names.cc |
Implementation of class ns3::Names, and declaration of classes ns3::NamesNode and ns3::NamePriv. | |
file | names.h |
Declaration of class ns3::Names. | |
Namespaces | |
ns3::Config | |
Namespace for the various functions implementing the Config system. | |
Classes | |
class | ns3::Config::MatchContainer |
hold a set of objects which match a specific search string. More... | |
Functions | |
void | ns3::Config::Connect (std::string path, const CallbackBase &cb) |
void | ns3::Config::ConnectWithoutContext (std::string path, const CallbackBase &cb) |
void | ns3::Config::Disconnect (std::string path, const CallbackBase &cb) |
void | ns3::Config::DisconnectWithoutContext (std::string path, const CallbackBase &cb) |
Ptr< Object > | ns3::Config::GetRootNamespaceObject (uint32_t i) |
uint32_t | ns3::Config::GetRootNamespaceObjectN (void) |
Config::MatchContainer | ns3::Config::LookupMatches (std::string path) |
void | ns3::Config::RegisterRootNamespaceObject (Ptr< Object > obj) |
void | ns3::Config::Reset (void) |
Reset the initial value of every attribute as well as the value of every global to what they were before any call to SetDefault and SetGlobal. More... | |
void | ns3::Config::Set (std::string path, const AttributeValue &value) |
void | ns3::Config::SetDefault (std::string name, const AttributeValue &value) |
bool | ns3::Config::SetDefaultFailSafe (std::string name, const AttributeValue &value) |
void | ns3::Config::SetGlobal (std::string name, const AttributeValue &value) |
bool | ns3::Config::SetGlobalFailSafe (std::string name, const AttributeValue &value) |
void | ns3::Config::UnregisterRootNamespaceObject (Ptr< Object > obj) |
Configuration of simulation parameters and tracing.
void ns3::Config::Connect | ( | std::string | path, |
const CallbackBase & | cb | ||
) |
path | a path to match trace sources. |
cb | the callback to connect to the matching trace sources. |
This function will attempt to find all trace sources which match the input path and will then connect the input callback to them in such a way that the callback will receive an extra context string upon trace event notification.
Definition at line 744 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::LteHelper::ActivateDataRadioBearer(), VanetRoutingExperiment::ConfigureApplications(), VanetRoutingExperiment::ConfigureDevices(), ns3::dsr::DsrRouting::ConnectCallbacks(), ns3::AnimationInterface::ConnectCallbacks(), ns3::RadioBearerStatsConnector::ConnectSrb0Traces(), ns3::RadioBearerStatsConnector::ConnectSrb1TracesUe(), ns3::RadioBearerStatsConnector::ConnectTracesEnb(), ns3::RadioBearerStatsConnector::ConnectTracesUe(), ns3::DoMakeTraceSourceAccessor(), ns3::aodv::LoopbackTestCase::DoRun(), WaypointMobilityModelNotifyTest::DoRun(), LteCqiGenerationTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), Ns3TcpNoDelayTestCase::DoRun(), LteInterferenceTestCase::DoRun(), Ns3TcpSocketTestCase1::DoRun(), LteEnbAntennaTestCase::DoRun(), NscTcpLossTestCase1::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), Ns3TcpLossTestCase::DoRun(), Ns3TcpStateTestCase::DoRun(), LteUeMeasurementsTestCase::DoRun(), LteHandoverDelayTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), SpectrumIdealPhyTestCase::DoRun(), Ns3TcpInteroperabilityTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), Ns3TcpSocketTestCase2::DoRun(), NscTcpLossTestCase2::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), Ns2MobilityHelperTest::DoRun(), LteUeMeasurementsHandoverTestCase::DoRun(), LteRrcConnectionEstablishmentErrorTestCase::DoRun(), ObjectVectorTraceConfigTestCase::DoRun(), CsmaPacketSocketTestCase::DoRun(), CsmaPingTestCase::DoRun(), ns3::UanHelper::EnableAscii(), ns3::WimaxHelper::EnableAsciiForConnection(), ns3::YansWavePhyHelper::EnableAsciiInternal(), ns3::FdNetDeviceHelper::EnableAsciiInternal(), ns3::PointToPointHelper::EnableAsciiInternal(), ns3::CsmaHelper::EnableAsciiInternal(), ns3::YansWifiPhyHelper::EnableAsciiInternal(), ns3::WimaxHelper::EnableAsciiInternal(), ns3::InternetStackHelper::EnableAsciiIpv4Internal(), ns3::InternetStackHelper::EnableAsciiIpv6Internal(), ns3::AthstatsHelper::EnableAthstats(), ns3::LteHelper::EnableDlMacTraces(), ns3::LteHelper::EnableDlPhyTraces(), ns3::LteHelper::EnableDlRxPhyTraces(), ns3::LteHelper::EnableDlTxPhyTraces(), ns3::LteHelper::EnableUlMacTraces(), ns3::LteHelper::EnableUlPhyTraces(), ns3::LteHelper::EnableUlRxPhyTraces(), ns3::LteHelper::EnableUlTxPhyTraces(), ns3::RadioBearerStatsConnector::EnsureConnected(), OcbWifiMacTestCase::PostDeviceConfiguration(), ns3::PyViz::PyViz(), ns3::PyViz::RegisterCsmaLikeDevice(), ns3::PyViz::RegisterDropTracePath(), ns3::PyViz::RegisterPointToPointLikeDevice(), ns3::PyViz::RegisterWifiLikeDevice(), VanetRoutingExperiment::SetupAdhocMobilityNodes(), and WifiInterferenceTestCase::WifiSimpleInterference().
void ns3::Config::ConnectWithoutContext | ( | std::string | path, |
const CallbackBase & | cb | ||
) |
path | a path to match trace sources. |
cb | the callback to connect to the matching trace sources. |
This function will attempt to find all trace sources which match the input path and will then connect the input callback to them.
Definition at line 733 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::Uinteger16Probe::ConnectByPath(), ns3::Uinteger32Probe::ConnectByPath(), ns3::Uinteger8Probe::ConnectByPath(), ns3::PacketProbe::ConnectByPath(), ns3::BooleanProbe::ConnectByPath(), ns3::DoubleProbe::ConnectByPath(), ns3::Ipv4PacketProbe::ConnectByPath(), ns3::TimeProbe::ConnectByPath(), ns3::ApplicationPacketProbe::ConnectByPath(), ns3::Ipv6PacketProbe::ConnectByPath(), ns3::AnimationInterface::ConnectCallbacks(), ns3::DoMakeTraceSourceAccessor(), CsmaBridgeTestCase::DoRun(), Ns3TcpLossTestCase::DoRun(), CsmaBroadcastTestCase::DoRun(), CsmaMulticastTestCase::DoRun(), CsmaOneSubnetTestCase::DoRun(), ObjectVectorTraceConfigTestCase::DoRun(), CsmaPingTestCase::DoRun(), CsmaRawIpSocketTestCase::DoRun(), CsmaStarTestCase::DoRun(), ns3::MobilityHelper::EnableAscii(), ns3::YansWavePhyHelper::EnableAsciiInternal(), ns3::YansWifiPhyHelper::EnableAsciiInternal(), ns3::SpectrumAnalyzerHelper::Install(), ns3::Ipv4FlowProbe::Ipv4FlowProbe(), ns3::Ipv6FlowProbe::Ipv6FlowProbe(), TraceCwnd(), TraceDroppingState(), TraceEveryDrop(), TraceQueueLength(), TraceRto(), TraceRtt(), TraceSojourn(), and TraceSsThresh().
void ns3::Config::Disconnect | ( | std::string | path, |
const CallbackBase & | cb | ||
) |
path | a path to match trace sources. |
cb | the callback to connect to the matching trace sources. |
This function undoes the work of Config::ConnectWithContext.
Definition at line 750 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::RadioBearerStatsConnector::ConnectSrb0Traces(), and ns3::DoMakeTraceSourceAccessor().
void ns3::Config::DisconnectWithoutContext | ( | std::string | path, |
const CallbackBase & | cb | ||
) |
path | a path to match trace sources. |
cb | the callback to disconnect to the matching trace sources. |
This function undoes the work of Config::Connect.
Definition at line 738 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >::Disconnect(), and ns3::DoMakeTraceSourceAccessor().
Ptr< Object > ns3::Config::GetRootNamespaceObject | ( | uint32_t | i | ) |
i | the index of the requested object. |
Definition at line 779 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by GetTypicalAggregations(), and ns3::AttributeIterator::Iterate().
uint32_t ns3::Config::GetRootNamespaceObjectN | ( | void | ) |
Definition at line 773 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION_NOARGS.
Referenced by GetTypicalAggregations(), and ns3::AttributeIterator::Iterate().
MatchContainer ns3::Config::LookupMatches | ( | std::string | path | ) |
path | the path to perform a match against |
Definition at line 755 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::RandomVariableStreamHelper::AssignStreams(), ns3::LteStatsCalculator::FindCellIdFromEnbRlcPath(), ns3::LteStatsCalculator::FindImsiFromEnbRlcPath(), ns3::LteStatsCalculator::FindImsiFromLteNetDevice(), ns3::LteStatsCalculator::FindImsiFromUePhy(), ns3::RadioEnvironmentMapHelper::Install(), ns3::GnuplotHelper::PlotProbe(), and ns3::FileHelper::WriteProbe().
obj | a new root object |
Each root object is used during path matching as the root of the path by Config::Connect, and Config::Set.
Definition at line 761 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::BuildingListPriv::DoGet(), ns3::ChannelListPriv::DoGet(), ns3::NodeListPriv::DoGet(), RootNamespaceConfigTestCase::DoRun(), UnderRootNamespaceConfigTestCase::DoRun(), ObjectVectorConfigTestCase::DoRun(), ObjectVectorTraceConfigTestCase::DoRun(), and SearchAttributesOfParentObjectsTestCase::DoRun().
void ns3::Config::Reset | ( | void | ) |
Reset the initial value of every attribute as well as the value of every global to what they were before any call to SetDefault and SetGlobal.
Definition at line 658 of file config.cc.
References ns3::GlobalValue::Begin(), ns3::GlobalValue::End(), ns3::TypeId::GetAttribute(), ns3::TypeId::GetAttributeN(), ns3::TypeId::GetRegistered(), ns3::TypeId::GetRegisteredN(), NS_LOG_FUNCTION_NOARGS, ns3::TypeId::AttributeInformation::originalInitialValue, and ns3::TypeId::SetAttributeInitialValue().
Referenced by LteInterferenceHardFrTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteRrcConnectionEstablishmentErrorTestCase::DoRun(), NetworkNumberAllocatorTestCase::DoTeardown(), NetworkNumber6AllocatorTestCase::DoTeardown(), NetworkAllocatorHelperTestCase::DoTeardown(), IpAddressHelperTestCasev6::DoTeardown(), AddressAllocator6TestCase::DoTeardown(), AddressAllocatorHelperTestCase::DoTeardown(), AddressAllocatorTestCase::DoTeardown(), ResetAllocatorHelperTestCase::DoTeardown(), NetworkAndAddress6TestCase::DoTeardown(), NetworkAndAddressTestCase::DoTeardown(), ExampleAddress6GeneratorTestCase::DoTeardown(), IpAddressHelperTestCasev4::DoTeardown(), ExampleAddressGeneratorTestCase::DoTeardown(), AddressCollision6TestCase::DoTeardown(), and AddressCollisionTestCase::DoTeardown().
void ns3::Config::Set | ( | std::string | path, |
const AttributeValue & | value | ||
) |
path | a path to match attributes. |
value | the value to set in all matching attributes. |
This function will attempt to find attributes which match the input path and will then set their value to the input value.
Definition at line 678 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::RawTextConfigLoad::Attributes(), ns3::XmlConfigLoad::Attributes(), LteEpcE2eDataTestCase::DoRun(), RootNamespaceConfigTestCase::DoRun(), UnderRootNamespaceConfigTestCase::DoRun(), ObjectVectorConfigTestCase::DoRun(), SearchAttributesOfParentObjectsTestCase::DoRun(), NetAnimExperiment::IncrementCw(), and Experiment::IncrementCw().
void ns3::Config::SetDefault | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the full name of the attribute |
value | the value to set. |
This method overrides the initial value of the matching attribute. This method cannot fail: it will crash if the input attribute name or value is invalid.
Definition at line 683 of file config.cc.
References NS_FATAL_ERROR, NS_LOG_FUNCTION, and ns3::Config::SetDefaultFailSafe().
Referenced by VanetRoutingExperiment::ConfigureDefaults(), BatteryLifetimeTest::ConstantLoadTest(), ns3::olsr::Bug780Test::CreateNodes(), ns3::RawTextConfigLoad::Default(), ns3::XmlConfigLoad::Default(), BasicEnergyDepletionTest::DepletionTestCase(), ns3::LenaDeactivateBearerTestCase::DoRun(), RttEstimatorTestCase::DoRun(), OneUniformRandomVariableManyGetValueCallsTestCase::DoRun(), LenaMimoTestCase::DoRun(), ManyUniformRandomVariablesOneGetValueCallTestCase::DoRun(), FriisPropagationLossModelTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LteDownlinkDataSinrTestCase::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), Ipv4DynamicGlobalRoutingTestCase::DoRun(), LteInterferenceTestCase::DoRun(), Ns3TcpNoDelayTestCase::DoRun(), LteRlcAmE2eTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteDownlinkCtrlSinrTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), Ns3TcpLossTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), Ns3TcpStateTestCase::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), EpcS1uDlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), Ipv4FragmentationTest::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), TwoRayGroundPropagationLossModelTestCase::DoRun(), Ns3TcpSocketTestCase2::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), ChainRegressionTest::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), LogDistancePropagationLossModelTestCase::DoRun(), EpcS1uUlTestCase::DoRun(), CsmaMulticastTestCase::DoRun(), LteUeMeasurementsHandoverTestCase::DoRun(), AttributeTestCase< T >::DoRun(), Bug555TestCase::DoRun(), Ns3TcpCwndTestCase2::DoRun(), RangePropagationLossModelTestCase::DoRun(), LteRrcConnectionEstablishmentErrorTestCase::DoRun(), CsmaPingTestCase::DoRun(), CsmaRawIpSocketTestCase::DoRun(), experiment(), ConfigStoreHelper::LoadConfig(), RoutingExperiment::Run(), ConfigStoreHelper::SaveConfig(), BatteryLifetimeTest::VariableLoadTest(), and WifiInterferenceTestCase::WifiSimpleInterference().
bool ns3::Config::SetDefaultFailSafe | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the full name of the attribute |
value | the value to set. |
This method overrides the initial value of the matching attribute.
Definition at line 691 of file config.cc.
References ns3::TypeId::AttributeInformation::checker, ns3::TypeId::GetAttribute(), ns3::TypeId::GetAttributeN(), ns3::TypeId::LookupByNameFailSafe(), ns3::TypeId::AttributeInformation::name, NS_LOG_FUNCTION, and ns3::TypeId::SetAttributeInitialValue().
Referenced by ns3::cell_edited_callback_config_default(), AttributeTestCase< T >::DoRun(), ns3::CommandLine::HandleArgument(), ns3::CommandLine::HandleAttribute(), and ns3::Config::SetDefault().
void ns3::Config::SetGlobal | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the name of the requested GlobalValue. |
value | the value to set |
This method is equivalent to GlobalValue::Bind
Definition at line 723 of file config.cc.
References ns3::GlobalValue::Bind(), and NS_LOG_FUNCTION.
Referenced by LenaDataPhyErrorModelTestCase::DoRun(), LteRlcAmE2eTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), ThreadedSimulatorEventsTestCase::DoSetup(), ThreadedSimulatorEventsTestCase::DoTeardown(), ns3::RawTextConfigLoad::Global(), ns3::XmlConfigLoad::Global(), ns3::RngSeedManager::SetRun(), and ns3::RngSeedManager::SetSeed().
bool ns3::Config::SetGlobalFailSafe | ( | std::string | name, |
const AttributeValue & | value | ||
) |
name | the name of the requested GlobalValue. |
value | the value to set |
This method is equivalent to GlobalValue::BindFailSafe
Definition at line 728 of file config.cc.
References ns3::GlobalValue::BindFailSafe(), and NS_LOG_FUNCTION.
Referenced by ns3::CommandLine::HandleArgument(), and ns3::CommandLine::HandleAttribute().
obj | a new root object |
This function undoes the work of Config::RegisterRootNamespaceObject.
Definition at line 767 of file config.cc.
References ns3::Singleton< T >::Get(), and NS_LOG_FUNCTION.
Referenced by ns3::BuildingListPriv::Delete(), ns3::ChannelListPriv::Delete(), and ns3::NodeListPriv::Delete().