Attribute implementation for Double
More...
Files | |
file | double.cc |
ns3::DoubleValue attribute value implementation. | |
file | double.h |
ns3::DoubleValue attribute value declarations and template implementations. | |
Classes | |
class | ns3::DoubleChecker |
AttributeChecker implementation for DoubleValue. More... | |
class | ns3::DoubleValue |
This class can be used to hold variables of floating point type such as 'double' or 'float'. More... | |
Functions | |
template<typename T1 > | |
Ptr< const AttributeAccessor > | ns3::MakeDoubleAccessor (T1 a1) |
Create an AttributeAccessor for a class data member, or a lone class get functor or set method. More... | |
template<typename T1 , typename T2 > | |
Ptr< const AttributeAccessor > | ns3::MakeDoubleAccessor (T1 a1, T2 a2) |
Create an AttributeAccessor using a pair of get functor and set methods from a class. More... | |
template<typename T > | |
Ptr< const AttributeChecker > | ns3::MakeDoubleChecker (void) |
More... | |
Ptr< const AttributeChecker > | ns3::internal::MakeDoubleChecker (double min, double max, std::string name) |
Make a Double attribute checker with embedded numeric type name. More... | |
Attribute implementation for Double
ns3::Ptr< const ns3::AttributeAccessor > ns3::MakeDoubleAccessor | ( | T1 | a1 | ) |
Create an AttributeAccessor for a class data member, or a lone class get functor or set method.
The get functor method should have a signature like
where T
is the class and U
is the type of the return value.
The set method should have one of these signatures:
where T
is the class and U
is the type of the value to set the attribute to, which should be compatible with the specific AttributeValue type V
which holds the value (or the type implied by the name Make<V>Accessor
of this function.) In the case of a setter
returning bool
, the return value should be true
if the value could be set successfully.
V | [explicit] (If present) The specific AttributeValue type to use to represent the Attribute. (If not present, the type V is implicit in the name of this function, as "Make<V>Accessor" |
T1 | [deduced] The type of the class data member, or the type of the class get functor or set method. |
[in] | a1 | The address of the data member, or the get or set method. |
Definition at line 42 of file double.h.
Referenced by ns3::BasicEnergySource::GetTypeId(), ns3::ItuR1238PropagationLossModel::GetTypeId(), ns3::SnrTag::GetTypeId(), ns3::IsotropicAntennaModel::GetTypeId(), ns3::ConstantSpectrumPropagationLossModel::GetTypeId(), ns3::SimpleFrameCaptureModel::GetTypeId(), ns3::LteHexGridEnbTopologyHelper::GetTypeId(), ns3::UanPropModelThorp::GetTypeId(), ns3::CosineAntennaModel::GetTypeId(), ns3::LteAmc::GetTypeId(), ns3::UanTransducerHd::GetTypeId(), ns3::NullMessageSimulatorImpl::GetTypeId(), ns3::AarfWifiManager::GetTypeId(), ns3::ParabolicAntennaModel::GetTypeId(), ns3::GridBuildingAllocator::GetTypeId(), ns3::AarfcdWifiManager::GetTypeId(), ns3::AmrrWifiManager::GetTypeId(), ns3::IdealWifiManager::GetTypeId(), ns3::ItuR1411LosPropagationLossModel::GetTypeId(), ns3::ItuR1411NlosOverRooftopPropagationLossModel::GetTypeId(), ns3::OkumuraHataPropagationLossModel::GetTypeId(), ns3::RandomWalk2dMobilityModel::GetTypeId(), ns3::RvBatteryModel::GetTypeId(), ns3::TcpHtcp::GetTypeId(), ns3::UanPhyPerGenDefault::GetTypeId(), ns3::PieQueueDisc::GetTypeId(), ns3::UanNoiseModelDefault::GetTypeId(), ns3::Cost231PropagationLossModel::GetTypeId(), ns3::SpectrumAnalyzer::GetTypeId(), ns3::RadioEnvironmentMapHelper::GetTypeId(), ns3::dsdv::RoutingProtocol::GetTypeId(), ns3::HybridBuildingsPropagationLossModel::GetTypeId(), ns3::BuildingsPropagationLossModel::GetTypeId(), ns3::SteadyStateRandomWaypointMobilityModel::GetTypeId(), ns3::JakesProcess::GetTypeId(), ns3::WaveformGenerator::GetTypeId(), ns3::TcpLedbat::GetTypeId(), ns3::LteUePowerControl::GetTypeId(), ns3::RraaWifiManager::GetTypeId(), ns3::SimpleOfdmWimaxPhy::GetTypeId(), ns3::TvSpectrumTransmitter::GetTypeId(), ns3::UanMacRcGw::GetTypeId(), ns3::AcousticModemEnergyModel::GetTypeId(), ns3::TcpScalable::GetTypeId(), ns3::SpectrumChannel::GetTypeId(), ns3::WifiPhy::GetTypeId(), ns3::LteEnbPhy::GetTypeId(), ns3::LiIonEnergySource::GetTypeId(), ns3::A3RsrpHandoverAlgorithm::GetTypeId(), ns3::RrpaaWifiManager::GetTypeId(), ns3::ThreeGppHttpVariables::GetTypeId(), ns3::RedQueueDisc::GetTypeId(), ns3::GaussMarkovMobilityModel::GetTypeId(), ns3::LteUePhy::GetTypeId(), ns3::TcpBic::GetTypeId(), ns3::LinearWifiTxCurrentModel::GetTypeId(), ns3::UanPhyDual::GetTypeId(), AttributeObjectTest::GetTypeId(), ns3::ConstantSpeedPropagationDelayModel::GetTypeId(), ns3::GridPositionAllocator::GetTypeId(), ns3::TcpIllinois::GetTypeId(), ns3::RttMeanDeviation::GetTypeId(), ns3::FlowMonitor::GetTypeId(), ns3::UanMacRc::GetTypeId(), ns3::RateErrorModel::GetTypeId(), ns3::TcpSocketBase::GetTypeId(), ns3::WifiRadioEnergyModel::GetTypeId(), ns3::UniformRandomVariable::GetTypeId(), ns3::FriisPropagationLossModel::GetTypeId(), ns3::RandomDiscPositionAllocator::GetTypeId(), ns3::UanPhyGen::GetTypeId(), ns3::BurstErrorModel::GetTypeId(), ns3::ConstantRandomVariable::GetTypeId(), ns3::UniformDiscPositionAllocator::GetTypeId(), ns3::TwoRayGroundPropagationLossModel::GetTypeId(), ns3::SequentialRandomVariable::GetTypeId(), ns3::LogDistancePropagationLossModel::GetTypeId(), ns3::ExponentialRandomVariable::GetTypeId(), ns3::ThreeLogDistancePropagationLossModel::GetTypeId(), ns3::ParetoRandomVariable::GetTypeId(), ns3::NakagamiPropagationLossModel::GetTypeId(), ns3::FixedRssLossModel::GetTypeId(), ns3::MatrixPropagationLossModel::GetTypeId(), ns3::RangePropagationLossModel::GetTypeId(), ns3::WeibullRandomVariable::GetTypeId(), ns3::NormalRandomVariable::GetTypeId(), ns3::LogNormalRandomVariable::GetTypeId(), ns3::GammaRandomVariable::GetTypeId(), ns3::ErlangRandomVariable::GetTypeId(), ns3::TriangularRandomVariable::GetTypeId(), ns3::ZipfRandomVariable::GetTypeId(), and ns3::ZetaRandomVariable::GetTypeId().
ns3::Ptr< const ns3::AttributeAccessor > ns3::MakeDoubleAccessor | ( | T1 | a1, |
T2 | a2 | ||
) |
Create an AttributeAccessor using a pair of get functor and set methods from a class.
The get functor method should have a signature like
where T
is the class and U
is the type of the return value.
The set method should have one of these signatures:
where T
is the class and U
is the type of the value to set the attribute to, which should be compatible with the specific AttributeValue type V
which holds the value (or the type implied by the name Make<V>Accessor
of this function.) In the case of a setter
returning bool
, the return value should be true if the value could be set successfully.
In practice the setter and getter arguments can appear in either order, but setter first is preferred.
V | [explicit] (If present) The specific AttributeValue type to use to represent the Attribute. (If not present, the type V is implicit in the name of this function as "Make<V>Accessor" |
T1 | [deduced] The type of the class data member, or the type of the class get functor or set method. |
T2 | [deduced] The type of the getter class functor method. |
[in] | a2 | The address of the class method to set the attribute. |
[in] | a1 | The address of the data member, or the get or set method. |
Ptr< const AttributeChecker > ns3::MakeDoubleChecker | ( | void | ) |
Definition at line 91 of file double.h.
References ns3::internal::MakeDoubleChecker(), and max.
Ptr< const AttributeChecker > ns3::internal::MakeDoubleChecker | ( | double | min, |
double | max, | ||
std::string | name | ||
) |
Make a Double attribute checker with embedded numeric type name.
[in] | min | The minimum allowed value. |
[in] | max | The maximum allowed value. |
[in] | name | The original type name ("float", "double"). |
Definition at line 49 of file double.cc.
References ns3::Copy(), ns3::Create(), ns3::DoubleValue::Get(), max, min, NS_LOG_FUNCTION, and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::MakeDoubleChecker().