AttributeValue implementation for Uinteger. More...
Files | |
file | uinteger.cc |
ns3::UintegerValue attribute value implementations. | |
file | uinteger.h |
ns3::UintegerValue attribute value declarations and template implementations. | |
Classes | |
class | UintegerChecker |
AttributeChecker implementation for UintegerValue. More... | |
class | ns3::UintegerValue |
Hold an unsigned integer type. More... | |
Functions | |
template<typename T1 > | |
Ptr< const AttributeAccessor > | ns3::MakeUintegerAccessor (T1 a1) |
template<typename T1 , typename T2 > | |
Ptr< const AttributeAccessor > | ns3::MakeUintegerAccessor (T1 a1, T2 a2) |
template<typename T > | |
Ptr< const AttributeChecker > | ns3::MakeUintegerChecker () |
Ptr< const AttributeChecker > | ns3::internal::MakeUintegerChecker (uint64_t min, uint64_t max, std::string name) |
Make an Uinteger attribute checker with embedded numeric type name. | |
AttributeValue implementation for Uinteger.
ns3::Ptr< const ns3::AttributeAccessor > ns3::MakeUintegerAccessor | ( | 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 46 of file uinteger.h.
Referenced by Sender::GetTypeId(), Receiver::GetTypeId(), ns3::UniformPlanarArray::GetTypeId(), ns3::aodv::RoutingProtocol::GetTypeId(), ns3::BulkSendApplication::GetTypeId(), ns3::OnOffApplication::GetTypeId(), ns3::ThreeGppHttpClient::GetTypeId(), ns3::ThreeGppHttpServer::GetTypeId(), ns3::ThreeGppHttpVariables::GetTypeId(), ns3::UdpClient::GetTypeId(), ns3::UdpEchoClient::GetTypeId(), ns3::UdpEchoServer::GetTypeId(), ns3::UdpServer::GetTypeId(), ns3::UdpTraceClient::GetTypeId(), ns3::BridgeNetDevice::GetTypeId(), ns3::GridBuildingAllocator::GetTypeId(), ns3::OutdoorPositionAllocator::GetTypeId(), ns3::Building::GetTypeId(), ns3::RandomWalk2dOutdoorMobilityModel::GetTypeId(), AttributeObjectTest::GetTypeId(), ns3::CsmaNetDevice::GetTypeId(), ns3::dsdv::RoutingProtocol::GetTypeId(), ns3::dsr::DsrOptions::GetTypeId(), ns3::dsr::DsrRouting::GetTypeId(), ns3::DpdkNetDevice::GetTypeId(), ns3::FdNetDevice::GetTypeId(), ns3::NetmapNetDevice::GetTypeId(), ns3::Ping::GetTypeId(), ns3::V4TraceRoute::GetTypeId(), ns3::ArpCache::GetTypeId(), ns3::Icmpv6L4Protocol::GetTypeId(), ns3::Ipv4L3Protocol::GetTypeId(), ns3::Ipv4RawSocketImpl::GetTypeId(), ns3::Ipv6Extension::GetTypeId(), ns3::Ipv6L3Protocol::GetTypeId(), ns3::Ipv6Option::GetTypeId(), ns3::Ipv6RawSocketImpl::GetTypeId(), ns3::NdiscCache::GetTypeId(), ns3::Rip::GetTypeId(), ns3::RipNg::GetTypeId(), ns3::TcpBbr::GetTypeId(), ns3::TcpBic::GetTypeId(), ns3::TcpCubic::GetTypeId(), ns3::TcpIllinois::GetTypeId(), ns3::TcpLedbat::GetTypeId(), ns3::TcpScalable::GetTypeId(), ns3::TcpSocketBase::GetTypeId(), ns3::TcpSocketState::GetTypeId(), ns3::TcpSocket::GetTypeId(), ns3::TcpVegas::GetTypeId(), ns3::TcpVeno::GetTypeId(), ns3::TcpYeah::GetTypeId(), ns3::UdpSocket::GetTypeId(), ns3::LrWpanMac::GetTypeId(), ns3::CcHelper::GetTypeId(), ns3::LteHelper::GetTypeId(), ns3::LteHexGridEnbTopologyHelper::GetTypeId(), ns3::NoBackhaulEpcHelper::GetTypeId(), ns3::PointToPointEpcHelper::GetTypeId(), ns3::RadioEnvironmentMapHelper::GetTypeId(), ns3::A2A4RsrqHandoverAlgorithm::GetTypeId(), ns3::ComponentCarrier::GetTypeId(), ns3::CqaFfMacScheduler::GetTypeId(), ns3::EpsBearerTag::GetTypeId(), ns3::EpsBearer::GetTypeId(), ns3::FdBetFfMacScheduler::GetTypeId(), ns3::FdMtFfMacScheduler::GetTypeId(), ns3::FdTbfqFfMacScheduler::GetTypeId(), ns3::LteAnr::GetTypeId(), ns3::LteEnbMac::GetTypeId(), ns3::LteEnbNetDevice::GetTypeId(), ns3::LteEnbPhy::GetTypeId(), ns3::UeManager::GetTypeId(), ns3::LteEnbRrc::GetTypeId(), ns3::LteFfrAlgorithm::GetTypeId(), ns3::LteFfrDistributedAlgorithm::GetTypeId(), ns3::LteFfrEnhancedAlgorithm::GetTypeId(), ns3::LteFfrSoftAlgorithm::GetTypeId(), ns3::LteFrHardAlgorithm::GetTypeId(), ns3::LteFrSoftAlgorithm::GetTypeId(), ns3::LteFrStrictAlgorithm::GetTypeId(), ns3::LteNetDevice::GetTypeId(), ns3::LteSignalingRadioBearerInfo::GetTypeId(), ns3::LteDataRadioBearerInfo::GetTypeId(), ns3::LteRadioBearerTag::GetTypeId(), ns3::LteRlcAm::GetTypeId(), ns3::LteRlcTm::GetTypeId(), ns3::LteRlcUm::GetTypeId(), ns3::LteUeNetDevice::GetTypeId(), ns3::LteUePhy::GetTypeId(), ns3::LteUeRrc::GetTypeId(), ns3::PfFfMacScheduler::GetTypeId(), ns3::PssFfMacScheduler::GetTypeId(), ns3::RrFfMacScheduler::GetTypeId(), ns3::TdBetFfMacScheduler::GetTypeId(), ns3::TdMtFfMacScheduler::GetTypeId(), ns3::TdTbfqFfMacScheduler::GetTypeId(), ns3::TtaFfMacScheduler::GetTypeId(), EpsBearerTagUdpClient::GetTypeId(), ns3::LteFfrSimple::GetTypeId(), ns3::dot11s::AirtimeLinkMetricCalculator::GetTypeId(), ns3::dot11s::HwmpProtocol::GetTypeId(), ns3::dot11s::PeerLink::GetTypeId(), ns3::dot11s::PeerManagementProtocol::GetTypeId(), ns3::flame::FlameProtocol::GetTypeId(), ns3::MeshPointDevice::GetTypeId(), ns3::GridPositionAllocator::GetTypeId(), ns3::WaypointMobilityModel::GetTypeId(), MyTag::GetTypeId(), ns3::Channel::GetTypeId(), ns3::Node::GetTypeId(), ns3::DynamicQueueLimits::GetTypeId(), ns3::NetDeviceQueueInterface::GetTypeId(), ns3::PacketSocketClient::GetTypeId(), ns3::PacketSocket::GetTypeId(), ns3::PcapFileWrapper::GetTypeId(), ns3::PointToPointNetDevice::GetTypeId(), ns3::JakesProcess::GetTypeId(), ns3::SixLowPanNetDevice::GetTypeId(), ns3::AlohaNoackNetDevice::GetTypeId(), ns3::TraceFadingLossModel::GetTypeId(), ns3::TapBridge::GetTypeId(), ns3::CoDelQueueDisc::GetTypeId(), ns3::FqCobaltQueueDisc::GetTypeId(), ns3::FqCoDelQueueDisc::GetTypeId(), ns3::FqPieQueueDisc::GetTypeId(), ns3::PieQueueDisc::GetTypeId(), ns3::QueueDisc::GetTypeId(), ns3::RedQueueDisc::GetTypeId(), ns3::TbfQueueDisc::GetTypeId(), ns3::UanMacCw::GetTypeId(), ns3::UanMacRcGw::GetTypeId(), ns3::UanMacRc::GetTypeId(), ns3::UanPhyCalcSinrFhFsk::GetTypeId(), ns3::VirtualNetDevice::GetTypeId(), ns3::HeConfiguration::GetTypeId(), ns3::RrMultiUserScheduler::GetTypeId(), ns3::QosTxop::GetTypeId(), ns3::AarfWifiManager::GetTypeId(), ns3::AarfcdWifiManager::GetTypeId(), ns3::AmrrWifiManager::GetTypeId(), ns3::AparfWifiManager::GetTypeId(), ns3::ArfWifiManager::GetTypeId(), ns3::CaraWifiManager::GetTypeId(), ns3::MinstrelHtWifiManager::GetTypeId(), ns3::MinstrelWifiManager::GetTypeId(), ns3::OnoeWifiManager::GetTypeId(), ns3::ParfWifiManager::GetTypeId(), ns3::RraaWifiManager::GetTypeId(), ns3::RrpaaWifiManager::GetTypeId(), ns3::StaWifiMac::GetTypeId(), ns3::TableBasedErrorRateModel::GetTypeId(), ns3::Txop::GetTypeId(), ns3::WifiDefaultAckManager::GetTypeId(), ns3::WifiMac::GetTypeId(), ns3::WifiNetDevice::GetTypeId(), ns3::WifiPhy::GetTypeId(), ns3::WifiRemoteStationManager::GetTypeId(), ns3::BaseStationNetDevice::GetTypeId(), ns3::SimpleOfdmWimaxPhy::GetTypeId(), ns3::SubscriberStationNetDevice::GetTypeId(), ns3::WimaxMacQueue::GetTypeId(), ns3::WimaxNetDevice::GetTypeId(), and ns3::WimaxPhy::GetTypeId().
ns3::Ptr< const ns3::AttributeAccessor > ns3::MakeUintegerAccessor | ( | 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. |
Definition at line 46 of file uinteger.h.
ns3::Ptr< const ns3::AttributeChecker > ns3::MakeUintegerChecker | ( | ) |
Definition at line 96 of file uinteger.h.
References ns3::internal::MakeUintegerChecker().
Ptr< const AttributeChecker > ns3::internal::MakeUintegerChecker | ( | uint64_t | min, |
uint64_t | max, | ||
std::string | name | ||
) |
Make an Uinteger 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 ("uint8_t", "uint16_t", etc.). |
Definition at line 52 of file uinteger.cc.
References ns3::Copy(), ns3::Create(), ns3::UintegerValue::Get(), max, min, NS_LOG_FUNCTION, and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::MakeUintegerChecker().