--- a/bindings/python/apidefs/gcc-ILP32/callbacks_list.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/callbacks_list.py Fri Feb 12 16:20:59 2010 -0800
@@ -12,6 +12,8 @@
['bool', 'std::string', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
+ ['void', 'ns3::Mac48Address', 'unsigned char', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
+ ['void', 'ns3::Mac48Address', 'unsigned char', 'bool', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Packet const>', 'ns3::Ipv4Header const&', 'ns3::Socket::SocketErrno', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Ipv4Route>', 'ns3::Ptr<ns3::Packet const>', 'ns3::Ipv4Header const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Socket>', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
--- a/bindings/python/apidefs/gcc-ILP32/ns3_module_common.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_common.py Fri Feb 12 16:20:59 2010 -0800
@@ -53,24 +53,48 @@
module.add_class('PcapFileObject', parent=root_module['ns3::Object'])
## pcap-writer.h: ns3::PcapWriter [class]
module.add_class('PcapWriter', parent=root_module['ns3::Object'])
+ ## propagation-delay-model.h: ns3::PropagationDelayModel [class]
+ module.add_class('PropagationDelayModel', parent=root_module['ns3::Object'])
+ ## propagation-loss-model.h: ns3::PropagationLossModel [class]
+ module.add_class('PropagationLossModel', parent=root_module['ns3::Object'])
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel [class]
+ module.add_class('RandomPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
+ ## propagation-loss-model.h: ns3::RandomPropagationLossModel [class]
+ module.add_class('RandomPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## simple-ref-count.h: ns3::SimpleRefCount<ns3::AsciiWriter, ns3::empty, ns3::DefaultDeleter<ns3::AsciiWriter> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::AsciiWriter', 'ns3::empty', 'ns3::DefaultDeleter<ns3::AsciiWriter>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
## simple-ref-count.h: ns3::SimpleRefCount<ns3::Packet, ns3::empty, ns3::DefaultDeleter<ns3::Packet> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::Packet', 'ns3::empty', 'ns3::DefaultDeleter<ns3::Packet>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
+ ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel [class]
+ module.add_class('ThreeLogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## trailer.h: ns3::Trailer [class]
module.add_class('Trailer', parent=root_module['ns3::Chunk'])
+ ## propagation-loss-model.h: ns3::TwoRayGroundPropagationLossModel [class]
+ module.add_class('TwoRayGroundPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## ascii-writer.h: ns3::AsciiWriter [class]
module.add_class('AsciiWriter', parent=root_module['ns3::SimpleRefCount< ns3::AsciiWriter, ns3::empty, ns3::DefaultDeleter<ns3::AsciiWriter> >'])
## ascii-writer.h: ns3::AsciiWriter::Type [enumeration]
module.add_enum('Type', ['ENQUEUE', 'DEQUEUE', 'DROP', 'TX', 'RX'], outer_class=root_module['ns3::AsciiWriter'])
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel [class]
+ module.add_class('ConstantSpeedPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
## data-rate.h: ns3::DataRateChecker [class]
module.add_class('DataRateChecker', parent=root_module['ns3::AttributeChecker'])
## data-rate.h: ns3::DataRateValue [class]
module.add_class('DataRateValue', parent=root_module['ns3::AttributeValue'])
## error-model.h: ns3::ErrorModel [class]
module.add_class('ErrorModel', parent=root_module['ns3::Object'])
+ ## propagation-loss-model.h: ns3::FixedRssLossModel [class]
+ module.add_class('FixedRssLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## propagation-loss-model.h: ns3::FriisPropagationLossModel [class]
+ module.add_class('FriisPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel [class]
+ module.add_class('JakesPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## error-model.h: ns3::ListErrorModel [class]
module.add_class('ListErrorModel', parent=root_module['ns3::ErrorModel'])
+ ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel [class]
+ module.add_class('LogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel [class]
+ module.add_class('NakagamiPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## nix-vector.h: ns3::NixVector [class]
module.add_class('NixVector', parent=root_module['ns3::Object'])
## packet.h: ns3::Packet [class]
@@ -182,12 +206,24 @@
register_Ns3OutputStreamObject_methods(root_module, root_module['ns3::OutputStreamObject'])
register_Ns3PcapFileObject_methods(root_module, root_module['ns3::PcapFileObject'])
register_Ns3PcapWriter_methods(root_module, root_module['ns3::PcapWriter'])
+ register_Ns3PropagationDelayModel_methods(root_module, root_module['ns3::PropagationDelayModel'])
+ register_Ns3PropagationLossModel_methods(root_module, root_module['ns3::PropagationLossModel'])
+ register_Ns3RandomPropagationDelayModel_methods(root_module, root_module['ns3::RandomPropagationDelayModel'])
+ register_Ns3RandomPropagationLossModel_methods(root_module, root_module['ns3::RandomPropagationLossModel'])
+ register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, root_module['ns3::ThreeLogDistancePropagationLossModel'])
register_Ns3Trailer_methods(root_module, root_module['ns3::Trailer'])
+ register_Ns3TwoRayGroundPropagationLossModel_methods(root_module, root_module['ns3::TwoRayGroundPropagationLossModel'])
register_Ns3AsciiWriter_methods(root_module, root_module['ns3::AsciiWriter'])
+ register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, root_module['ns3::ConstantSpeedPropagationDelayModel'])
register_Ns3DataRateChecker_methods(root_module, root_module['ns3::DataRateChecker'])
register_Ns3DataRateValue_methods(root_module, root_module['ns3::DataRateValue'])
register_Ns3ErrorModel_methods(root_module, root_module['ns3::ErrorModel'])
+ register_Ns3FixedRssLossModel_methods(root_module, root_module['ns3::FixedRssLossModel'])
+ register_Ns3FriisPropagationLossModel_methods(root_module, root_module['ns3::FriisPropagationLossModel'])
+ register_Ns3JakesPropagationLossModel_methods(root_module, root_module['ns3::JakesPropagationLossModel'])
register_Ns3ListErrorModel_methods(root_module, root_module['ns3::ListErrorModel'])
+ register_Ns3LogDistancePropagationLossModel_methods(root_module, root_module['ns3::LogDistancePropagationLossModel'])
+ register_Ns3NakagamiPropagationLossModel_methods(root_module, root_module['ns3::NakagamiPropagationLossModel'])
register_Ns3NixVector_methods(root_module, root_module['ns3::NixVector'])
register_Ns3Packet_methods(root_module, root_module['ns3::Packet'])
register_Ns3RateErrorModel_methods(root_module, root_module['ns3::RateErrorModel'])
@@ -1091,6 +1127,94 @@
[])
return
+def register_Ns3PropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel(ns3::PropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::PropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::Time ns3::PropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::PropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ return
+
+def register_Ns3PropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::PropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::PropagationLossModel::SetNext(ns3::Ptr<ns3::PropagationLossModel> next) [member function]
+ cls.add_method('SetNext',
+ 'void',
+ [param('ns3::Ptr< ns3::PropagationLossModel >', 'next')])
+ ## propagation-loss-model.h: double ns3::PropagationLossModel::CalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('CalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::PropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3RandomPropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel(ns3::RandomPropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::RandomPropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::Time ns3::RandomPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::RandomPropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ return
+
+def register_Ns3RandomPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::RandomPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::RandomPropagationLossModel::RandomPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::RandomPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::ThreeLogDistancePropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel::ThreeLogDistancePropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::ThreeLogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3Trailer_methods(root_module, cls):
cls.add_output_stream_operator()
## trailer.h: ns3::Trailer::Trailer() [constructor]
@@ -1124,6 +1248,56 @@
is_pure_virtual=True, is_const=True, is_virtual=True)
return
+def register_Ns3TwoRayGroundPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::TwoRayGroundPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::TwoRayGroundPropagationLossModel::TwoRayGroundPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetLambda(double frequency, double speed) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'frequency'), param('double', 'speed')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetLambda(double lambda) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'lambda')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
+ cls.add_method('SetSystemLoss',
+ 'void',
+ [param('double', 'systemLoss')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetMinDistance(double minDistance) [member function]
+ cls.add_method('SetMinDistance',
+ 'void',
+ [param('double', 'minDistance')])
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetMinDistance() const [member function]
+ cls.add_method('GetMinDistance',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetLambda() const [member function]
+ cls.add_method('GetLambda',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetSystemLoss() const [member function]
+ cls.add_method('GetSystemLoss',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetHeightAboveZ(double heightAboveZ) [member function]
+ cls.add_method('SetHeightAboveZ',
+ 'void',
+ [param('double', 'heightAboveZ')])
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3AsciiWriter_methods(root_module, cls):
## ascii-writer.h: ns3::AsciiWriter::AsciiWriter(ns3::AsciiWriter const & arg0) [copy constructor]
cls.add_constructor([param('ns3::AsciiWriter const &', 'arg0')])
@@ -1138,6 +1312,32 @@
[param('ns3::AsciiWriter::Type', 'type'), param('std::string', 'message'), param('ns3::Ptr< ns3::Packet const >', 'p')])
return
+def register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel(ns3::ConstantSpeedPropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::ConstantSpeedPropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::Time ns3::ConstantSpeedPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: double ns3::ConstantSpeedPropagationDelayModel::GetSpeed() const [member function]
+ cls.add_method('GetSpeed',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::ConstantSpeedPropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-delay-model.h: void ns3::ConstantSpeedPropagationDelayModel::SetSpeed(double speed) [member function]
+ cls.add_method('SetSpeed',
+ 'void',
+ [param('double', 'speed')])
+ return
+
def register_Ns3DataRateChecker_methods(root_module, cls):
## data-rate.h: ns3::DataRateChecker::DataRateChecker() [constructor]
cls.add_constructor([])
@@ -1221,6 +1421,104 @@
is_pure_virtual=True, visibility='private', is_virtual=True)
return
+def register_Ns3FixedRssLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::FixedRssLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::FixedRssLossModel::FixedRssLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::FixedRssLossModel::SetRss(double rss) [member function]
+ cls.add_method('SetRss',
+ 'void',
+ [param('double', 'rss')])
+ ## propagation-loss-model.h: double ns3::FixedRssLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3FriisPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::FriisPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::FriisPropagationLossModel::FriisPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double frequency, double speed) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'frequency'), param('double', 'speed')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double lambda) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'lambda')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
+ cls.add_method('SetSystemLoss',
+ 'void',
+ [param('double', 'systemLoss')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetMinDistance(double minDistance) [member function]
+ cls.add_method('SetMinDistance',
+ 'void',
+ [param('double', 'minDistance')])
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetMinDistance() const [member function]
+ cls.add_method('GetMinDistance',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetLambda() const [member function]
+ cls.add_method('GetLambda',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetSystemLoss() const [member function]
+ cls.add_method('GetSystemLoss',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3JakesPropagationLossModel_methods(root_module, cls):
+ ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel::JakesPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNOscillators() const [member function]
+ cls.add_method('GetNOscillators',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNRays() const [member function]
+ cls.add_method('GetNRays',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## jakes-propagation-loss-model.h: static ns3::TypeId ns3::JakesPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNOscillators(uint8_t nOscillators) [member function]
+ cls.add_method('SetNOscillators',
+ 'void',
+ [param('uint8_t', 'nOscillators')])
+ ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNRays(uint8_t nRays) [member function]
+ cls.add_method('SetNRays',
+ 'void',
+ [param('uint8_t', 'nRays')])
+ ## jakes-propagation-loss-model.h: double ns3::JakesPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3ListErrorModel_methods(root_module, cls):
## error-model.h: ns3::ListErrorModel::ListErrorModel(ns3::ListErrorModel const & arg0) [copy constructor]
cls.add_constructor([param('ns3::ListErrorModel const &', 'arg0')])
@@ -1252,6 +1550,49 @@
visibility='private', is_virtual=True)
return
+def register_Ns3LogDistancePropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::LogDistancePropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel::LogDistancePropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetPathLossExponent(double n) [member function]
+ cls.add_method('SetPathLossExponent',
+ 'void',
+ [param('double', 'n')])
+ ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::GetPathLossExponent() const [member function]
+ cls.add_method('GetPathLossExponent',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetReference(double referenceDistance, double referenceLoss) [member function]
+ cls.add_method('SetReference',
+ 'void',
+ [param('double', 'referenceDistance'), param('double', 'referenceLoss')])
+ ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3NakagamiPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::NakagamiPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel::NakagamiPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::NakagamiPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3NixVector_methods(root_module, cls):
cls.add_output_stream_operator()
## nix-vector.h: ns3::NixVector::NixVector() [constructor]
--- a/bindings/python/apidefs/gcc-ILP32/ns3_module_core.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_core.py Fri Feb 12 16:20:59 2010 -0800
@@ -93,6 +93,8 @@
module.add_class('Vector3D')
## random-variable.h: ns3::WeibullVariable [class]
module.add_class('WeibullVariable', parent=root_module['ns3::RandomVariable'])
+ ## random-variable.h: ns3::ZetaVariable [class]
+ module.add_class('ZetaVariable', parent=root_module['ns3::RandomVariable'])
## random-variable.h: ns3::ZipfVariable [class]
module.add_class('ZipfVariable', parent=root_module['ns3::RandomVariable'])
## empty.h: ns3::empty [class]
@@ -351,6 +353,7 @@
register_Ns3Vector2D_methods(root_module, root_module['ns3::Vector2D'])
register_Ns3Vector3D_methods(root_module, root_module['ns3::Vector3D'])
register_Ns3WeibullVariable_methods(root_module, root_module['ns3::WeibullVariable'])
+ register_Ns3ZetaVariable_methods(root_module, root_module['ns3::ZetaVariable'])
register_Ns3ZipfVariable_methods(root_module, root_module['ns3::ZipfVariable'])
register_Ns3Empty_methods(root_module, root_module['ns3::empty'])
register_Ns3ConstantVariable_methods(root_module, root_module['ns3::ConstantVariable'])
@@ -1575,11 +1578,20 @@
cls.add_constructor([param('double', 'm'), param('double', 's'), param('double', 'b')])
return
+def register_Ns3ZetaVariable_methods(root_module, cls):
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable(ns3::ZetaVariable const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::ZetaVariable const &', 'arg0')])
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable(double alpha) [constructor]
+ cls.add_constructor([param('double', 'alpha')])
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable() [constructor]
+ cls.add_constructor([])
+ return
+
def register_Ns3ZipfVariable_methods(root_module, cls):
## random-variable.h: ns3::ZipfVariable::ZipfVariable(ns3::ZipfVariable const & arg0) [copy constructor]
cls.add_constructor([param('ns3::ZipfVariable const &', 'arg0')])
- ## random-variable.h: ns3::ZipfVariable::ZipfVariable(long int n, double alpha) [constructor]
- cls.add_constructor([param('long int', 'n'), param('double', 'alpha')])
+ ## random-variable.h: ns3::ZipfVariable::ZipfVariable(long int N, double alpha) [constructor]
+ cls.add_constructor([param('long int', 'N'), param('double', 'alpha')])
## random-variable.h: ns3::ZipfVariable::ZipfVariable() [constructor]
cls.add_constructor([])
return
--- a/bindings/python/apidefs/gcc-ILP32/ns3_module_global_routing.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_global_routing.py Fri Feb 12 16:20:59 2010 -0800
@@ -331,7 +331,7 @@
[])
## global-router-interface.h: ns3::Ipv4RoutingTableEntry * ns3::GlobalRouter::GetInjectedRoute(uint32_t i) [member function]
cls.add_method('GetInjectedRoute',
- 'ns3::Ipv4RoutingTableEntry *',
+ retval('ns3::Ipv4RoutingTableEntry *', caller_owns_return=False),
[param('uint32_t', 'i')])
## global-router-interface.h: void ns3::GlobalRouter::RemoveInjectedRoute(uint32_t i) [member function]
cls.add_method('RemoveInjectedRoute',
@@ -379,7 +379,7 @@
[])
## ipv4-global-routing.h: ns3::Ipv4RoutingTableEntry * ns3::Ipv4GlobalRouting::GetRoute(uint32_t i) [member function]
cls.add_method('GetRoute',
- 'ns3::Ipv4RoutingTableEntry *',
+ retval('ns3::Ipv4RoutingTableEntry *', caller_owns_return=False),
[param('uint32_t', 'i')])
## ipv4-global-routing.h: static ns3::TypeId ns3::Ipv4GlobalRouting::GetTypeId() [member function]
cls.add_method('GetTypeId',
--- a/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_olsr.py Fri Feb 12 16:20:59 2010 -0800
@@ -133,6 +133,7 @@
module.add_class('TwoHopNeighborTuple')
module.add_container('std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage >', 'ns3::olsr::MessageHeader::Hello::LinkMessage', container_type='vector')
module.add_container('std::vector< ns3::olsr::MessageHeader::Hna::Association >', 'ns3::olsr::MessageHeader::Hna::Association', container_type='vector')
+ module.add_container('std::vector< ns3::olsr::RoutingTableEntry >', 'ns3::olsr::RoutingTableEntry', container_type='vector')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >', 'ns3::olsr::DuplicateSet')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >*', 'ns3::olsr::DuplicateSet*')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >&', 'ns3::olsr::DuplicateSet&')
@@ -812,6 +813,11 @@
cls.add_method('Dump',
'void',
[])
+ ## olsr-routing-protocol.h: std::vector<ns3::olsr::RoutingTableEntry,std::allocator<ns3::olsr::RoutingTableEntry> > ns3::olsr::RoutingProtocol::GetRoutingTableEntries() const [member function]
+ cls.add_method('GetRoutingTableEntries',
+ 'std::vector< ns3::olsr::RoutingTableEntry >',
+ [],
+ is_const=True)
## olsr-routing-protocol.h: static ns3::TypeId ns3::olsr::RoutingProtocol::GetTypeId() [member function]
cls.add_method('GetTypeId',
'ns3::TypeId',
--- a/bindings/python/apidefs/gcc-ILP32/ns3_module_wifi.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-ILP32/ns3_module_wifi.py Fri Feb 12 16:20:59 2010 -0800
@@ -15,6 +15,14 @@
module.add_enum('AccessClass', ['AC_VO', 'AC_VI', 'AC_BE', 'AC_BK', 'AC_BE_NQOS', 'AC_UNDEF'])
## edca-txop-n.h: ns3::TypeOfStation [enumeration]
module.add_enum('TypeOfStation', ['STA', 'AP', 'ADHOC_STA'])
+ ## ctrl-headers.h: ns3::BlockAckType [enumeration]
+ module.add_enum('BlockAckType', ['BASIC_BLOCK_ACK', 'COMPRESSED_BLOCK_ACK', 'MULTI_TID_BLOCK_ACK'])
+ ## block-ack-manager.h: ns3::Bar [struct]
+ module.add_class('Bar')
+ ## block-ack-agreement.h: ns3::BlockAckAgreement [class]
+ module.add_class('BlockAckAgreement')
+ ## block-ack-manager.h: ns3::BlockAckManager [class]
+ module.add_class('BlockAckManager')
## capability-information.h: ns3::CapabilityInformation [class]
module.add_class('CapabilityInformation')
## dcf-manager.h: ns3::DcfManager [class]
@@ -25,6 +33,8 @@
module.add_class('InterferenceHelper')
## interference-helper.h: ns3::InterferenceHelper::SnrPer [struct]
module.add_class('SnrPer', outer_class=root_module['ns3::InterferenceHelper'])
+ ## mac-low.h: ns3::MacLowBlockAckEventListener [class]
+ module.add_class('MacLowBlockAckEventListener', allow_subclassing=True)
## mac-low.h: ns3::MacLowDcfListener [class]
module.add_class('MacLowDcfListener', allow_subclassing=True)
## mac-low.h: ns3::MacLowTransmissionListener [class]
@@ -33,6 +43,10 @@
module.add_class('MacLowTransmissionParameters')
## mac-rx-middle.h: ns3::MacRxMiddle [class]
module.add_class('MacRxMiddle')
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement [class]
+ module.add_class('OriginatorBlockAckAgreement', parent=root_module['ns3::BlockAckAgreement'])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::State [enumeration]
+ module.add_enum('State', ['PENDING', 'ESTABLISHED', 'INACTIVE', 'UNSUCCESSFUL'], outer_class=root_module['ns3::OriginatorBlockAckAgreement'])
## minstrel-wifi-manager.h: ns3::RateInfo [struct]
module.add_class('RateInfo')
## ssid.h: ns3::Ssid [class]
@@ -61,10 +75,16 @@
module.add_class('ConstantRateWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## ideal-wifi-manager.h: ns3::IdealWifiRemoteStation [class]
module.add_class('IdealWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader [class]
+ module.add_class('MgtAddBaRequestHeader', parent=root_module['ns3::Header'])
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader [class]
+ module.add_class('MgtAddBaResponseHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtAssocRequestHeader [class]
module.add_class('MgtAssocRequestHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtAssocResponseHeader [class]
module.add_class('MgtAssocResponseHeader', parent=root_module['ns3::Header'])
+ ## mgt-headers.h: ns3::MgtDelBaHeader [class]
+ module.add_class('MgtDelBaHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtProbeRequestHeader [class]
module.add_class('MgtProbeRequestHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtProbeResponseHeader [class]
@@ -73,26 +93,16 @@
module.add_class('MinstrelWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## onoe-wifi-manager.h: ns3::OnoeWifiRemoteStation [class]
module.add_class('OnoeWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
- ## propagation-delay-model.h: ns3::PropagationDelayModel [class]
- module.add_class('PropagationDelayModel', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::PropagationLossModel [class]
- module.add_class('PropagationLossModel', parent=root_module['ns3::Object'])
## qos-tag.h: ns3::QosTag [class]
module.add_class('QosTag', parent=root_module['ns3::Tag'])
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel [class]
- module.add_class('RandomPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
- ## propagation-loss-model.h: ns3::RandomPropagationLossModel [class]
- module.add_class('RandomPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation [class]
module.add_class('RraaWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## simple-ref-count.h: ns3::SimpleRefCount<ns3::InterferenceHelper::Event, ns3::empty, ns3::DefaultDeleter<ns3::InterferenceHelper::Event> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::InterferenceHelper::Event', 'ns3::empty', 'ns3::DefaultDeleter<ns3::InterferenceHelper::Event>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
- ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel [class]
- module.add_class('ThreeLogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## mgt-headers.h: ns3::WifiActionHeader [class]
module.add_class('WifiActionHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::WifiActionHeader::CategoryValue [enumeration]
- module.add_enum('CategoryValue', ['MESH_PEERING_MGT', 'MESH_LINK_METRIC', 'MESH_PATH_SELECTION', 'MESH_INTERWORKING', 'MESH_RESOURCE_COORDINATION', 'MESH_PROXY_FORWARDING'], outer_class=root_module['ns3::WifiActionHeader'])
+ module.add_enum('CategoryValue', ['BLOCK_ACK', 'MESH_PEERING_MGT', 'MESH_LINK_METRIC', 'MESH_PATH_SELECTION', 'MESH_INTERWORKING', 'MESH_RESOURCE_COORDINATION', 'MESH_PROXY_FORWARDING'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::PeerLinkMgtActionValue [enumeration]
module.add_enum('PeerLinkMgtActionValue', ['PEER_LINK_OPEN', 'PEER_LINK_CONFIRM', 'PEER_LINK_CLOSE'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::LinkMetricActionValue [enumeration]
@@ -103,6 +113,8 @@
module.add_enum('InterworkActionValue', ['PORTAL_ANNOUNCEMENT'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::ResourceCoordinationActionValue [enumeration]
module.add_enum('ResourceCoordinationActionValue', ['CONGESTION_CONTROL_NOTIFICATION', 'MDA_SETUP_REQUEST', 'MDA_SETUP_REPLY', 'MDAOP_ADVERTISMENT_REQUEST', 'MDAOP_ADVERTISMENTS', 'MDAOP_SET_TEARDOWN', 'BEACON_TIMING_REQUEST', 'BEACON_TIMING_RESPONSE', 'TBTT_ADJUSTMENT_REQUEST', 'MESH_CHANNEL_SWITCH_ANNOUNCEMENT'], outer_class=root_module['ns3::WifiActionHeader'])
+ ## mgt-headers.h: ns3::WifiActionHeader::BlockAckActionValue [enumeration]
+ module.add_enum('BlockAckActionValue', ['BLOCK_ACK_ADDBA_REQUEST', 'BLOCK_ACK_ADDBA_RESPONSE', 'BLOCK_ACK_DELBA'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::ActionValue [union]
module.add_class('ActionValue', outer_class=root_module['ns3::WifiActionHeader'])
## wifi-mac.h: ns3::WifiMac [class]
@@ -133,24 +145,18 @@
module.add_class('ArfWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
## constant-rate-wifi-manager.h: ns3::ConstantRateWifiManager [class]
module.add_class('ConstantRateWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel [class]
- module.add_class('ConstantSpeedPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader [class]
+ module.add_class('CtrlBAckRequestHeader', parent=root_module['ns3::Header'])
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader [class]
+ module.add_class('CtrlBAckResponseHeader', parent=root_module['ns3::Header'])
## dcf.h: ns3::Dcf [class]
module.add_class('Dcf', parent=root_module['ns3::Object'])
## edca-txop-n.h: ns3::EdcaTxopN [class]
module.add_class('EdcaTxopN', parent=root_module['ns3::Dcf'])
## error-rate-model.h: ns3::ErrorRateModel [class]
module.add_class('ErrorRateModel', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::FixedRssLossModel [class]
- module.add_class('FixedRssLossModel', parent=root_module['ns3::PropagationLossModel'])
- ## propagation-loss-model.h: ns3::FriisPropagationLossModel [class]
- module.add_class('FriisPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## ideal-wifi-manager.h: ns3::IdealWifiManager [class]
module.add_class('IdealWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
- ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel [class]
- module.add_class('JakesPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
- ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel [class]
- module.add_class('LogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## mac-low.h: ns3::MacLow [class]
module.add_class('MacLow', parent=root_module['ns3::Object'])
## mgt-headers.h: ns3::MgtBeaconHeader [class]
@@ -159,8 +165,6 @@
module.add_class('MinstrelWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
## msdu-aggregator.h: ns3::MsduAggregator [class]
module.add_class('MsduAggregator', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel [class]
- module.add_class('NakagamiPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## nqap-wifi-mac.h: ns3::NqapWifiMac [class]
module.add_class('NqapWifiMac', parent=root_module['ns3::WifiMac'])
## nqsta-wifi-mac.h: ns3::NqstaWifiMac [class]
@@ -286,15 +290,20 @@
def register_methods(root_module):
+ register_Ns3Bar_methods(root_module, root_module['ns3::Bar'])
+ register_Ns3BlockAckAgreement_methods(root_module, root_module['ns3::BlockAckAgreement'])
+ register_Ns3BlockAckManager_methods(root_module, root_module['ns3::BlockAckManager'])
register_Ns3CapabilityInformation_methods(root_module, root_module['ns3::CapabilityInformation'])
register_Ns3DcfManager_methods(root_module, root_module['ns3::DcfManager'])
register_Ns3DcfState_methods(root_module, root_module['ns3::DcfState'])
register_Ns3InterferenceHelper_methods(root_module, root_module['ns3::InterferenceHelper'])
register_Ns3InterferenceHelperSnrPer_methods(root_module, root_module['ns3::InterferenceHelper::SnrPer'])
+ register_Ns3MacLowBlockAckEventListener_methods(root_module, root_module['ns3::MacLowBlockAckEventListener'])
register_Ns3MacLowDcfListener_methods(root_module, root_module['ns3::MacLowDcfListener'])
register_Ns3MacLowTransmissionListener_methods(root_module, root_module['ns3::MacLowTransmissionListener'])
register_Ns3MacLowTransmissionParameters_methods(root_module, root_module['ns3::MacLowTransmissionParameters'])
register_Ns3MacRxMiddle_methods(root_module, root_module['ns3::MacRxMiddle'])
+ register_Ns3OriginatorBlockAckAgreement_methods(root_module, root_module['ns3::OriginatorBlockAckAgreement'])
register_Ns3RateInfo_methods(root_module, root_module['ns3::RateInfo'])
register_Ns3Ssid_methods(root_module, root_module['ns3::Ssid'])
register_Ns3StatusCode_methods(root_module, root_module['ns3::StatusCode'])
@@ -308,19 +317,17 @@
register_Ns3ArfWifiRemoteStation_methods(root_module, root_module['ns3::ArfWifiRemoteStation'])
register_Ns3ConstantRateWifiRemoteStation_methods(root_module, root_module['ns3::ConstantRateWifiRemoteStation'])
register_Ns3IdealWifiRemoteStation_methods(root_module, root_module['ns3::IdealWifiRemoteStation'])
+ register_Ns3MgtAddBaRequestHeader_methods(root_module, root_module['ns3::MgtAddBaRequestHeader'])
+ register_Ns3MgtAddBaResponseHeader_methods(root_module, root_module['ns3::MgtAddBaResponseHeader'])
register_Ns3MgtAssocRequestHeader_methods(root_module, root_module['ns3::MgtAssocRequestHeader'])
register_Ns3MgtAssocResponseHeader_methods(root_module, root_module['ns3::MgtAssocResponseHeader'])
+ register_Ns3MgtDelBaHeader_methods(root_module, root_module['ns3::MgtDelBaHeader'])
register_Ns3MgtProbeRequestHeader_methods(root_module, root_module['ns3::MgtProbeRequestHeader'])
register_Ns3MgtProbeResponseHeader_methods(root_module, root_module['ns3::MgtProbeResponseHeader'])
register_Ns3MinstrelWifiRemoteStation_methods(root_module, root_module['ns3::MinstrelWifiRemoteStation'])
register_Ns3OnoeWifiRemoteStation_methods(root_module, root_module['ns3::OnoeWifiRemoteStation'])
- register_Ns3PropagationDelayModel_methods(root_module, root_module['ns3::PropagationDelayModel'])
- register_Ns3PropagationLossModel_methods(root_module, root_module['ns3::PropagationLossModel'])
register_Ns3QosTag_methods(root_module, root_module['ns3::QosTag'])
- register_Ns3RandomPropagationDelayModel_methods(root_module, root_module['ns3::RandomPropagationDelayModel'])
- register_Ns3RandomPropagationLossModel_methods(root_module, root_module['ns3::RandomPropagationLossModel'])
register_Ns3RraaWifiRemoteStation_methods(root_module, root_module['ns3::RraaWifiRemoteStation'])
- register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, root_module['ns3::ThreeLogDistancePropagationLossModel'])
register_Ns3WifiActionHeader_methods(root_module, root_module['ns3::WifiActionHeader'])
register_Ns3WifiActionHeaderActionValue_methods(root_module, root_module['ns3::WifiActionHeader::ActionValue'])
register_Ns3WifiMac_methods(root_module, root_module['ns3::WifiMac'])
@@ -334,20 +341,16 @@
register_Ns3AmsduSubframeHeader_methods(root_module, root_module['ns3::AmsduSubframeHeader'])
register_Ns3ArfWifiManager_methods(root_module, root_module['ns3::ArfWifiManager'])
register_Ns3ConstantRateWifiManager_methods(root_module, root_module['ns3::ConstantRateWifiManager'])
- register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, root_module['ns3::ConstantSpeedPropagationDelayModel'])
+ register_Ns3CtrlBAckRequestHeader_methods(root_module, root_module['ns3::CtrlBAckRequestHeader'])
+ register_Ns3CtrlBAckResponseHeader_methods(root_module, root_module['ns3::CtrlBAckResponseHeader'])
register_Ns3Dcf_methods(root_module, root_module['ns3::Dcf'])
register_Ns3EdcaTxopN_methods(root_module, root_module['ns3::EdcaTxopN'])
register_Ns3ErrorRateModel_methods(root_module, root_module['ns3::ErrorRateModel'])
- register_Ns3FixedRssLossModel_methods(root_module, root_module['ns3::FixedRssLossModel'])
- register_Ns3FriisPropagationLossModel_methods(root_module, root_module['ns3::FriisPropagationLossModel'])
register_Ns3IdealWifiManager_methods(root_module, root_module['ns3::IdealWifiManager'])
- register_Ns3JakesPropagationLossModel_methods(root_module, root_module['ns3::JakesPropagationLossModel'])
- register_Ns3LogDistancePropagationLossModel_methods(root_module, root_module['ns3::LogDistancePropagationLossModel'])
register_Ns3MacLow_methods(root_module, root_module['ns3::MacLow'])
register_Ns3MgtBeaconHeader_methods(root_module, root_module['ns3::MgtBeaconHeader'])
register_Ns3MinstrelWifiManager_methods(root_module, root_module['ns3::MinstrelWifiManager'])
register_Ns3MsduAggregator_methods(root_module, root_module['ns3::MsduAggregator'])
- register_Ns3NakagamiPropagationLossModel_methods(root_module, root_module['ns3::NakagamiPropagationLossModel'])
register_Ns3NqapWifiMac_methods(root_module, root_module['ns3::NqapWifiMac'])
register_Ns3NqstaWifiMac_methods(root_module, root_module['ns3::NqstaWifiMac'])
register_Ns3OnoeWifiManager_methods(root_module, root_module['ns3::OnoeWifiManager'])
@@ -367,6 +370,216 @@
register_Ns3DcaTxop_methods(root_module, root_module['ns3::DcaTxop'])
return
+def register_Ns3Bar_methods(root_module, cls):
+ ## block-ack-manager.h: ns3::Bar::Bar(ns3::Bar const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::Bar const &', 'arg0')])
+ ## block-ack-manager.h: ns3::Bar::Bar() [constructor]
+ cls.add_constructor([])
+ ## block-ack-manager.h: ns3::Bar::Bar(ns3::Ptr<ns3::Packet const> packet, ns3::Mac48Address recipient, uint8_t tid, bool immediate) [constructor]
+ cls.add_constructor([param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('bool', 'immediate')])
+ ## block-ack-manager.h: ns3::Bar::bar [variable]
+ cls.add_instance_attribute('bar', 'ns3::Ptr< ns3::Packet const >', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::immediate [variable]
+ cls.add_instance_attribute('immediate', 'bool', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::recipient [variable]
+ cls.add_instance_attribute('recipient', 'ns3::Mac48Address', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::tid [variable]
+ cls.add_instance_attribute('tid', 'uint8_t', is_const=False)
+ return
+
+def register_Ns3BlockAckAgreement_methods(root_module, cls):
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement(ns3::BlockAckAgreement const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::BlockAckAgreement const &', 'arg0')])
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement() [constructor]
+ cls.add_constructor([])
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement(ns3::Mac48Address peer, uint8_t tid) [constructor]
+ cls.add_constructor([param('ns3::Mac48Address', 'peer'), param('uint8_t', 'tid')])
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: ns3::Mac48Address ns3::BlockAckAgreement::GetPeer() const [member function]
+ cls.add_method('GetPeer',
+ 'ns3::Mac48Address',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint8_t ns3::BlockAckAgreement::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: bool ns3::BlockAckAgreement::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: bool ns3::BlockAckAgreement::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetBufferSize(uint16_t bufferSize) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'bufferSize')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
+def register_Ns3BlockAckManager_methods(root_module, cls):
+ ## block-ack-manager.h: ns3::BlockAckManager::BlockAckManager() [constructor]
+ cls.add_constructor([])
+ ## block-ack-manager.h: void ns3::BlockAckManager::CreateAgreement(ns3::MgtAddBaRequestHeader const * reqHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('CreateAgreement',
+ 'void',
+ [param('ns3::MgtAddBaRequestHeader const *', 'reqHdr'), param('ns3::Mac48Address', 'recipient')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::DestroyAgreement(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('DestroyAgreement',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::ExistsAgreement(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('ExistsAgreement',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::ExistsAgreementInState(ns3::Mac48Address recipient, uint8_t tid, ns3::OriginatorBlockAckAgreement::State state) const [member function]
+ cls.add_method('ExistsAgreementInState',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('ns3::OriginatorBlockAckAgreement::State', 'state')],
+ is_const=True)
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNBufferedPackets(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('GetNBufferedPackets',
+ 'uint32_t',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNRetryNeededPackets(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('GetNRetryNeededPackets',
+ 'uint32_t',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: ns3::Ptr<ns3::Packet const> ns3::BlockAckManager::GetNextPacket(ns3::WifiMacHeader & hdr) [member function]
+ cls.add_method('GetNextPacket',
+ 'ns3::Ptr< ns3::Packet const >',
+ [param('ns3::WifiMacHeader &', 'hdr')])
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNextPacketSize() const [member function]
+ cls.add_method('GetNextPacketSize',
+ 'uint32_t',
+ [],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasBar(ns3::Bar & bar) [member function]
+ cls.add_method('HasBar',
+ 'bool',
+ [param('ns3::Bar &', 'bar')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasOtherFragments(uint16_t sequenceNumber) const [member function]
+ cls.add_method('HasOtherFragments',
+ 'bool',
+ [param('uint16_t', 'sequenceNumber')],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasPackets() const [member function]
+ cls.add_method('HasPackets',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyAgreementEstablished(ns3::Mac48Address recipient, uint8_t tid, uint16_t startingSeq) [member function]
+ cls.add_method('NotifyAgreementEstablished',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('uint16_t', 'startingSeq')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyAgreementUnsuccessful(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('NotifyAgreementUnsuccessful',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyGotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address recipient) [member function]
+ cls.add_method('NotifyGotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'recipient')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyMpduTransmission(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('NotifyMpduTransmission',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckInactivityCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, bool, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetBlockAckInactivityCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, bool, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckThreshold(uint8_t nPackets) [member function]
+ cls.add_method('SetBlockAckThreshold',
+ 'void',
+ [param('uint8_t', 'nPackets')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckType(ns3::BlockAckType bAckType) [member function]
+ cls.add_method('SetBlockAckType',
+ 'void',
+ [param('ns3::BlockAckType', 'bAckType')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockDestinationCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetBlockDestinationCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetMaxPacketDelay(ns3::Time maxDelay) [member function]
+ cls.add_method('SetMaxPacketDelay',
+ 'void',
+ [param('ns3::Time', 'maxDelay')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetQueue(ns3::Ptr<ns3::WifiMacQueue> queue) [member function]
+ cls.add_method('SetQueue',
+ 'void',
+ [param('ns3::Ptr< ns3::WifiMacQueue >', 'queue')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetTxMiddle(ns3::MacTxMiddle * txMiddle) [member function]
+ cls.add_method('SetTxMiddle',
+ 'void',
+ [param('ns3::MacTxMiddle *', 'txMiddle')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetUnblockDestinationCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetUnblockDestinationCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::StorePacket(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr, ns3::Time tStamp) [member function]
+ cls.add_method('StorePacket',
+ 'void',
+ [param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const &', 'hdr'), param('ns3::Time', 'tStamp')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::SwitchToBlockAckIfNeeded(ns3::Mac48Address recipient, uint8_t tid, uint16_t startingSeq) [member function]
+ cls.add_method('SwitchToBlockAckIfNeeded',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('uint16_t', 'startingSeq')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::TearDownBlockAck(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('TearDownBlockAck',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::UpdateAgreement(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('UpdateAgreement',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'recipient')])
+ return
+
def register_Ns3CapabilityInformation_methods(root_module, cls):
## capability-information.h: ns3::CapabilityInformation::CapabilityInformation(ns3::CapabilityInformation const & arg0) [copy constructor]
cls.add_constructor([param('ns3::CapabilityInformation const &', 'arg0')])
@@ -645,6 +858,18 @@
cls.add_instance_attribute('snr', 'double', is_const=False)
return
+def register_Ns3MacLowBlockAckEventListener_methods(root_module, cls):
+ ## mac-low.h: ns3::MacLowBlockAckEventListener::MacLowBlockAckEventListener(ns3::MacLowBlockAckEventListener const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MacLowBlockAckEventListener const &', 'arg0')])
+ ## mac-low.h: ns3::MacLowBlockAckEventListener::MacLowBlockAckEventListener() [constructor]
+ cls.add_constructor([])
+ ## mac-low.h: void ns3::MacLowBlockAckEventListener::BlockAckInactivityTimeout(ns3::Mac48Address originator, uint8_t tid) [member function]
+ cls.add_method('BlockAckInactivityTimeout',
+ 'void',
+ [param('ns3::Mac48Address', 'originator'), param('uint8_t', 'tid')],
+ is_pure_virtual=True, is_virtual=True)
+ return
+
def register_Ns3MacLowDcfListener_methods(root_module, cls):
## mac-low.h: ns3::MacLowDcfListener::MacLowDcfListener(ns3::MacLowDcfListener const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MacLowDcfListener const &', 'arg0')])
@@ -697,6 +922,11 @@
'void',
[param('double', 'snr'), param('ns3::WifiMode', 'txMode')],
is_pure_virtual=True, is_virtual=True)
+ ## mac-low.h: void ns3::MacLowTransmissionListener::GotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address source) [member function]
+ cls.add_method('GotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'source')],
+ is_virtual=True)
## mac-low.h: void ns3::MacLowTransmissionListener::GotCts(double snr, ns3::WifiMode txMode) [member function]
cls.add_method('GotCts',
'void',
@@ -707,6 +937,11 @@
'void',
[],
is_pure_virtual=True, is_virtual=True)
+ ## mac-low.h: void ns3::MacLowTransmissionListener::MissedBlockAck() [member function]
+ cls.add_method('MissedBlockAck',
+ 'void',
+ [],
+ is_virtual=True)
## mac-low.h: void ns3::MacLowTransmissionListener::MissedCts() [member function]
cls.add_method('MissedCts',
'void',
@@ -745,10 +980,22 @@
cls.add_method('EnableAck',
'void',
[])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableBasicBlockAck() [member function]
+ cls.add_method('EnableBasicBlockAck',
+ 'void',
+ [])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableCompressedBlockAck() [member function]
+ cls.add_method('EnableCompressedBlockAck',
+ 'void',
+ [])
## mac-low.h: void ns3::MacLowTransmissionParameters::EnableFastAck() [member function]
cls.add_method('EnableFastAck',
'void',
[])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableMultiTidBlockAck() [member function]
+ cls.add_method('EnableMultiTidBlockAck',
+ 'void',
+ [])
## mac-low.h: void ns3::MacLowTransmissionParameters::EnableNextData(uint32_t size) [member function]
cls.add_method('EnableNextData',
'void',
@@ -795,11 +1042,26 @@
'bool',
[],
is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitBasicBlockAck() const [member function]
+ cls.add_method('MustWaitBasicBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitCompressedBlockAck() const [member function]
+ cls.add_method('MustWaitCompressedBlockAck',
+ 'bool',
+ [],
+ is_const=True)
## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitFastAck() const [member function]
cls.add_method('MustWaitFastAck',
'bool',
[],
is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitMultiTidBlockAck() const [member function]
+ cls.add_method('MustWaitMultiTidBlockAck',
+ 'bool',
+ [],
+ is_const=True)
## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitNormalAck() const [member function]
cls.add_method('MustWaitNormalAck',
'bool',
@@ -827,6 +1089,52 @@
[param('ns3::Callback< void, ns3::Ptr< ns3::Packet >, ns3::WifiMacHeader const *, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
return
+def register_Ns3OriginatorBlockAckAgreement_methods(root_module, cls):
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement(ns3::OriginatorBlockAckAgreement const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::OriginatorBlockAckAgreement const &', 'arg0')])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement() [constructor]
+ cls.add_constructor([])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement(ns3::Mac48Address recipient, uint8_t tid) [constructor]
+ cls.add_constructor([param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::CompleteExchange() [member function]
+ cls.add_method('CompleteExchange',
+ 'void',
+ [])
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsEstablished() const [member function]
+ cls.add_method('IsEstablished',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsInactive() const [member function]
+ cls.add_method('IsInactive',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsPending() const [member function]
+ cls.add_method('IsPending',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsUnsuccessful() const [member function]
+ cls.add_method('IsUnsuccessful',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::NeedBlockAckRequest() const [member function]
+ cls.add_method('NeedBlockAckRequest',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::NotifyMpduTransmission() [member function]
+ cls.add_method('NotifyMpduTransmission',
+ 'void',
+ [])
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::SetState(ns3::OriginatorBlockAckAgreement::State state) [member function]
+ cls.add_method('SetState',
+ 'void',
+ [param('ns3::OriginatorBlockAckAgreement::State', 'state')])
+ return
+
def register_Ns3RateInfo_methods(root_module, cls):
## minstrel-wifi-manager.h: ns3::RateInfo::RateInfo() [constructor]
cls.add_constructor([])
@@ -1612,6 +1920,196 @@
is_const=True, visibility='private', is_virtual=True)
return
+def register_Ns3MgtAddBaRequestHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader(ns3::MgtAddBaRequestHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtAddBaRequestHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaRequestHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtAddBaRequestHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaRequestHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint8_t ns3::MgtAddBaRequestHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtAddBaRequestHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaRequestHeader::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaRequestHeader::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetBufferSize(uint16_t size) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'size')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetTid(uint8_t tid) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
+def register_Ns3MgtAddBaResponseHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader(ns3::MgtAddBaResponseHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtAddBaResponseHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaResponseHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaResponseHeader::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtAddBaResponseHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaResponseHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: ns3::StatusCode ns3::MgtAddBaResponseHeader::GetStatusCode() const [member function]
+ cls.add_method('GetStatusCode',
+ 'ns3::StatusCode',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint8_t ns3::MgtAddBaResponseHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaResponseHeader::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtAddBaResponseHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaResponseHeader::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaResponseHeader::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetBufferSize(uint16_t size) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'size')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetStatusCode(ns3::StatusCode code) [member function]
+ cls.add_method('SetStatusCode',
+ 'void',
+ [param('ns3::StatusCode', 'code')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetTid(uint8_t tid) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
def register_Ns3MgtAssocRequestHeader_methods(root_module, cls):
## mgt-headers.h: ns3::MgtAssocRequestHeader::MgtAssocRequestHeader(ns3::MgtAssocRequestHeader const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MgtAssocRequestHeader const &', 'arg0')])
@@ -1729,6 +2227,65 @@
[param('ns3::SupportedRates', 'rates')])
return
+def register_Ns3MgtDelBaHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtDelBaHeader::MgtDelBaHeader(ns3::MgtDelBaHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtDelBaHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtDelBaHeader::MgtDelBaHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtDelBaHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtDelBaHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtDelBaHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint8_t ns3::MgtDelBaHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtDelBaHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtDelBaHeader::IsByOriginator() const [member function]
+ cls.add_method('IsByOriginator',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetByOriginator() [member function]
+ cls.add_method('SetByOriginator',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetByRecipient() [member function]
+ cls.add_method('SetByRecipient',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetTid(uint8_t arg0) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'arg0')])
+ return
+
def register_Ns3MgtProbeRequestHeader_methods(root_module, cls):
## mgt-headers.h: ns3::MgtProbeRequestHeader::MgtProbeRequestHeader() [constructor]
cls.add_constructor([])
@@ -1966,47 +2523,6 @@
is_const=True, visibility='private', is_virtual=True)
return
-def register_Ns3PropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel() [constructor]
- cls.add_constructor([])
- ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel(ns3::PropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::PropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::Time ns3::PropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_pure_virtual=True, is_const=True, is_virtual=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::PropagationDelayModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- return
-
-def register_Ns3PropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::PropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::PropagationLossModel::SetNext(ns3::Ptr<ns3::PropagationLossModel> next) [member function]
- cls.add_method('SetNext',
- 'void',
- [param('ns3::Ptr< ns3::PropagationLossModel >', 'next')])
- ## propagation-loss-model.h: double ns3::PropagationLossModel::CalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('CalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True)
- ## propagation-loss-model.h: double ns3::PropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3QosTag_methods(root_module, cls):
## qos-tag.h: ns3::QosTag::QosTag(ns3::QosTag const & arg0) [copy constructor]
cls.add_constructor([param('ns3::QosTag const &', 'arg0')])
@@ -2059,38 +2575,6 @@
[param('ns3::UserPriority', 'up')])
return
-def register_Ns3RandomPropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel(ns3::RandomPropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::RandomPropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel() [constructor]
- cls.add_constructor([])
- ## propagation-delay-model.h: ns3::Time ns3::RandomPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, is_virtual=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::RandomPropagationDelayModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- return
-
-def register_Ns3RandomPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::RandomPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::RandomPropagationLossModel::RandomPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::RandomPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3RraaWifiRemoteStation_methods(root_module, cls):
## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation::RraaWifiRemoteStation(ns3::RraaWifiRemoteStation const & arg0) [copy constructor]
cls.add_constructor([param('ns3::RraaWifiRemoteStation const &', 'arg0')])
@@ -2153,21 +2637,6 @@
is_const=True, visibility='private', is_virtual=True)
return
-def register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::ThreeLogDistancePropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel::ThreeLogDistancePropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::ThreeLogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3WifiActionHeader_methods(root_module, cls):
## mgt-headers.h: ns3::WifiActionHeader::WifiActionHeader(ns3::WifiActionHeader const & arg0) [copy constructor]
cls.add_constructor([param('ns3::WifiActionHeader const &', 'arg0')])
@@ -2222,6 +2691,8 @@
cls.add_constructor([])
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::ActionValue(ns3::WifiActionHeader::ActionValue const & arg0) [copy constructor]
cls.add_constructor([param('ns3::WifiActionHeader::ActionValue const &', 'arg0')])
+ ## mgt-headers.h: ns3::WifiActionHeader::ActionValue::blockAck [variable]
+ cls.add_instance_attribute('blockAck', 'ns3::WifiActionHeader::BlockAckActionValue', is_const=False)
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::interwork [variable]
cls.add_instance_attribute('interwork', 'ns3::WifiActionHeader::InterworkActionValue', is_const=False)
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::linkMetrtic [variable]
@@ -2263,11 +2734,21 @@
'ns3::Mac48Address',
[],
is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## wifi-mac.h: ns3::Time ns3::WifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## wifi-mac.h: ns3::Mac48Address ns3::WifiMac::GetBssid() const [member function]
cls.add_method('GetBssid',
'ns3::Mac48Address',
[],
is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## wifi-mac.h: ns3::Time ns3::WifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## wifi-mac.h: ns3::Time ns3::WifiMac::GetCtsTimeout() const [member function]
cls.add_method('GetCtsTimeout',
'ns3::Time',
@@ -2348,6 +2829,16 @@
'void',
[param('ns3::Mac48Address', 'address')],
is_pure_virtual=True, is_virtual=True)
+ ## wifi-mac.h: void ns3::WifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## wifi-mac.h: void ns3::WifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
## wifi-mac.h: void ns3::WifiMac::SetCtsTimeout(ns3::Time ctsTimeout) [member function]
cls.add_method('SetCtsTimeout',
'void',
@@ -2559,6 +3050,16 @@
'bool',
[],
is_const=True)
+ ## wifi-mac-header.h: bool ns3::WifiMacHeader::IsBlockAck() const [member function]
+ cls.add_method('IsBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## wifi-mac-header.h: bool ns3::WifiMacHeader::IsBlockAckReq() const [member function]
+ cls.add_method('IsBlockAckReq',
+ 'bool',
+ [],
+ is_const=True)
## wifi-mac-header.h: bool ns3::WifiMacHeader::IsCfpoll() const [member function]
cls.add_method('IsCfpoll',
'bool',
@@ -2716,6 +3217,14 @@
cls.add_method('SetBeacon',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetBlockAck() [member function]
+ cls.add_method('SetBlockAck',
+ 'void',
+ [])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetBlockAckReq() [member function]
+ cls.add_method('SetBlockAckReq',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetDsFrom() [member function]
cls.add_method('SetDsFrom',
'void',
@@ -2776,10 +3285,18 @@
cls.add_method('SetQosAmsdu',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosBlockAck() [member function]
+ cls.add_method('SetQosBlockAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosEosp() [member function]
cls.add_method('SetQosEosp',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNoAck() [member function]
+ cls.add_method('SetQosNoAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNoAmsdu() [member function]
cls.add_method('SetQosNoAmsdu',
'void',
@@ -2788,6 +3305,10 @@
cls.add_method('SetQosNoEosp',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNormalAck() [member function]
+ cls.add_method('SetQosNormalAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosTid(uint8_t tid) [member function]
cls.add_method('SetQosTid',
'void',
@@ -3759,30 +4280,202 @@
visibility='private', is_virtual=True)
return
-def register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel(ns3::ConstantSpeedPropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::ConstantSpeedPropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel() [constructor]
+def register_Ns3CtrlBAckRequestHeader_methods(root_module, cls):
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader::CtrlBAckRequestHeader(ns3::CtrlBAckRequestHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::CtrlBAckRequestHeader const &', 'arg0')])
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader::CtrlBAckRequestHeader() [constructor]
cls.add_constructor([])
- ## propagation-delay-model.h: ns3::Time ns3::ConstantSpeedPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, is_virtual=True)
- ## propagation-delay-model.h: double ns3::ConstantSpeedPropagationDelayModel::GetSpeed() const [member function]
- cls.add_method('GetSpeed',
- 'double',
- [],
- is_const=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::ConstantSpeedPropagationDelayModel::GetTypeId() [member function]
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckRequestHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## ctrl-headers.h: ns3::TypeId ns3::CtrlBAckRequestHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckRequestHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckRequestHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckRequestHeader::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint8_t ns3::CtrlBAckRequestHeader::GetTidInfo() const [member function]
+ cls.add_method('GetTidInfo',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: static ns3::TypeId ns3::CtrlBAckRequestHeader::GetTypeId() [member function]
cls.add_method('GetTypeId',
'ns3::TypeId',
[],
is_static=True)
- ## propagation-delay-model.h: void ns3::ConstantSpeedPropagationDelayModel::SetSpeed(double speed) [member function]
- cls.add_method('SetSpeed',
- 'void',
- [param('double', 'speed')])
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsBasic() const [member function]
+ cls.add_method('IsBasic',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsCompressed() const [member function]
+ cls.add_method('IsCompressed',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsMultiTid() const [member function]
+ cls.add_method('IsMultiTid',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::MustSendHtImmediateAck() const [member function]
+ cls.add_method('MustSendHtImmediateAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetHtImmediateAck(bool immediateAck) [member function]
+ cls.add_method('SetHtImmediateAck',
+ 'void',
+ [param('bool', 'immediateAck')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetTidInfo(uint8_t tid) [member function]
+ cls.add_method('SetTidInfo',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetType(ns3::BlockAckType type) [member function]
+ cls.add_method('SetType',
+ 'void',
+ [param('ns3::BlockAckType', 'type')])
+ return
+
+def register_Ns3CtrlBAckResponseHeader_methods(root_module, cls):
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader::CtrlBAckResponseHeader(ns3::CtrlBAckResponseHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::CtrlBAckResponseHeader const &', 'arg0')])
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader::CtrlBAckResponseHeader() [constructor]
+ cls.add_constructor([])
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckResponseHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## ctrl-headers.h: ns3::TypeId ns3::CtrlBAckResponseHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckResponseHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckResponseHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckResponseHeader::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint8_t ns3::CtrlBAckResponseHeader::GetTidInfo() const [member function]
+ cls.add_method('GetTidInfo',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: static ns3::TypeId ns3::CtrlBAckResponseHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsBasic() const [member function]
+ cls.add_method('IsBasic',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsCompressed() const [member function]
+ cls.add_method('IsCompressed',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsFragmentReceived(uint16_t seq, uint8_t frag) const [member function]
+ cls.add_method('IsFragmentReceived',
+ 'bool',
+ [param('uint16_t', 'seq'), param('uint8_t', 'frag')],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsMultiTid() const [member function]
+ cls.add_method('IsMultiTid',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsPacketReceived(uint16_t seq) const [member function]
+ cls.add_method('IsPacketReceived',
+ 'bool',
+ [param('uint16_t', 'seq')],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::MustSendHtImmediateAck() const [member function]
+ cls.add_method('MustSendHtImmediateAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetHtImmediateAck(bool immeadiateAck) [member function]
+ cls.add_method('SetHtImmediateAck',
+ 'void',
+ [param('bool', 'immeadiateAck')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetReceivedFragment(uint16_t seq, uint8_t frag) [member function]
+ cls.add_method('SetReceivedFragment',
+ 'void',
+ [param('uint16_t', 'seq'), param('uint8_t', 'frag')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetReceivedPacket(uint16_t seq) [member function]
+ cls.add_method('SetReceivedPacket',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetStartingSequenceControl(uint16_t seqControl) [member function]
+ cls.add_method('SetStartingSequenceControl',
+ 'void',
+ [param('uint16_t', 'seqControl')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetTidInfo(uint8_t tid) [member function]
+ cls.add_method('SetTidInfo',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetType(ns3::BlockAckType type) [member function]
+ cls.add_method('SetType',
+ 'void',
+ [param('ns3::BlockAckType', 'type')])
return
def register_Ns3Dcf_methods(root_module, cls):
@@ -3953,6 +4646,22 @@
cls.add_method('GotAck',
'void',
[param('double', 'snr'), param('ns3::WifiMode', 'txMode')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'recipient')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::MissedBlockAck() [member function]
+ cls.add_method('MissedBlockAck',
+ 'void',
+ [])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotAddBaResponse(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotAddBaResponse',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'recipient')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotDelBaFrame(ns3::MgtDelBaHeader const * delBaHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotDelBaFrame',
+ 'void',
+ [param('ns3::MgtDelBaHeader const *', 'delBaHdr'), param('ns3::Mac48Address', 'recipient')])
## edca-txop-n.h: void ns3::EdcaTxopN::MissedAck() [member function]
cls.add_method('MissedAck',
'void',
@@ -4020,6 +4729,10 @@
cls.add_method('GetFragmentPacket',
'ns3::Ptr< ns3::Packet >',
[param('ns3::WifiMacHeader *', 'hdr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SetAccessClass(ns3::AccessClass ac) [member function]
+ cls.add_method('SetAccessClass',
+ 'void',
+ [param('ns3::AccessClass', 'ac')])
## edca-txop-n.h: void ns3::EdcaTxopN::Queue(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr) [member function]
cls.add_method('Queue',
'void',
@@ -4028,6 +4741,27 @@
cls.add_method('SetMsduAggregator',
'void',
[param('ns3::Ptr< ns3::MsduAggregator >', 'aggr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::PushFront(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr) [member function]
+ cls.add_method('PushFront',
+ 'void',
+ [param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const &', 'hdr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::CompleteConfig() [member function]
+ cls.add_method('CompleteConfig',
+ 'void',
+ [])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SetBlockAckThreshold(uint8_t threshold) [member function]
+ cls.add_method('SetBlockAckThreshold',
+ 'void',
+ [param('uint8_t', 'threshold')])
+ ## edca-txop-n.h: uint8_t ns3::EdcaTxopN::GetBlockAckThreshold() const [member function]
+ cls.add_method('GetBlockAckThreshold',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SendDelbaFrame(ns3::Mac48Address addr, uint8_t tid, bool byOriginator) [member function]
+ cls.add_method('SendDelbaFrame',
+ 'void',
+ [param('ns3::Mac48Address', 'addr'), param('uint8_t', 'tid'), param('bool', 'byOriginator')])
return
def register_Ns3ErrorRateModel_methods(root_module, cls):
@@ -4052,71 +4786,6 @@
is_static=True)
return
-def register_Ns3FixedRssLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::FixedRssLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::FixedRssLossModel::FixedRssLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::FixedRssLossModel::SetRss(double rss) [member function]
- cls.add_method('SetRss',
- 'void',
- [param('double', 'rss')])
- ## propagation-loss-model.h: double ns3::FixedRssLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
-def register_Ns3FriisPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::FriisPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::FriisPropagationLossModel::FriisPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double frequency, double speed) [member function]
- cls.add_method('SetLambda',
- 'void',
- [param('double', 'frequency'), param('double', 'speed')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double lambda) [member function]
- cls.add_method('SetLambda',
- 'void',
- [param('double', 'lambda')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
- cls.add_method('SetSystemLoss',
- 'void',
- [param('double', 'systemLoss')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetMinDistance(double minDistance) [member function]
- cls.add_method('SetMinDistance',
- 'void',
- [param('double', 'minDistance')])
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetMinDistance() const [member function]
- cls.add_method('GetMinDistance',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetLambda() const [member function]
- cls.add_method('GetLambda',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetSystemLoss() const [member function]
- cls.add_method('GetSystemLoss',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3IdealWifiManager_methods(root_module, cls):
## ideal-wifi-manager.h: ns3::IdealWifiManager::IdealWifiManager(ns3::IdealWifiManager const & arg0) [copy constructor]
cls.add_constructor([param('ns3::IdealWifiManager const &', 'arg0')])
@@ -4148,67 +4817,6 @@
visibility='private', is_virtual=True)
return
-def register_Ns3JakesPropagationLossModel_methods(root_module, cls):
- ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel::JakesPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNOscillators() const [member function]
- cls.add_method('GetNOscillators',
- 'uint8_t',
- [],
- is_const=True)
- ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNRays() const [member function]
- cls.add_method('GetNRays',
- 'uint8_t',
- [],
- is_const=True)
- ## jakes-propagation-loss-model.h: static ns3::TypeId ns3::JakesPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNOscillators(uint8_t nOscillators) [member function]
- cls.add_method('SetNOscillators',
- 'void',
- [param('uint8_t', 'nOscillators')])
- ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNRays(uint8_t nRays) [member function]
- cls.add_method('SetNRays',
- 'void',
- [param('uint8_t', 'nRays')])
- ## jakes-propagation-loss-model.h: double ns3::JakesPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
-def register_Ns3LogDistancePropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::LogDistancePropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel::LogDistancePropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetPathLossExponent(double n) [member function]
- cls.add_method('SetPathLossExponent',
- 'void',
- [param('double', 'n')])
- ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::GetPathLossExponent() const [member function]
- cls.add_method('GetPathLossExponent',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetReference(double referenceDistance, double referenceLoss) [member function]
- cls.add_method('SetReference',
- 'void',
- [param('double', 'referenceDistance'), param('double', 'referenceLoss')])
- ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3MacLow_methods(root_module, cls):
## mac-low.h: ns3::MacLow::MacLow(ns3::MacLow const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MacLow const &', 'arg0')])
@@ -4219,6 +4827,14 @@
'ns3::Time',
[param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const *', 'hdr'), param('ns3::MacLowTransmissionParameters const &', 'parameters')],
is_const=True)
+ ## mac-low.h: void ns3::MacLow::CreateBlockAckAgreement(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address originator, uint16_t startingSeq) [member function]
+ cls.add_method('CreateBlockAckAgreement',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'originator'), param('uint16_t', 'startingSeq')])
+ ## mac-low.h: void ns3::MacLow::DestroyBlockAckAgreement(ns3::Mac48Address originator, uint8_t tid) [member function]
+ cls.add_method('DestroyBlockAckAgreement',
+ 'void',
+ [param('ns3::Mac48Address', 'originator'), param('uint8_t', 'tid')])
## mac-low.h: ns3::Time ns3::MacLow::GetAckTimeout() const [member function]
cls.add_method('GetAckTimeout',
'ns3::Time',
@@ -4229,11 +4845,21 @@
'ns3::Mac48Address',
[],
is_const=True)
+ ## mac-low.h: ns3::Time ns3::MacLow::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True)
## mac-low.h: ns3::Mac48Address ns3::MacLow::GetBssid() const [member function]
cls.add_method('GetBssid',
'ns3::Mac48Address',
[],
is_const=True)
+ ## mac-low.h: ns3::Time ns3::MacLow::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True)
## mac-low.h: ns3::Time ns3::MacLow::GetCtsTimeout() const [member function]
cls.add_method('GetCtsTimeout',
'ns3::Time',
@@ -4266,6 +4892,10 @@
cls.add_method('ReceiveOk',
'void',
[param('ns3::Ptr< ns3::Packet >', 'packet'), param('double', 'rxSnr'), param('ns3::WifiMode', 'txMode'), param('ns3::WifiPreamble', 'preamble')])
+ ## mac-low.h: void ns3::MacLow::RegisterBlockAckListenerForAc(ns3::AccessClass ac, ns3::MacLowBlockAckEventListener * listener) [member function]
+ cls.add_method('RegisterBlockAckListenerForAc',
+ 'void',
+ [param('ns3::AccessClass', 'ac'), param('ns3::MacLowBlockAckEventListener *', 'listener')])
## mac-low.h: void ns3::MacLow::RegisterDcfListener(ns3::MacLowDcfListener * listener) [member function]
cls.add_method('RegisterDcfListener',
'void',
@@ -4278,10 +4908,18 @@
cls.add_method('SetAddress',
'void',
[param('ns3::Mac48Address', 'ad')])
+ ## mac-low.h: void ns3::MacLow::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')])
## mac-low.h: void ns3::MacLow::SetBssid(ns3::Mac48Address ad) [member function]
cls.add_method('SetBssid',
'void',
[param('ns3::Mac48Address', 'ad')])
+ ## mac-low.h: void ns3::MacLow::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')])
## mac-low.h: void ns3::MacLow::SetCtsTimeout(ns3::Time ctsTimeout) [member function]
cls.add_method('SetCtsTimeout',
'void',
@@ -4381,21 +5019,6 @@
is_static=True)
return
-def register_Ns3NakagamiPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::NakagamiPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel::NakagamiPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::NakagamiPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3NqapWifiMac_methods(root_module, cls):
## nqap-wifi-mac.h: static ns3::TypeId ns3::NqapWifiMac::GetTypeId() [member function]
cls.add_method('GetTypeId',
@@ -4870,6 +5493,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qadhoc-wifi-mac.h: ns3::Time ns3::QadhocWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qadhoc-wifi-mac.h: ns3::Time ns3::QadhocWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::DoDispose() [member function]
cls.add_method('DoDispose',
'void',
@@ -5015,6 +5658,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qap-wifi-mac.h: void ns3::QapWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qap-wifi-mac.h: void ns3::QapWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qap-wifi-mac.h: ns3::Time ns3::QapWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qap-wifi-mac.h: ns3::Time ns3::QapWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qap-wifi-mac.h: void ns3::QapWifiMac::SetBeaconInterval(ns3::Time interval) [member function]
cls.add_method('SetBeaconInterval',
'void',
@@ -5178,6 +5841,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qsta-wifi-mac.h: ns3::Time ns3::QstaWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qsta-wifi-mac.h: ns3::Time ns3::QstaWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetMaxMissedBeacons(uint32_t missed) [member function]
cls.add_method('SetMaxMissedBeacons',
'void',
@@ -5662,6 +6345,10 @@
module.add_function('QosUtilsGetTidForPacket',
'uint8_t',
[param('ns3::Ptr< ns3::Packet const >', 'packet')])
+ ## qos-utils.h: extern uint32_t ns3::QosUtilsMapSeqControlToUniqueInteger(uint16_t seqControl, uint16_t endSequence) [free function]
+ module.add_function('QosUtilsMapSeqControlToUniqueInteger',
+ 'uint32_t',
+ [param('uint16_t', 'seqControl'), param('uint16_t', 'endSequence')])
## qos-utils.h: extern ns3::AccessClass ns3::QosUtilsMapTidToAc(uint8_t tid) [free function]
module.add_function('QosUtilsMapTidToAc',
'ns3::AccessClass',
--- a/bindings/python/apidefs/gcc-LP64/callbacks_list.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/callbacks_list.py Fri Feb 12 16:20:59 2010 -0800
@@ -12,6 +12,8 @@
['bool', 'std::string', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
+ ['void', 'ns3::Mac48Address', 'unsigned char', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
+ ['void', 'ns3::Mac48Address', 'unsigned char', 'bool', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Packet const>', 'ns3::Ipv4Header const&', 'ns3::Socket::SocketErrno', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Ipv4Route>', 'ns3::Ptr<ns3::Packet const>', 'ns3::Ipv4Header const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
['void', 'ns3::Ptr<ns3::Socket>', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
--- a/bindings/python/apidefs/gcc-LP64/ns3_module_common.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/ns3_module_common.py Fri Feb 12 16:20:59 2010 -0800
@@ -53,24 +53,48 @@
module.add_class('PcapFileObject', parent=root_module['ns3::Object'])
## pcap-writer.h: ns3::PcapWriter [class]
module.add_class('PcapWriter', parent=root_module['ns3::Object'])
+ ## propagation-delay-model.h: ns3::PropagationDelayModel [class]
+ module.add_class('PropagationDelayModel', parent=root_module['ns3::Object'])
+ ## propagation-loss-model.h: ns3::PropagationLossModel [class]
+ module.add_class('PropagationLossModel', parent=root_module['ns3::Object'])
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel [class]
+ module.add_class('RandomPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
+ ## propagation-loss-model.h: ns3::RandomPropagationLossModel [class]
+ module.add_class('RandomPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## simple-ref-count.h: ns3::SimpleRefCount<ns3::AsciiWriter, ns3::empty, ns3::DefaultDeleter<ns3::AsciiWriter> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::AsciiWriter', 'ns3::empty', 'ns3::DefaultDeleter<ns3::AsciiWriter>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
## simple-ref-count.h: ns3::SimpleRefCount<ns3::Packet, ns3::empty, ns3::DefaultDeleter<ns3::Packet> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::Packet', 'ns3::empty', 'ns3::DefaultDeleter<ns3::Packet>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
+ ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel [class]
+ module.add_class('ThreeLogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## trailer.h: ns3::Trailer [class]
module.add_class('Trailer', parent=root_module['ns3::Chunk'])
+ ## propagation-loss-model.h: ns3::TwoRayGroundPropagationLossModel [class]
+ module.add_class('TwoRayGroundPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## ascii-writer.h: ns3::AsciiWriter [class]
module.add_class('AsciiWriter', parent=root_module['ns3::SimpleRefCount< ns3::AsciiWriter, ns3::empty, ns3::DefaultDeleter<ns3::AsciiWriter> >'])
## ascii-writer.h: ns3::AsciiWriter::Type [enumeration]
module.add_enum('Type', ['ENQUEUE', 'DEQUEUE', 'DROP', 'TX', 'RX'], outer_class=root_module['ns3::AsciiWriter'])
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel [class]
+ module.add_class('ConstantSpeedPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
## data-rate.h: ns3::DataRateChecker [class]
module.add_class('DataRateChecker', parent=root_module['ns3::AttributeChecker'])
## data-rate.h: ns3::DataRateValue [class]
module.add_class('DataRateValue', parent=root_module['ns3::AttributeValue'])
## error-model.h: ns3::ErrorModel [class]
module.add_class('ErrorModel', parent=root_module['ns3::Object'])
+ ## propagation-loss-model.h: ns3::FixedRssLossModel [class]
+ module.add_class('FixedRssLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## propagation-loss-model.h: ns3::FriisPropagationLossModel [class]
+ module.add_class('FriisPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel [class]
+ module.add_class('JakesPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## error-model.h: ns3::ListErrorModel [class]
module.add_class('ListErrorModel', parent=root_module['ns3::ErrorModel'])
+ ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel [class]
+ module.add_class('LogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
+ ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel [class]
+ module.add_class('NakagamiPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## nix-vector.h: ns3::NixVector [class]
module.add_class('NixVector', parent=root_module['ns3::Object'])
## packet.h: ns3::Packet [class]
@@ -182,12 +206,24 @@
register_Ns3OutputStreamObject_methods(root_module, root_module['ns3::OutputStreamObject'])
register_Ns3PcapFileObject_methods(root_module, root_module['ns3::PcapFileObject'])
register_Ns3PcapWriter_methods(root_module, root_module['ns3::PcapWriter'])
+ register_Ns3PropagationDelayModel_methods(root_module, root_module['ns3::PropagationDelayModel'])
+ register_Ns3PropagationLossModel_methods(root_module, root_module['ns3::PropagationLossModel'])
+ register_Ns3RandomPropagationDelayModel_methods(root_module, root_module['ns3::RandomPropagationDelayModel'])
+ register_Ns3RandomPropagationLossModel_methods(root_module, root_module['ns3::RandomPropagationLossModel'])
+ register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, root_module['ns3::ThreeLogDistancePropagationLossModel'])
register_Ns3Trailer_methods(root_module, root_module['ns3::Trailer'])
+ register_Ns3TwoRayGroundPropagationLossModel_methods(root_module, root_module['ns3::TwoRayGroundPropagationLossModel'])
register_Ns3AsciiWriter_methods(root_module, root_module['ns3::AsciiWriter'])
+ register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, root_module['ns3::ConstantSpeedPropagationDelayModel'])
register_Ns3DataRateChecker_methods(root_module, root_module['ns3::DataRateChecker'])
register_Ns3DataRateValue_methods(root_module, root_module['ns3::DataRateValue'])
register_Ns3ErrorModel_methods(root_module, root_module['ns3::ErrorModel'])
+ register_Ns3FixedRssLossModel_methods(root_module, root_module['ns3::FixedRssLossModel'])
+ register_Ns3FriisPropagationLossModel_methods(root_module, root_module['ns3::FriisPropagationLossModel'])
+ register_Ns3JakesPropagationLossModel_methods(root_module, root_module['ns3::JakesPropagationLossModel'])
register_Ns3ListErrorModel_methods(root_module, root_module['ns3::ListErrorModel'])
+ register_Ns3LogDistancePropagationLossModel_methods(root_module, root_module['ns3::LogDistancePropagationLossModel'])
+ register_Ns3NakagamiPropagationLossModel_methods(root_module, root_module['ns3::NakagamiPropagationLossModel'])
register_Ns3NixVector_methods(root_module, root_module['ns3::NixVector'])
register_Ns3Packet_methods(root_module, root_module['ns3::Packet'])
register_Ns3RateErrorModel_methods(root_module, root_module['ns3::RateErrorModel'])
@@ -1091,6 +1127,94 @@
[])
return
+def register_Ns3PropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel(ns3::PropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::PropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::Time ns3::PropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::PropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ return
+
+def register_Ns3PropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::PropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::PropagationLossModel::SetNext(ns3::Ptr<ns3::PropagationLossModel> next) [member function]
+ cls.add_method('SetNext',
+ 'void',
+ [param('ns3::Ptr< ns3::PropagationLossModel >', 'next')])
+ ## propagation-loss-model.h: double ns3::PropagationLossModel::CalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('CalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::PropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3RandomPropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel(ns3::RandomPropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::RandomPropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::Time ns3::RandomPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::RandomPropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ return
+
+def register_Ns3RandomPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::RandomPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::RandomPropagationLossModel::RandomPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::RandomPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::ThreeLogDistancePropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel::ThreeLogDistancePropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::ThreeLogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3Trailer_methods(root_module, cls):
cls.add_output_stream_operator()
## trailer.h: ns3::Trailer::Trailer() [constructor]
@@ -1124,6 +1248,56 @@
is_pure_virtual=True, is_const=True, is_virtual=True)
return
+def register_Ns3TwoRayGroundPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::TwoRayGroundPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::TwoRayGroundPropagationLossModel::TwoRayGroundPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetLambda(double frequency, double speed) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'frequency'), param('double', 'speed')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetLambda(double lambda) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'lambda')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
+ cls.add_method('SetSystemLoss',
+ 'void',
+ [param('double', 'systemLoss')])
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetMinDistance(double minDistance) [member function]
+ cls.add_method('SetMinDistance',
+ 'void',
+ [param('double', 'minDistance')])
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetMinDistance() const [member function]
+ cls.add_method('GetMinDistance',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetLambda() const [member function]
+ cls.add_method('GetLambda',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::GetSystemLoss() const [member function]
+ cls.add_method('GetSystemLoss',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: void ns3::TwoRayGroundPropagationLossModel::SetHeightAboveZ(double heightAboveZ) [member function]
+ cls.add_method('SetHeightAboveZ',
+ 'void',
+ [param('double', 'heightAboveZ')])
+ ## propagation-loss-model.h: double ns3::TwoRayGroundPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3AsciiWriter_methods(root_module, cls):
## ascii-writer.h: ns3::AsciiWriter::AsciiWriter(ns3::AsciiWriter const & arg0) [copy constructor]
cls.add_constructor([param('ns3::AsciiWriter const &', 'arg0')])
@@ -1138,6 +1312,32 @@
[param('ns3::AsciiWriter::Type', 'type'), param('std::string', 'message'), param('ns3::Ptr< ns3::Packet const >', 'p')])
return
+def register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, cls):
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel(ns3::ConstantSpeedPropagationDelayModel const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::ConstantSpeedPropagationDelayModel const &', 'arg0')])
+ ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-delay-model.h: ns3::Time ns3::ConstantSpeedPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('GetDelay',
+ 'ns3::Time',
+ [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, is_virtual=True)
+ ## propagation-delay-model.h: double ns3::ConstantSpeedPropagationDelayModel::GetSpeed() const [member function]
+ cls.add_method('GetSpeed',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-delay-model.h: static ns3::TypeId ns3::ConstantSpeedPropagationDelayModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-delay-model.h: void ns3::ConstantSpeedPropagationDelayModel::SetSpeed(double speed) [member function]
+ cls.add_method('SetSpeed',
+ 'void',
+ [param('double', 'speed')])
+ return
+
def register_Ns3DataRateChecker_methods(root_module, cls):
## data-rate.h: ns3::DataRateChecker::DataRateChecker() [constructor]
cls.add_constructor([])
@@ -1221,6 +1421,104 @@
is_pure_virtual=True, visibility='private', is_virtual=True)
return
+def register_Ns3FixedRssLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::FixedRssLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::FixedRssLossModel::FixedRssLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::FixedRssLossModel::SetRss(double rss) [member function]
+ cls.add_method('SetRss',
+ 'void',
+ [param('double', 'rss')])
+ ## propagation-loss-model.h: double ns3::FixedRssLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3FriisPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::FriisPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::FriisPropagationLossModel::FriisPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double frequency, double speed) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'frequency'), param('double', 'speed')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double lambda) [member function]
+ cls.add_method('SetLambda',
+ 'void',
+ [param('double', 'lambda')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
+ cls.add_method('SetSystemLoss',
+ 'void',
+ [param('double', 'systemLoss')])
+ ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetMinDistance(double minDistance) [member function]
+ cls.add_method('SetMinDistance',
+ 'void',
+ [param('double', 'minDistance')])
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetMinDistance() const [member function]
+ cls.add_method('GetMinDistance',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetLambda() const [member function]
+ cls.add_method('GetLambda',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetSystemLoss() const [member function]
+ cls.add_method('GetSystemLoss',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3JakesPropagationLossModel_methods(root_module, cls):
+ ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel::JakesPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNOscillators() const [member function]
+ cls.add_method('GetNOscillators',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNRays() const [member function]
+ cls.add_method('GetNRays',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## jakes-propagation-loss-model.h: static ns3::TypeId ns3::JakesPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNOscillators(uint8_t nOscillators) [member function]
+ cls.add_method('SetNOscillators',
+ 'void',
+ [param('uint8_t', 'nOscillators')])
+ ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNRays(uint8_t nRays) [member function]
+ cls.add_method('SetNRays',
+ 'void',
+ [param('uint8_t', 'nRays')])
+ ## jakes-propagation-loss-model.h: double ns3::JakesPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3ListErrorModel_methods(root_module, cls):
## error-model.h: ns3::ListErrorModel::ListErrorModel(ns3::ListErrorModel const & arg0) [copy constructor]
cls.add_constructor([param('ns3::ListErrorModel const &', 'arg0')])
@@ -1252,6 +1550,49 @@
visibility='private', is_virtual=True)
return
+def register_Ns3LogDistancePropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::LogDistancePropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel::LogDistancePropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetPathLossExponent(double n) [member function]
+ cls.add_method('SetPathLossExponent',
+ 'void',
+ [param('double', 'n')])
+ ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::GetPathLossExponent() const [member function]
+ cls.add_method('GetPathLossExponent',
+ 'double',
+ [],
+ is_const=True)
+ ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetReference(double referenceDistance, double referenceLoss) [member function]
+ cls.add_method('SetReference',
+ 'void',
+ [param('double', 'referenceDistance'), param('double', 'referenceLoss')])
+ ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
+def register_Ns3NakagamiPropagationLossModel_methods(root_module, cls):
+ ## propagation-loss-model.h: static ns3::TypeId ns3::NakagamiPropagationLossModel::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel::NakagamiPropagationLossModel() [constructor]
+ cls.add_constructor([])
+ ## propagation-loss-model.h: double ns3::NakagamiPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
+ cls.add_method('DoCalcRxPower',
+ 'double',
+ [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
+ is_const=True, visibility='private', is_virtual=True)
+ return
+
def register_Ns3NixVector_methods(root_module, cls):
cls.add_output_stream_operator()
## nix-vector.h: ns3::NixVector::NixVector() [constructor]
--- a/bindings/python/apidefs/gcc-LP64/ns3_module_core.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/ns3_module_core.py Fri Feb 12 16:20:59 2010 -0800
@@ -93,6 +93,8 @@
module.add_class('Vector3D')
## random-variable.h: ns3::WeibullVariable [class]
module.add_class('WeibullVariable', parent=root_module['ns3::RandomVariable'])
+ ## random-variable.h: ns3::ZetaVariable [class]
+ module.add_class('ZetaVariable', parent=root_module['ns3::RandomVariable'])
## random-variable.h: ns3::ZipfVariable [class]
module.add_class('ZipfVariable', parent=root_module['ns3::RandomVariable'])
## empty.h: ns3::empty [class]
@@ -351,6 +353,7 @@
register_Ns3Vector2D_methods(root_module, root_module['ns3::Vector2D'])
register_Ns3Vector3D_methods(root_module, root_module['ns3::Vector3D'])
register_Ns3WeibullVariable_methods(root_module, root_module['ns3::WeibullVariable'])
+ register_Ns3ZetaVariable_methods(root_module, root_module['ns3::ZetaVariable'])
register_Ns3ZipfVariable_methods(root_module, root_module['ns3::ZipfVariable'])
register_Ns3Empty_methods(root_module, root_module['ns3::empty'])
register_Ns3ConstantVariable_methods(root_module, root_module['ns3::ConstantVariable'])
@@ -1575,11 +1578,20 @@
cls.add_constructor([param('double', 'm'), param('double', 's'), param('double', 'b')])
return
+def register_Ns3ZetaVariable_methods(root_module, cls):
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable(ns3::ZetaVariable const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::ZetaVariable const &', 'arg0')])
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable(double alpha) [constructor]
+ cls.add_constructor([param('double', 'alpha')])
+ ## random-variable.h: ns3::ZetaVariable::ZetaVariable() [constructor]
+ cls.add_constructor([])
+ return
+
def register_Ns3ZipfVariable_methods(root_module, cls):
## random-variable.h: ns3::ZipfVariable::ZipfVariable(ns3::ZipfVariable const & arg0) [copy constructor]
cls.add_constructor([param('ns3::ZipfVariable const &', 'arg0')])
- ## random-variable.h: ns3::ZipfVariable::ZipfVariable(long int n, double alpha) [constructor]
- cls.add_constructor([param('long int', 'n'), param('double', 'alpha')])
+ ## random-variable.h: ns3::ZipfVariable::ZipfVariable(long int N, double alpha) [constructor]
+ cls.add_constructor([param('long int', 'N'), param('double', 'alpha')])
## random-variable.h: ns3::ZipfVariable::ZipfVariable() [constructor]
cls.add_constructor([])
return
--- a/bindings/python/apidefs/gcc-LP64/ns3_module_global_routing.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/ns3_module_global_routing.py Fri Feb 12 16:20:59 2010 -0800
@@ -331,7 +331,7 @@
[])
## global-router-interface.h: ns3::Ipv4RoutingTableEntry * ns3::GlobalRouter::GetInjectedRoute(uint32_t i) [member function]
cls.add_method('GetInjectedRoute',
- 'ns3::Ipv4RoutingTableEntry *',
+ retval('ns3::Ipv4RoutingTableEntry *', caller_owns_return=False),
[param('uint32_t', 'i')])
## global-router-interface.h: void ns3::GlobalRouter::RemoveInjectedRoute(uint32_t i) [member function]
cls.add_method('RemoveInjectedRoute',
@@ -379,7 +379,7 @@
[])
## ipv4-global-routing.h: ns3::Ipv4RoutingTableEntry * ns3::Ipv4GlobalRouting::GetRoute(uint32_t i) [member function]
cls.add_method('GetRoute',
- 'ns3::Ipv4RoutingTableEntry *',
+ retval('ns3::Ipv4RoutingTableEntry *', caller_owns_return=False),
[param('uint32_t', 'i')])
## ipv4-global-routing.h: static ns3::TypeId ns3::Ipv4GlobalRouting::GetTypeId() [member function]
cls.add_method('GetTypeId',
--- a/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/ns3_module_olsr.py Fri Feb 12 16:20:59 2010 -0800
@@ -133,6 +133,7 @@
module.add_class('TwoHopNeighborTuple')
module.add_container('std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage >', 'ns3::olsr::MessageHeader::Hello::LinkMessage', container_type='vector')
module.add_container('std::vector< ns3::olsr::MessageHeader::Hna::Association >', 'ns3::olsr::MessageHeader::Hna::Association', container_type='vector')
+ module.add_container('std::vector< ns3::olsr::RoutingTableEntry >', 'ns3::olsr::RoutingTableEntry', container_type='vector')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >', 'ns3::olsr::DuplicateSet')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >*', 'ns3::olsr::DuplicateSet*')
typehandlers.add_type_alias('std::vector< ns3::olsr::DuplicateTuple, std::allocator< ns3::olsr::DuplicateTuple > >&', 'ns3::olsr::DuplicateSet&')
@@ -812,6 +813,11 @@
cls.add_method('Dump',
'void',
[])
+ ## olsr-routing-protocol.h: std::vector<ns3::olsr::RoutingTableEntry,std::allocator<ns3::olsr::RoutingTableEntry> > ns3::olsr::RoutingProtocol::GetRoutingTableEntries() const [member function]
+ cls.add_method('GetRoutingTableEntries',
+ 'std::vector< ns3::olsr::RoutingTableEntry >',
+ [],
+ is_const=True)
## olsr-routing-protocol.h: static ns3::TypeId ns3::olsr::RoutingProtocol::GetTypeId() [member function]
cls.add_method('GetTypeId',
'ns3::TypeId',
--- a/bindings/python/apidefs/gcc-LP64/ns3_module_wifi.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/apidefs/gcc-LP64/ns3_module_wifi.py Fri Feb 12 16:20:59 2010 -0800
@@ -15,6 +15,14 @@
module.add_enum('AccessClass', ['AC_VO', 'AC_VI', 'AC_BE', 'AC_BK', 'AC_BE_NQOS', 'AC_UNDEF'])
## edca-txop-n.h: ns3::TypeOfStation [enumeration]
module.add_enum('TypeOfStation', ['STA', 'AP', 'ADHOC_STA'])
+ ## ctrl-headers.h: ns3::BlockAckType [enumeration]
+ module.add_enum('BlockAckType', ['BASIC_BLOCK_ACK', 'COMPRESSED_BLOCK_ACK', 'MULTI_TID_BLOCK_ACK'])
+ ## block-ack-manager.h: ns3::Bar [struct]
+ module.add_class('Bar')
+ ## block-ack-agreement.h: ns3::BlockAckAgreement [class]
+ module.add_class('BlockAckAgreement')
+ ## block-ack-manager.h: ns3::BlockAckManager [class]
+ module.add_class('BlockAckManager')
## capability-information.h: ns3::CapabilityInformation [class]
module.add_class('CapabilityInformation')
## dcf-manager.h: ns3::DcfManager [class]
@@ -25,6 +33,8 @@
module.add_class('InterferenceHelper')
## interference-helper.h: ns3::InterferenceHelper::SnrPer [struct]
module.add_class('SnrPer', outer_class=root_module['ns3::InterferenceHelper'])
+ ## mac-low.h: ns3::MacLowBlockAckEventListener [class]
+ module.add_class('MacLowBlockAckEventListener', allow_subclassing=True)
## mac-low.h: ns3::MacLowDcfListener [class]
module.add_class('MacLowDcfListener', allow_subclassing=True)
## mac-low.h: ns3::MacLowTransmissionListener [class]
@@ -33,6 +43,10 @@
module.add_class('MacLowTransmissionParameters')
## mac-rx-middle.h: ns3::MacRxMiddle [class]
module.add_class('MacRxMiddle')
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement [class]
+ module.add_class('OriginatorBlockAckAgreement', parent=root_module['ns3::BlockAckAgreement'])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::State [enumeration]
+ module.add_enum('State', ['PENDING', 'ESTABLISHED', 'INACTIVE', 'UNSUCCESSFUL'], outer_class=root_module['ns3::OriginatorBlockAckAgreement'])
## minstrel-wifi-manager.h: ns3::RateInfo [struct]
module.add_class('RateInfo')
## ssid.h: ns3::Ssid [class]
@@ -61,10 +75,16 @@
module.add_class('ConstantRateWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## ideal-wifi-manager.h: ns3::IdealWifiRemoteStation [class]
module.add_class('IdealWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader [class]
+ module.add_class('MgtAddBaRequestHeader', parent=root_module['ns3::Header'])
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader [class]
+ module.add_class('MgtAddBaResponseHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtAssocRequestHeader [class]
module.add_class('MgtAssocRequestHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtAssocResponseHeader [class]
module.add_class('MgtAssocResponseHeader', parent=root_module['ns3::Header'])
+ ## mgt-headers.h: ns3::MgtDelBaHeader [class]
+ module.add_class('MgtDelBaHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtProbeRequestHeader [class]
module.add_class('MgtProbeRequestHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::MgtProbeResponseHeader [class]
@@ -73,26 +93,16 @@
module.add_class('MinstrelWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## onoe-wifi-manager.h: ns3::OnoeWifiRemoteStation [class]
module.add_class('OnoeWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
- ## propagation-delay-model.h: ns3::PropagationDelayModel [class]
- module.add_class('PropagationDelayModel', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::PropagationLossModel [class]
- module.add_class('PropagationLossModel', parent=root_module['ns3::Object'])
## qos-tag.h: ns3::QosTag [class]
module.add_class('QosTag', parent=root_module['ns3::Tag'])
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel [class]
- module.add_class('RandomPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
- ## propagation-loss-model.h: ns3::RandomPropagationLossModel [class]
- module.add_class('RandomPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation [class]
module.add_class('RraaWifiRemoteStation', parent=root_module['ns3::WifiRemoteStation'])
## simple-ref-count.h: ns3::SimpleRefCount<ns3::InterferenceHelper::Event, ns3::empty, ns3::DefaultDeleter<ns3::InterferenceHelper::Event> > [class]
module.add_class('SimpleRefCount', automatic_type_narrowing=True, template_parameters=['ns3::InterferenceHelper::Event', 'ns3::empty', 'ns3::DefaultDeleter<ns3::InterferenceHelper::Event>'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount'))
- ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel [class]
- module.add_class('ThreeLogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## mgt-headers.h: ns3::WifiActionHeader [class]
module.add_class('WifiActionHeader', parent=root_module['ns3::Header'])
## mgt-headers.h: ns3::WifiActionHeader::CategoryValue [enumeration]
- module.add_enum('CategoryValue', ['MESH_PEERING_MGT', 'MESH_LINK_METRIC', 'MESH_PATH_SELECTION', 'MESH_INTERWORKING', 'MESH_RESOURCE_COORDINATION', 'MESH_PROXY_FORWARDING'], outer_class=root_module['ns3::WifiActionHeader'])
+ module.add_enum('CategoryValue', ['BLOCK_ACK', 'MESH_PEERING_MGT', 'MESH_LINK_METRIC', 'MESH_PATH_SELECTION', 'MESH_INTERWORKING', 'MESH_RESOURCE_COORDINATION', 'MESH_PROXY_FORWARDING'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::PeerLinkMgtActionValue [enumeration]
module.add_enum('PeerLinkMgtActionValue', ['PEER_LINK_OPEN', 'PEER_LINK_CONFIRM', 'PEER_LINK_CLOSE'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::LinkMetricActionValue [enumeration]
@@ -103,6 +113,8 @@
module.add_enum('InterworkActionValue', ['PORTAL_ANNOUNCEMENT'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::ResourceCoordinationActionValue [enumeration]
module.add_enum('ResourceCoordinationActionValue', ['CONGESTION_CONTROL_NOTIFICATION', 'MDA_SETUP_REQUEST', 'MDA_SETUP_REPLY', 'MDAOP_ADVERTISMENT_REQUEST', 'MDAOP_ADVERTISMENTS', 'MDAOP_SET_TEARDOWN', 'BEACON_TIMING_REQUEST', 'BEACON_TIMING_RESPONSE', 'TBTT_ADJUSTMENT_REQUEST', 'MESH_CHANNEL_SWITCH_ANNOUNCEMENT'], outer_class=root_module['ns3::WifiActionHeader'])
+ ## mgt-headers.h: ns3::WifiActionHeader::BlockAckActionValue [enumeration]
+ module.add_enum('BlockAckActionValue', ['BLOCK_ACK_ADDBA_REQUEST', 'BLOCK_ACK_ADDBA_RESPONSE', 'BLOCK_ACK_DELBA'], outer_class=root_module['ns3::WifiActionHeader'])
## mgt-headers.h: ns3::WifiActionHeader::ActionValue [union]
module.add_class('ActionValue', outer_class=root_module['ns3::WifiActionHeader'])
## wifi-mac.h: ns3::WifiMac [class]
@@ -133,24 +145,18 @@
module.add_class('ArfWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
## constant-rate-wifi-manager.h: ns3::ConstantRateWifiManager [class]
module.add_class('ConstantRateWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel [class]
- module.add_class('ConstantSpeedPropagationDelayModel', parent=root_module['ns3::PropagationDelayModel'])
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader [class]
+ module.add_class('CtrlBAckRequestHeader', parent=root_module['ns3::Header'])
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader [class]
+ module.add_class('CtrlBAckResponseHeader', parent=root_module['ns3::Header'])
## dcf.h: ns3::Dcf [class]
module.add_class('Dcf', parent=root_module['ns3::Object'])
## edca-txop-n.h: ns3::EdcaTxopN [class]
module.add_class('EdcaTxopN', parent=root_module['ns3::Dcf'])
## error-rate-model.h: ns3::ErrorRateModel [class]
module.add_class('ErrorRateModel', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::FixedRssLossModel [class]
- module.add_class('FixedRssLossModel', parent=root_module['ns3::PropagationLossModel'])
- ## propagation-loss-model.h: ns3::FriisPropagationLossModel [class]
- module.add_class('FriisPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## ideal-wifi-manager.h: ns3::IdealWifiManager [class]
module.add_class('IdealWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
- ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel [class]
- module.add_class('JakesPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
- ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel [class]
- module.add_class('LogDistancePropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## mac-low.h: ns3::MacLow [class]
module.add_class('MacLow', parent=root_module['ns3::Object'])
## mgt-headers.h: ns3::MgtBeaconHeader [class]
@@ -159,8 +165,6 @@
module.add_class('MinstrelWifiManager', parent=root_module['ns3::WifiRemoteStationManager'])
## msdu-aggregator.h: ns3::MsduAggregator [class]
module.add_class('MsduAggregator', parent=root_module['ns3::Object'])
- ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel [class]
- module.add_class('NakagamiPropagationLossModel', parent=root_module['ns3::PropagationLossModel'])
## nqap-wifi-mac.h: ns3::NqapWifiMac [class]
module.add_class('NqapWifiMac', parent=root_module['ns3::WifiMac'])
## nqsta-wifi-mac.h: ns3::NqstaWifiMac [class]
@@ -286,15 +290,20 @@
def register_methods(root_module):
+ register_Ns3Bar_methods(root_module, root_module['ns3::Bar'])
+ register_Ns3BlockAckAgreement_methods(root_module, root_module['ns3::BlockAckAgreement'])
+ register_Ns3BlockAckManager_methods(root_module, root_module['ns3::BlockAckManager'])
register_Ns3CapabilityInformation_methods(root_module, root_module['ns3::CapabilityInformation'])
register_Ns3DcfManager_methods(root_module, root_module['ns3::DcfManager'])
register_Ns3DcfState_methods(root_module, root_module['ns3::DcfState'])
register_Ns3InterferenceHelper_methods(root_module, root_module['ns3::InterferenceHelper'])
register_Ns3InterferenceHelperSnrPer_methods(root_module, root_module['ns3::InterferenceHelper::SnrPer'])
+ register_Ns3MacLowBlockAckEventListener_methods(root_module, root_module['ns3::MacLowBlockAckEventListener'])
register_Ns3MacLowDcfListener_methods(root_module, root_module['ns3::MacLowDcfListener'])
register_Ns3MacLowTransmissionListener_methods(root_module, root_module['ns3::MacLowTransmissionListener'])
register_Ns3MacLowTransmissionParameters_methods(root_module, root_module['ns3::MacLowTransmissionParameters'])
register_Ns3MacRxMiddle_methods(root_module, root_module['ns3::MacRxMiddle'])
+ register_Ns3OriginatorBlockAckAgreement_methods(root_module, root_module['ns3::OriginatorBlockAckAgreement'])
register_Ns3RateInfo_methods(root_module, root_module['ns3::RateInfo'])
register_Ns3Ssid_methods(root_module, root_module['ns3::Ssid'])
register_Ns3StatusCode_methods(root_module, root_module['ns3::StatusCode'])
@@ -308,19 +317,17 @@
register_Ns3ArfWifiRemoteStation_methods(root_module, root_module['ns3::ArfWifiRemoteStation'])
register_Ns3ConstantRateWifiRemoteStation_methods(root_module, root_module['ns3::ConstantRateWifiRemoteStation'])
register_Ns3IdealWifiRemoteStation_methods(root_module, root_module['ns3::IdealWifiRemoteStation'])
+ register_Ns3MgtAddBaRequestHeader_methods(root_module, root_module['ns3::MgtAddBaRequestHeader'])
+ register_Ns3MgtAddBaResponseHeader_methods(root_module, root_module['ns3::MgtAddBaResponseHeader'])
register_Ns3MgtAssocRequestHeader_methods(root_module, root_module['ns3::MgtAssocRequestHeader'])
register_Ns3MgtAssocResponseHeader_methods(root_module, root_module['ns3::MgtAssocResponseHeader'])
+ register_Ns3MgtDelBaHeader_methods(root_module, root_module['ns3::MgtDelBaHeader'])
register_Ns3MgtProbeRequestHeader_methods(root_module, root_module['ns3::MgtProbeRequestHeader'])
register_Ns3MgtProbeResponseHeader_methods(root_module, root_module['ns3::MgtProbeResponseHeader'])
register_Ns3MinstrelWifiRemoteStation_methods(root_module, root_module['ns3::MinstrelWifiRemoteStation'])
register_Ns3OnoeWifiRemoteStation_methods(root_module, root_module['ns3::OnoeWifiRemoteStation'])
- register_Ns3PropagationDelayModel_methods(root_module, root_module['ns3::PropagationDelayModel'])
- register_Ns3PropagationLossModel_methods(root_module, root_module['ns3::PropagationLossModel'])
register_Ns3QosTag_methods(root_module, root_module['ns3::QosTag'])
- register_Ns3RandomPropagationDelayModel_methods(root_module, root_module['ns3::RandomPropagationDelayModel'])
- register_Ns3RandomPropagationLossModel_methods(root_module, root_module['ns3::RandomPropagationLossModel'])
register_Ns3RraaWifiRemoteStation_methods(root_module, root_module['ns3::RraaWifiRemoteStation'])
- register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, root_module['ns3::ThreeLogDistancePropagationLossModel'])
register_Ns3WifiActionHeader_methods(root_module, root_module['ns3::WifiActionHeader'])
register_Ns3WifiActionHeaderActionValue_methods(root_module, root_module['ns3::WifiActionHeader::ActionValue'])
register_Ns3WifiMac_methods(root_module, root_module['ns3::WifiMac'])
@@ -334,20 +341,16 @@
register_Ns3AmsduSubframeHeader_methods(root_module, root_module['ns3::AmsduSubframeHeader'])
register_Ns3ArfWifiManager_methods(root_module, root_module['ns3::ArfWifiManager'])
register_Ns3ConstantRateWifiManager_methods(root_module, root_module['ns3::ConstantRateWifiManager'])
- register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, root_module['ns3::ConstantSpeedPropagationDelayModel'])
+ register_Ns3CtrlBAckRequestHeader_methods(root_module, root_module['ns3::CtrlBAckRequestHeader'])
+ register_Ns3CtrlBAckResponseHeader_methods(root_module, root_module['ns3::CtrlBAckResponseHeader'])
register_Ns3Dcf_methods(root_module, root_module['ns3::Dcf'])
register_Ns3EdcaTxopN_methods(root_module, root_module['ns3::EdcaTxopN'])
register_Ns3ErrorRateModel_methods(root_module, root_module['ns3::ErrorRateModel'])
- register_Ns3FixedRssLossModel_methods(root_module, root_module['ns3::FixedRssLossModel'])
- register_Ns3FriisPropagationLossModel_methods(root_module, root_module['ns3::FriisPropagationLossModel'])
register_Ns3IdealWifiManager_methods(root_module, root_module['ns3::IdealWifiManager'])
- register_Ns3JakesPropagationLossModel_methods(root_module, root_module['ns3::JakesPropagationLossModel'])
- register_Ns3LogDistancePropagationLossModel_methods(root_module, root_module['ns3::LogDistancePropagationLossModel'])
register_Ns3MacLow_methods(root_module, root_module['ns3::MacLow'])
register_Ns3MgtBeaconHeader_methods(root_module, root_module['ns3::MgtBeaconHeader'])
register_Ns3MinstrelWifiManager_methods(root_module, root_module['ns3::MinstrelWifiManager'])
register_Ns3MsduAggregator_methods(root_module, root_module['ns3::MsduAggregator'])
- register_Ns3NakagamiPropagationLossModel_methods(root_module, root_module['ns3::NakagamiPropagationLossModel'])
register_Ns3NqapWifiMac_methods(root_module, root_module['ns3::NqapWifiMac'])
register_Ns3NqstaWifiMac_methods(root_module, root_module['ns3::NqstaWifiMac'])
register_Ns3OnoeWifiManager_methods(root_module, root_module['ns3::OnoeWifiManager'])
@@ -367,6 +370,216 @@
register_Ns3DcaTxop_methods(root_module, root_module['ns3::DcaTxop'])
return
+def register_Ns3Bar_methods(root_module, cls):
+ ## block-ack-manager.h: ns3::Bar::Bar(ns3::Bar const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::Bar const &', 'arg0')])
+ ## block-ack-manager.h: ns3::Bar::Bar() [constructor]
+ cls.add_constructor([])
+ ## block-ack-manager.h: ns3::Bar::Bar(ns3::Ptr<ns3::Packet const> packet, ns3::Mac48Address recipient, uint8_t tid, bool immediate) [constructor]
+ cls.add_constructor([param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('bool', 'immediate')])
+ ## block-ack-manager.h: ns3::Bar::bar [variable]
+ cls.add_instance_attribute('bar', 'ns3::Ptr< ns3::Packet const >', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::immediate [variable]
+ cls.add_instance_attribute('immediate', 'bool', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::recipient [variable]
+ cls.add_instance_attribute('recipient', 'ns3::Mac48Address', is_const=False)
+ ## block-ack-manager.h: ns3::Bar::tid [variable]
+ cls.add_instance_attribute('tid', 'uint8_t', is_const=False)
+ return
+
+def register_Ns3BlockAckAgreement_methods(root_module, cls):
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement(ns3::BlockAckAgreement const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::BlockAckAgreement const &', 'arg0')])
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement() [constructor]
+ cls.add_constructor([])
+ ## block-ack-agreement.h: ns3::BlockAckAgreement::BlockAckAgreement(ns3::Mac48Address peer, uint8_t tid) [constructor]
+ cls.add_constructor([param('ns3::Mac48Address', 'peer'), param('uint8_t', 'tid')])
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: ns3::Mac48Address ns3::BlockAckAgreement::GetPeer() const [member function]
+ cls.add_method('GetPeer',
+ 'ns3::Mac48Address',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint8_t ns3::BlockAckAgreement::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: uint16_t ns3::BlockAckAgreement::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: bool ns3::BlockAckAgreement::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: bool ns3::BlockAckAgreement::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetBufferSize(uint16_t bufferSize) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'bufferSize')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## block-ack-agreement.h: void ns3::BlockAckAgreement::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
+def register_Ns3BlockAckManager_methods(root_module, cls):
+ ## block-ack-manager.h: ns3::BlockAckManager::BlockAckManager() [constructor]
+ cls.add_constructor([])
+ ## block-ack-manager.h: void ns3::BlockAckManager::CreateAgreement(ns3::MgtAddBaRequestHeader const * reqHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('CreateAgreement',
+ 'void',
+ [param('ns3::MgtAddBaRequestHeader const *', 'reqHdr'), param('ns3::Mac48Address', 'recipient')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::DestroyAgreement(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('DestroyAgreement',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::ExistsAgreement(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('ExistsAgreement',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::ExistsAgreementInState(ns3::Mac48Address recipient, uint8_t tid, ns3::OriginatorBlockAckAgreement::State state) const [member function]
+ cls.add_method('ExistsAgreementInState',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('ns3::OriginatorBlockAckAgreement::State', 'state')],
+ is_const=True)
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNBufferedPackets(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('GetNBufferedPackets',
+ 'uint32_t',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNRetryNeededPackets(ns3::Mac48Address recipient, uint8_t tid) const [member function]
+ cls.add_method('GetNRetryNeededPackets',
+ 'uint32_t',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')],
+ is_const=True)
+ ## block-ack-manager.h: ns3::Ptr<ns3::Packet const> ns3::BlockAckManager::GetNextPacket(ns3::WifiMacHeader & hdr) [member function]
+ cls.add_method('GetNextPacket',
+ 'ns3::Ptr< ns3::Packet const >',
+ [param('ns3::WifiMacHeader &', 'hdr')])
+ ## block-ack-manager.h: uint32_t ns3::BlockAckManager::GetNextPacketSize() const [member function]
+ cls.add_method('GetNextPacketSize',
+ 'uint32_t',
+ [],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasBar(ns3::Bar & bar) [member function]
+ cls.add_method('HasBar',
+ 'bool',
+ [param('ns3::Bar &', 'bar')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasOtherFragments(uint16_t sequenceNumber) const [member function]
+ cls.add_method('HasOtherFragments',
+ 'bool',
+ [param('uint16_t', 'sequenceNumber')],
+ is_const=True)
+ ## block-ack-manager.h: bool ns3::BlockAckManager::HasPackets() const [member function]
+ cls.add_method('HasPackets',
+ 'bool',
+ [],
+ is_const=True)
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyAgreementEstablished(ns3::Mac48Address recipient, uint8_t tid, uint16_t startingSeq) [member function]
+ cls.add_method('NotifyAgreementEstablished',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('uint16_t', 'startingSeq')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyAgreementUnsuccessful(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('NotifyAgreementUnsuccessful',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyGotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address recipient) [member function]
+ cls.add_method('NotifyGotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'recipient')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::NotifyMpduTransmission(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('NotifyMpduTransmission',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckInactivityCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, bool, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetBlockAckInactivityCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, bool, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckThreshold(uint8_t nPackets) [member function]
+ cls.add_method('SetBlockAckThreshold',
+ 'void',
+ [param('uint8_t', 'nPackets')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockAckType(ns3::BlockAckType bAckType) [member function]
+ cls.add_method('SetBlockAckType',
+ 'void',
+ [param('ns3::BlockAckType', 'bAckType')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetBlockDestinationCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetBlockDestinationCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetMaxPacketDelay(ns3::Time maxDelay) [member function]
+ cls.add_method('SetMaxPacketDelay',
+ 'void',
+ [param('ns3::Time', 'maxDelay')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetQueue(ns3::Ptr<ns3::WifiMacQueue> queue) [member function]
+ cls.add_method('SetQueue',
+ 'void',
+ [param('ns3::Ptr< ns3::WifiMacQueue >', 'queue')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetTxMiddle(ns3::MacTxMiddle * txMiddle) [member function]
+ cls.add_method('SetTxMiddle',
+ 'void',
+ [param('ns3::MacTxMiddle *', 'txMiddle')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::SetUnblockDestinationCallback(ns3::Callback<void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
+ cls.add_method('SetUnblockDestinationCallback',
+ 'void',
+ [param('ns3::Callback< void, ns3::Mac48Address, unsigned char, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::StorePacket(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr, ns3::Time tStamp) [member function]
+ cls.add_method('StorePacket',
+ 'void',
+ [param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const &', 'hdr'), param('ns3::Time', 'tStamp')])
+ ## block-ack-manager.h: bool ns3::BlockAckManager::SwitchToBlockAckIfNeeded(ns3::Mac48Address recipient, uint8_t tid, uint16_t startingSeq) [member function]
+ cls.add_method('SwitchToBlockAckIfNeeded',
+ 'bool',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid'), param('uint16_t', 'startingSeq')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::TearDownBlockAck(ns3::Mac48Address recipient, uint8_t tid) [member function]
+ cls.add_method('TearDownBlockAck',
+ 'void',
+ [param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## block-ack-manager.h: void ns3::BlockAckManager::UpdateAgreement(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('UpdateAgreement',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'recipient')])
+ return
+
def register_Ns3CapabilityInformation_methods(root_module, cls):
## capability-information.h: ns3::CapabilityInformation::CapabilityInformation(ns3::CapabilityInformation const & arg0) [copy constructor]
cls.add_constructor([param('ns3::CapabilityInformation const &', 'arg0')])
@@ -645,6 +858,18 @@
cls.add_instance_attribute('snr', 'double', is_const=False)
return
+def register_Ns3MacLowBlockAckEventListener_methods(root_module, cls):
+ ## mac-low.h: ns3::MacLowBlockAckEventListener::MacLowBlockAckEventListener(ns3::MacLowBlockAckEventListener const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MacLowBlockAckEventListener const &', 'arg0')])
+ ## mac-low.h: ns3::MacLowBlockAckEventListener::MacLowBlockAckEventListener() [constructor]
+ cls.add_constructor([])
+ ## mac-low.h: void ns3::MacLowBlockAckEventListener::BlockAckInactivityTimeout(ns3::Mac48Address originator, uint8_t tid) [member function]
+ cls.add_method('BlockAckInactivityTimeout',
+ 'void',
+ [param('ns3::Mac48Address', 'originator'), param('uint8_t', 'tid')],
+ is_pure_virtual=True, is_virtual=True)
+ return
+
def register_Ns3MacLowDcfListener_methods(root_module, cls):
## mac-low.h: ns3::MacLowDcfListener::MacLowDcfListener(ns3::MacLowDcfListener const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MacLowDcfListener const &', 'arg0')])
@@ -697,6 +922,11 @@
'void',
[param('double', 'snr'), param('ns3::WifiMode', 'txMode')],
is_pure_virtual=True, is_virtual=True)
+ ## mac-low.h: void ns3::MacLowTransmissionListener::GotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address source) [member function]
+ cls.add_method('GotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'source')],
+ is_virtual=True)
## mac-low.h: void ns3::MacLowTransmissionListener::GotCts(double snr, ns3::WifiMode txMode) [member function]
cls.add_method('GotCts',
'void',
@@ -707,6 +937,11 @@
'void',
[],
is_pure_virtual=True, is_virtual=True)
+ ## mac-low.h: void ns3::MacLowTransmissionListener::MissedBlockAck() [member function]
+ cls.add_method('MissedBlockAck',
+ 'void',
+ [],
+ is_virtual=True)
## mac-low.h: void ns3::MacLowTransmissionListener::MissedCts() [member function]
cls.add_method('MissedCts',
'void',
@@ -745,10 +980,22 @@
cls.add_method('EnableAck',
'void',
[])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableBasicBlockAck() [member function]
+ cls.add_method('EnableBasicBlockAck',
+ 'void',
+ [])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableCompressedBlockAck() [member function]
+ cls.add_method('EnableCompressedBlockAck',
+ 'void',
+ [])
## mac-low.h: void ns3::MacLowTransmissionParameters::EnableFastAck() [member function]
cls.add_method('EnableFastAck',
'void',
[])
+ ## mac-low.h: void ns3::MacLowTransmissionParameters::EnableMultiTidBlockAck() [member function]
+ cls.add_method('EnableMultiTidBlockAck',
+ 'void',
+ [])
## mac-low.h: void ns3::MacLowTransmissionParameters::EnableNextData(uint32_t size) [member function]
cls.add_method('EnableNextData',
'void',
@@ -795,11 +1042,26 @@
'bool',
[],
is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitBasicBlockAck() const [member function]
+ cls.add_method('MustWaitBasicBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitCompressedBlockAck() const [member function]
+ cls.add_method('MustWaitCompressedBlockAck',
+ 'bool',
+ [],
+ is_const=True)
## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitFastAck() const [member function]
cls.add_method('MustWaitFastAck',
'bool',
[],
is_const=True)
+ ## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitMultiTidBlockAck() const [member function]
+ cls.add_method('MustWaitMultiTidBlockAck',
+ 'bool',
+ [],
+ is_const=True)
## mac-low.h: bool ns3::MacLowTransmissionParameters::MustWaitNormalAck() const [member function]
cls.add_method('MustWaitNormalAck',
'bool',
@@ -827,6 +1089,52 @@
[param('ns3::Callback< void, ns3::Ptr< ns3::Packet >, ns3::WifiMacHeader const *, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
return
+def register_Ns3OriginatorBlockAckAgreement_methods(root_module, cls):
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement(ns3::OriginatorBlockAckAgreement const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::OriginatorBlockAckAgreement const &', 'arg0')])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement() [constructor]
+ cls.add_constructor([])
+ ## originator-block-ack-agreement.h: ns3::OriginatorBlockAckAgreement::OriginatorBlockAckAgreement(ns3::Mac48Address recipient, uint8_t tid) [constructor]
+ cls.add_constructor([param('ns3::Mac48Address', 'recipient'), param('uint8_t', 'tid')])
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::CompleteExchange() [member function]
+ cls.add_method('CompleteExchange',
+ 'void',
+ [])
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsEstablished() const [member function]
+ cls.add_method('IsEstablished',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsInactive() const [member function]
+ cls.add_method('IsInactive',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsPending() const [member function]
+ cls.add_method('IsPending',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::IsUnsuccessful() const [member function]
+ cls.add_method('IsUnsuccessful',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: bool ns3::OriginatorBlockAckAgreement::NeedBlockAckRequest() const [member function]
+ cls.add_method('NeedBlockAckRequest',
+ 'bool',
+ [],
+ is_const=True)
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::NotifyMpduTransmission() [member function]
+ cls.add_method('NotifyMpduTransmission',
+ 'void',
+ [])
+ ## originator-block-ack-agreement.h: void ns3::OriginatorBlockAckAgreement::SetState(ns3::OriginatorBlockAckAgreement::State state) [member function]
+ cls.add_method('SetState',
+ 'void',
+ [param('ns3::OriginatorBlockAckAgreement::State', 'state')])
+ return
+
def register_Ns3RateInfo_methods(root_module, cls):
## minstrel-wifi-manager.h: ns3::RateInfo::RateInfo() [constructor]
cls.add_constructor([])
@@ -1612,6 +1920,196 @@
is_const=True, visibility='private', is_virtual=True)
return
+def register_Ns3MgtAddBaRequestHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader(ns3::MgtAddBaRequestHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtAddBaRequestHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaRequestHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtAddBaRequestHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaRequestHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint8_t ns3::MgtAddBaRequestHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaRequestHeader::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtAddBaRequestHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaRequestHeader::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaRequestHeader::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetBufferSize(uint16_t size) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'size')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetTid(uint8_t tid) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## mgt-headers.h: void ns3::MgtAddBaRequestHeader::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
+def register_Ns3MgtAddBaResponseHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader(ns3::MgtAddBaResponseHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtAddBaResponseHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaResponseHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaResponseHeader::GetBufferSize() const [member function]
+ cls.add_method('GetBufferSize',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtAddBaResponseHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtAddBaResponseHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: ns3::StatusCode ns3::MgtAddBaResponseHeader::GetStatusCode() const [member function]
+ cls.add_method('GetStatusCode',
+ 'ns3::StatusCode',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint8_t ns3::MgtAddBaResponseHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: uint16_t ns3::MgtAddBaResponseHeader::GetTimeout() const [member function]
+ cls.add_method('GetTimeout',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtAddBaResponseHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaResponseHeader::IsAmsduSupported() const [member function]
+ cls.add_method('IsAmsduSupported',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: bool ns3::MgtAddBaResponseHeader::IsImmediateBlockAck() const [member function]
+ cls.add_method('IsImmediateBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetAmsduSupport(bool supported) [member function]
+ cls.add_method('SetAmsduSupport',
+ 'void',
+ [param('bool', 'supported')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetBufferSize(uint16_t size) [member function]
+ cls.add_method('SetBufferSize',
+ 'void',
+ [param('uint16_t', 'size')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetDelayedBlockAck() [member function]
+ cls.add_method('SetDelayedBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetImmediateBlockAck() [member function]
+ cls.add_method('SetImmediateBlockAck',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetStatusCode(ns3::StatusCode code) [member function]
+ cls.add_method('SetStatusCode',
+ 'void',
+ [param('ns3::StatusCode', 'code')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetTid(uint8_t tid) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## mgt-headers.h: void ns3::MgtAddBaResponseHeader::SetTimeout(uint16_t timeout) [member function]
+ cls.add_method('SetTimeout',
+ 'void',
+ [param('uint16_t', 'timeout')])
+ return
+
def register_Ns3MgtAssocRequestHeader_methods(root_module, cls):
## mgt-headers.h: ns3::MgtAssocRequestHeader::MgtAssocRequestHeader(ns3::MgtAssocRequestHeader const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MgtAssocRequestHeader const &', 'arg0')])
@@ -1729,6 +2227,65 @@
[param('ns3::SupportedRates', 'rates')])
return
+def register_Ns3MgtDelBaHeader_methods(root_module, cls):
+ ## mgt-headers.h: ns3::MgtDelBaHeader::MgtDelBaHeader(ns3::MgtDelBaHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::MgtDelBaHeader const &', 'arg0')])
+ ## mgt-headers.h: ns3::MgtDelBaHeader::MgtDelBaHeader() [constructor]
+ cls.add_constructor([])
+ ## mgt-headers.h: uint32_t ns3::MgtDelBaHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## mgt-headers.h: ns3::TypeId ns3::MgtDelBaHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint32_t ns3::MgtDelBaHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: uint8_t ns3::MgtDelBaHeader::GetTid() const [member function]
+ cls.add_method('GetTid',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## mgt-headers.h: static ns3::TypeId ns3::MgtDelBaHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## mgt-headers.h: bool ns3::MgtDelBaHeader::IsByOriginator() const [member function]
+ cls.add_method('IsByOriginator',
+ 'bool',
+ [],
+ is_const=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetByOriginator() [member function]
+ cls.add_method('SetByOriginator',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetByRecipient() [member function]
+ cls.add_method('SetByRecipient',
+ 'void',
+ [])
+ ## mgt-headers.h: void ns3::MgtDelBaHeader::SetTid(uint8_t arg0) [member function]
+ cls.add_method('SetTid',
+ 'void',
+ [param('uint8_t', 'arg0')])
+ return
+
def register_Ns3MgtProbeRequestHeader_methods(root_module, cls):
## mgt-headers.h: ns3::MgtProbeRequestHeader::MgtProbeRequestHeader() [constructor]
cls.add_constructor([])
@@ -1966,47 +2523,6 @@
is_const=True, visibility='private', is_virtual=True)
return
-def register_Ns3PropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel() [constructor]
- cls.add_constructor([])
- ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel(ns3::PropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::PropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::Time ns3::PropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_pure_virtual=True, is_const=True, is_virtual=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::PropagationDelayModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- return
-
-def register_Ns3PropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::PropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::PropagationLossModel::SetNext(ns3::Ptr<ns3::PropagationLossModel> next) [member function]
- cls.add_method('SetNext',
- 'void',
- [param('ns3::Ptr< ns3::PropagationLossModel >', 'next')])
- ## propagation-loss-model.h: double ns3::PropagationLossModel::CalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('CalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True)
- ## propagation-loss-model.h: double ns3::PropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3QosTag_methods(root_module, cls):
## qos-tag.h: ns3::QosTag::QosTag(ns3::QosTag const & arg0) [copy constructor]
cls.add_constructor([param('ns3::QosTag const &', 'arg0')])
@@ -2059,38 +2575,6 @@
[param('ns3::UserPriority', 'up')])
return
-def register_Ns3RandomPropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel(ns3::RandomPropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::RandomPropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel() [constructor]
- cls.add_constructor([])
- ## propagation-delay-model.h: ns3::Time ns3::RandomPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, is_virtual=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::RandomPropagationDelayModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- return
-
-def register_Ns3RandomPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::RandomPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::RandomPropagationLossModel::RandomPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::RandomPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3RraaWifiRemoteStation_methods(root_module, cls):
## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation::RraaWifiRemoteStation(ns3::RraaWifiRemoteStation const & arg0) [copy constructor]
cls.add_constructor([param('ns3::RraaWifiRemoteStation const &', 'arg0')])
@@ -2153,21 +2637,6 @@
is_const=True, visibility='private', is_virtual=True)
return
-def register_Ns3ThreeLogDistancePropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::ThreeLogDistancePropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::ThreeLogDistancePropagationLossModel::ThreeLogDistancePropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::ThreeLogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3WifiActionHeader_methods(root_module, cls):
## mgt-headers.h: ns3::WifiActionHeader::WifiActionHeader(ns3::WifiActionHeader const & arg0) [copy constructor]
cls.add_constructor([param('ns3::WifiActionHeader const &', 'arg0')])
@@ -2222,6 +2691,8 @@
cls.add_constructor([])
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::ActionValue(ns3::WifiActionHeader::ActionValue const & arg0) [copy constructor]
cls.add_constructor([param('ns3::WifiActionHeader::ActionValue const &', 'arg0')])
+ ## mgt-headers.h: ns3::WifiActionHeader::ActionValue::blockAck [variable]
+ cls.add_instance_attribute('blockAck', 'ns3::WifiActionHeader::BlockAckActionValue', is_const=False)
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::interwork [variable]
cls.add_instance_attribute('interwork', 'ns3::WifiActionHeader::InterworkActionValue', is_const=False)
## mgt-headers.h: ns3::WifiActionHeader::ActionValue::linkMetrtic [variable]
@@ -2263,11 +2734,21 @@
'ns3::Mac48Address',
[],
is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## wifi-mac.h: ns3::Time ns3::WifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## wifi-mac.h: ns3::Mac48Address ns3::WifiMac::GetBssid() const [member function]
cls.add_method('GetBssid',
'ns3::Mac48Address',
[],
is_pure_virtual=True, is_const=True, is_virtual=True)
+ ## wifi-mac.h: ns3::Time ns3::WifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## wifi-mac.h: ns3::Time ns3::WifiMac::GetCtsTimeout() const [member function]
cls.add_method('GetCtsTimeout',
'ns3::Time',
@@ -2348,6 +2829,16 @@
'void',
[param('ns3::Mac48Address', 'address')],
is_pure_virtual=True, is_virtual=True)
+ ## wifi-mac.h: void ns3::WifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## wifi-mac.h: void ns3::WifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
## wifi-mac.h: void ns3::WifiMac::SetCtsTimeout(ns3::Time ctsTimeout) [member function]
cls.add_method('SetCtsTimeout',
'void',
@@ -2559,6 +3050,16 @@
'bool',
[],
is_const=True)
+ ## wifi-mac-header.h: bool ns3::WifiMacHeader::IsBlockAck() const [member function]
+ cls.add_method('IsBlockAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## wifi-mac-header.h: bool ns3::WifiMacHeader::IsBlockAckReq() const [member function]
+ cls.add_method('IsBlockAckReq',
+ 'bool',
+ [],
+ is_const=True)
## wifi-mac-header.h: bool ns3::WifiMacHeader::IsCfpoll() const [member function]
cls.add_method('IsCfpoll',
'bool',
@@ -2716,6 +3217,14 @@
cls.add_method('SetBeacon',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetBlockAck() [member function]
+ cls.add_method('SetBlockAck',
+ 'void',
+ [])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetBlockAckReq() [member function]
+ cls.add_method('SetBlockAckReq',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetDsFrom() [member function]
cls.add_method('SetDsFrom',
'void',
@@ -2776,10 +3285,18 @@
cls.add_method('SetQosAmsdu',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosBlockAck() [member function]
+ cls.add_method('SetQosBlockAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosEosp() [member function]
cls.add_method('SetQosEosp',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNoAck() [member function]
+ cls.add_method('SetQosNoAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNoAmsdu() [member function]
cls.add_method('SetQosNoAmsdu',
'void',
@@ -2788,6 +3305,10 @@
cls.add_method('SetQosNoEosp',
'void',
[])
+ ## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosNormalAck() [member function]
+ cls.add_method('SetQosNormalAck',
+ 'void',
+ [])
## wifi-mac-header.h: void ns3::WifiMacHeader::SetQosTid(uint8_t tid) [member function]
cls.add_method('SetQosTid',
'void',
@@ -3759,30 +4280,202 @@
visibility='private', is_virtual=True)
return
-def register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, cls):
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel(ns3::ConstantSpeedPropagationDelayModel const & arg0) [copy constructor]
- cls.add_constructor([param('ns3::ConstantSpeedPropagationDelayModel const &', 'arg0')])
- ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel() [constructor]
+def register_Ns3CtrlBAckRequestHeader_methods(root_module, cls):
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader::CtrlBAckRequestHeader(ns3::CtrlBAckRequestHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::CtrlBAckRequestHeader const &', 'arg0')])
+ ## ctrl-headers.h: ns3::CtrlBAckRequestHeader::CtrlBAckRequestHeader() [constructor]
cls.add_constructor([])
- ## propagation-delay-model.h: ns3::Time ns3::ConstantSpeedPropagationDelayModel::GetDelay(ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('GetDelay',
- 'ns3::Time',
- [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, is_virtual=True)
- ## propagation-delay-model.h: double ns3::ConstantSpeedPropagationDelayModel::GetSpeed() const [member function]
- cls.add_method('GetSpeed',
- 'double',
- [],
- is_const=True)
- ## propagation-delay-model.h: static ns3::TypeId ns3::ConstantSpeedPropagationDelayModel::GetTypeId() [member function]
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckRequestHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## ctrl-headers.h: ns3::TypeId ns3::CtrlBAckRequestHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckRequestHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckRequestHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckRequestHeader::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint8_t ns3::CtrlBAckRequestHeader::GetTidInfo() const [member function]
+ cls.add_method('GetTidInfo',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: static ns3::TypeId ns3::CtrlBAckRequestHeader::GetTypeId() [member function]
cls.add_method('GetTypeId',
'ns3::TypeId',
[],
is_static=True)
- ## propagation-delay-model.h: void ns3::ConstantSpeedPropagationDelayModel::SetSpeed(double speed) [member function]
- cls.add_method('SetSpeed',
- 'void',
- [param('double', 'speed')])
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsBasic() const [member function]
+ cls.add_method('IsBasic',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsCompressed() const [member function]
+ cls.add_method('IsCompressed',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::IsMultiTid() const [member function]
+ cls.add_method('IsMultiTid',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckRequestHeader::MustSendHtImmediateAck() const [member function]
+ cls.add_method('MustSendHtImmediateAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetHtImmediateAck(bool immediateAck) [member function]
+ cls.add_method('SetHtImmediateAck',
+ 'void',
+ [param('bool', 'immediateAck')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetTidInfo(uint8_t tid) [member function]
+ cls.add_method('SetTidInfo',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## ctrl-headers.h: void ns3::CtrlBAckRequestHeader::SetType(ns3::BlockAckType type) [member function]
+ cls.add_method('SetType',
+ 'void',
+ [param('ns3::BlockAckType', 'type')])
+ return
+
+def register_Ns3CtrlBAckResponseHeader_methods(root_module, cls):
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader::CtrlBAckResponseHeader(ns3::CtrlBAckResponseHeader const & arg0) [copy constructor]
+ cls.add_constructor([param('ns3::CtrlBAckResponseHeader const &', 'arg0')])
+ ## ctrl-headers.h: ns3::CtrlBAckResponseHeader::CtrlBAckResponseHeader() [constructor]
+ cls.add_constructor([])
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckResponseHeader::Deserialize(ns3::Buffer::Iterator start) [member function]
+ cls.add_method('Deserialize',
+ 'uint32_t',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_virtual=True)
+ ## ctrl-headers.h: ns3::TypeId ns3::CtrlBAckResponseHeader::GetInstanceTypeId() const [member function]
+ cls.add_method('GetInstanceTypeId',
+ 'ns3::TypeId',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint32_t ns3::CtrlBAckResponseHeader::GetSerializedSize() const [member function]
+ cls.add_method('GetSerializedSize',
+ 'uint32_t',
+ [],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckResponseHeader::GetStartingSequence() const [member function]
+ cls.add_method('GetStartingSequence',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint16_t ns3::CtrlBAckResponseHeader::GetStartingSequenceControl() const [member function]
+ cls.add_method('GetStartingSequenceControl',
+ 'uint16_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: uint8_t ns3::CtrlBAckResponseHeader::GetTidInfo() const [member function]
+ cls.add_method('GetTidInfo',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: static ns3::TypeId ns3::CtrlBAckResponseHeader::GetTypeId() [member function]
+ cls.add_method('GetTypeId',
+ 'ns3::TypeId',
+ [],
+ is_static=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsBasic() const [member function]
+ cls.add_method('IsBasic',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsCompressed() const [member function]
+ cls.add_method('IsCompressed',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsFragmentReceived(uint16_t seq, uint8_t frag) const [member function]
+ cls.add_method('IsFragmentReceived',
+ 'bool',
+ [param('uint16_t', 'seq'), param('uint8_t', 'frag')],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsMultiTid() const [member function]
+ cls.add_method('IsMultiTid',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::IsPacketReceived(uint16_t seq) const [member function]
+ cls.add_method('IsPacketReceived',
+ 'bool',
+ [param('uint16_t', 'seq')],
+ is_const=True)
+ ## ctrl-headers.h: bool ns3::CtrlBAckResponseHeader::MustSendHtImmediateAck() const [member function]
+ cls.add_method('MustSendHtImmediateAck',
+ 'bool',
+ [],
+ is_const=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::Print(std::ostream & os) const [member function]
+ cls.add_method('Print',
+ 'void',
+ [param('std::ostream &', 'os')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::Serialize(ns3::Buffer::Iterator start) const [member function]
+ cls.add_method('Serialize',
+ 'void',
+ [param('ns3::Buffer::Iterator', 'start')],
+ is_const=True, is_virtual=True)
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetHtImmediateAck(bool immeadiateAck) [member function]
+ cls.add_method('SetHtImmediateAck',
+ 'void',
+ [param('bool', 'immeadiateAck')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetReceivedFragment(uint16_t seq, uint8_t frag) [member function]
+ cls.add_method('SetReceivedFragment',
+ 'void',
+ [param('uint16_t', 'seq'), param('uint8_t', 'frag')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetReceivedPacket(uint16_t seq) [member function]
+ cls.add_method('SetReceivedPacket',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetStartingSequence(uint16_t seq) [member function]
+ cls.add_method('SetStartingSequence',
+ 'void',
+ [param('uint16_t', 'seq')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetStartingSequenceControl(uint16_t seqControl) [member function]
+ cls.add_method('SetStartingSequenceControl',
+ 'void',
+ [param('uint16_t', 'seqControl')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetTidInfo(uint8_t tid) [member function]
+ cls.add_method('SetTidInfo',
+ 'void',
+ [param('uint8_t', 'tid')])
+ ## ctrl-headers.h: void ns3::CtrlBAckResponseHeader::SetType(ns3::BlockAckType type) [member function]
+ cls.add_method('SetType',
+ 'void',
+ [param('ns3::BlockAckType', 'type')])
return
def register_Ns3Dcf_methods(root_module, cls):
@@ -3953,6 +4646,22 @@
cls.add_method('GotAck',
'void',
[param('double', 'snr'), param('ns3::WifiMode', 'txMode')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotBlockAck(ns3::CtrlBAckResponseHeader const * blockAck, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotBlockAck',
+ 'void',
+ [param('ns3::CtrlBAckResponseHeader const *', 'blockAck'), param('ns3::Mac48Address', 'recipient')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::MissedBlockAck() [member function]
+ cls.add_method('MissedBlockAck',
+ 'void',
+ [])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotAddBaResponse(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotAddBaResponse',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'recipient')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::GotDelBaFrame(ns3::MgtDelBaHeader const * delBaHdr, ns3::Mac48Address recipient) [member function]
+ cls.add_method('GotDelBaFrame',
+ 'void',
+ [param('ns3::MgtDelBaHeader const *', 'delBaHdr'), param('ns3::Mac48Address', 'recipient')])
## edca-txop-n.h: void ns3::EdcaTxopN::MissedAck() [member function]
cls.add_method('MissedAck',
'void',
@@ -4020,6 +4729,10 @@
cls.add_method('GetFragmentPacket',
'ns3::Ptr< ns3::Packet >',
[param('ns3::WifiMacHeader *', 'hdr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SetAccessClass(ns3::AccessClass ac) [member function]
+ cls.add_method('SetAccessClass',
+ 'void',
+ [param('ns3::AccessClass', 'ac')])
## edca-txop-n.h: void ns3::EdcaTxopN::Queue(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr) [member function]
cls.add_method('Queue',
'void',
@@ -4028,6 +4741,27 @@
cls.add_method('SetMsduAggregator',
'void',
[param('ns3::Ptr< ns3::MsduAggregator >', 'aggr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::PushFront(ns3::Ptr<ns3::Packet const> packet, ns3::WifiMacHeader const & hdr) [member function]
+ cls.add_method('PushFront',
+ 'void',
+ [param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const &', 'hdr')])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::CompleteConfig() [member function]
+ cls.add_method('CompleteConfig',
+ 'void',
+ [])
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SetBlockAckThreshold(uint8_t threshold) [member function]
+ cls.add_method('SetBlockAckThreshold',
+ 'void',
+ [param('uint8_t', 'threshold')])
+ ## edca-txop-n.h: uint8_t ns3::EdcaTxopN::GetBlockAckThreshold() const [member function]
+ cls.add_method('GetBlockAckThreshold',
+ 'uint8_t',
+ [],
+ is_const=True)
+ ## edca-txop-n.h: void ns3::EdcaTxopN::SendDelbaFrame(ns3::Mac48Address addr, uint8_t tid, bool byOriginator) [member function]
+ cls.add_method('SendDelbaFrame',
+ 'void',
+ [param('ns3::Mac48Address', 'addr'), param('uint8_t', 'tid'), param('bool', 'byOriginator')])
return
def register_Ns3ErrorRateModel_methods(root_module, cls):
@@ -4052,71 +4786,6 @@
is_static=True)
return
-def register_Ns3FixedRssLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::FixedRssLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::FixedRssLossModel::FixedRssLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::FixedRssLossModel::SetRss(double rss) [member function]
- cls.add_method('SetRss',
- 'void',
- [param('double', 'rss')])
- ## propagation-loss-model.h: double ns3::FixedRssLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
-def register_Ns3FriisPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::FriisPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::FriisPropagationLossModel::FriisPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double frequency, double speed) [member function]
- cls.add_method('SetLambda',
- 'void',
- [param('double', 'frequency'), param('double', 'speed')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetLambda(double lambda) [member function]
- cls.add_method('SetLambda',
- 'void',
- [param('double', 'lambda')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetSystemLoss(double systemLoss) [member function]
- cls.add_method('SetSystemLoss',
- 'void',
- [param('double', 'systemLoss')])
- ## propagation-loss-model.h: void ns3::FriisPropagationLossModel::SetMinDistance(double minDistance) [member function]
- cls.add_method('SetMinDistance',
- 'void',
- [param('double', 'minDistance')])
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetMinDistance() const [member function]
- cls.add_method('GetMinDistance',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetLambda() const [member function]
- cls.add_method('GetLambda',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::GetSystemLoss() const [member function]
- cls.add_method('GetSystemLoss',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: double ns3::FriisPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3IdealWifiManager_methods(root_module, cls):
## ideal-wifi-manager.h: ns3::IdealWifiManager::IdealWifiManager(ns3::IdealWifiManager const & arg0) [copy constructor]
cls.add_constructor([param('ns3::IdealWifiManager const &', 'arg0')])
@@ -4148,67 +4817,6 @@
visibility='private', is_virtual=True)
return
-def register_Ns3JakesPropagationLossModel_methods(root_module, cls):
- ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel::JakesPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNOscillators() const [member function]
- cls.add_method('GetNOscillators',
- 'uint8_t',
- [],
- is_const=True)
- ## jakes-propagation-loss-model.h: uint8_t ns3::JakesPropagationLossModel::GetNRays() const [member function]
- cls.add_method('GetNRays',
- 'uint8_t',
- [],
- is_const=True)
- ## jakes-propagation-loss-model.h: static ns3::TypeId ns3::JakesPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNOscillators(uint8_t nOscillators) [member function]
- cls.add_method('SetNOscillators',
- 'void',
- [param('uint8_t', 'nOscillators')])
- ## jakes-propagation-loss-model.h: void ns3::JakesPropagationLossModel::SetNRays(uint8_t nRays) [member function]
- cls.add_method('SetNRays',
- 'void',
- [param('uint8_t', 'nRays')])
- ## jakes-propagation-loss-model.h: double ns3::JakesPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
-def register_Ns3LogDistancePropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::LogDistancePropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel::LogDistancePropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetPathLossExponent(double n) [member function]
- cls.add_method('SetPathLossExponent',
- 'void',
- [param('double', 'n')])
- ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::GetPathLossExponent() const [member function]
- cls.add_method('GetPathLossExponent',
- 'double',
- [],
- is_const=True)
- ## propagation-loss-model.h: void ns3::LogDistancePropagationLossModel::SetReference(double referenceDistance, double referenceLoss) [member function]
- cls.add_method('SetReference',
- 'void',
- [param('double', 'referenceDistance'), param('double', 'referenceLoss')])
- ## propagation-loss-model.h: double ns3::LogDistancePropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3MacLow_methods(root_module, cls):
## mac-low.h: ns3::MacLow::MacLow(ns3::MacLow const & arg0) [copy constructor]
cls.add_constructor([param('ns3::MacLow const &', 'arg0')])
@@ -4219,6 +4827,14 @@
'ns3::Time',
[param('ns3::Ptr< ns3::Packet const >', 'packet'), param('ns3::WifiMacHeader const *', 'hdr'), param('ns3::MacLowTransmissionParameters const &', 'parameters')],
is_const=True)
+ ## mac-low.h: void ns3::MacLow::CreateBlockAckAgreement(ns3::MgtAddBaResponseHeader const * respHdr, ns3::Mac48Address originator, uint16_t startingSeq) [member function]
+ cls.add_method('CreateBlockAckAgreement',
+ 'void',
+ [param('ns3::MgtAddBaResponseHeader const *', 'respHdr'), param('ns3::Mac48Address', 'originator'), param('uint16_t', 'startingSeq')])
+ ## mac-low.h: void ns3::MacLow::DestroyBlockAckAgreement(ns3::Mac48Address originator, uint8_t tid) [member function]
+ cls.add_method('DestroyBlockAckAgreement',
+ 'void',
+ [param('ns3::Mac48Address', 'originator'), param('uint8_t', 'tid')])
## mac-low.h: ns3::Time ns3::MacLow::GetAckTimeout() const [member function]
cls.add_method('GetAckTimeout',
'ns3::Time',
@@ -4229,11 +4845,21 @@
'ns3::Mac48Address',
[],
is_const=True)
+ ## mac-low.h: ns3::Time ns3::MacLow::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True)
## mac-low.h: ns3::Mac48Address ns3::MacLow::GetBssid() const [member function]
cls.add_method('GetBssid',
'ns3::Mac48Address',
[],
is_const=True)
+ ## mac-low.h: ns3::Time ns3::MacLow::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True)
## mac-low.h: ns3::Time ns3::MacLow::GetCtsTimeout() const [member function]
cls.add_method('GetCtsTimeout',
'ns3::Time',
@@ -4266,6 +4892,10 @@
cls.add_method('ReceiveOk',
'void',
[param('ns3::Ptr< ns3::Packet >', 'packet'), param('double', 'rxSnr'), param('ns3::WifiMode', 'txMode'), param('ns3::WifiPreamble', 'preamble')])
+ ## mac-low.h: void ns3::MacLow::RegisterBlockAckListenerForAc(ns3::AccessClass ac, ns3::MacLowBlockAckEventListener * listener) [member function]
+ cls.add_method('RegisterBlockAckListenerForAc',
+ 'void',
+ [param('ns3::AccessClass', 'ac'), param('ns3::MacLowBlockAckEventListener *', 'listener')])
## mac-low.h: void ns3::MacLow::RegisterDcfListener(ns3::MacLowDcfListener * listener) [member function]
cls.add_method('RegisterDcfListener',
'void',
@@ -4278,10 +4908,18 @@
cls.add_method('SetAddress',
'void',
[param('ns3::Mac48Address', 'ad')])
+ ## mac-low.h: void ns3::MacLow::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')])
## mac-low.h: void ns3::MacLow::SetBssid(ns3::Mac48Address ad) [member function]
cls.add_method('SetBssid',
'void',
[param('ns3::Mac48Address', 'ad')])
+ ## mac-low.h: void ns3::MacLow::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')])
## mac-low.h: void ns3::MacLow::SetCtsTimeout(ns3::Time ctsTimeout) [member function]
cls.add_method('SetCtsTimeout',
'void',
@@ -4381,21 +5019,6 @@
is_static=True)
return
-def register_Ns3NakagamiPropagationLossModel_methods(root_module, cls):
- ## propagation-loss-model.h: static ns3::TypeId ns3::NakagamiPropagationLossModel::GetTypeId() [member function]
- cls.add_method('GetTypeId',
- 'ns3::TypeId',
- [],
- is_static=True)
- ## propagation-loss-model.h: ns3::NakagamiPropagationLossModel::NakagamiPropagationLossModel() [constructor]
- cls.add_constructor([])
- ## propagation-loss-model.h: double ns3::NakagamiPropagationLossModel::DoCalcRxPower(double txPowerDbm, ns3::Ptr<ns3::MobilityModel> a, ns3::Ptr<ns3::MobilityModel> b) const [member function]
- cls.add_method('DoCalcRxPower',
- 'double',
- [param('double', 'txPowerDbm'), param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')],
- is_const=True, visibility='private', is_virtual=True)
- return
-
def register_Ns3NqapWifiMac_methods(root_module, cls):
## nqap-wifi-mac.h: static ns3::TypeId ns3::NqapWifiMac::GetTypeId() [member function]
cls.add_method('GetTypeId',
@@ -4870,6 +5493,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qadhoc-wifi-mac.h: ns3::Time ns3::QadhocWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qadhoc-wifi-mac.h: ns3::Time ns3::QadhocWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qadhoc-wifi-mac.h: void ns3::QadhocWifiMac::DoDispose() [member function]
cls.add_method('DoDispose',
'void',
@@ -5015,6 +5658,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qap-wifi-mac.h: void ns3::QapWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qap-wifi-mac.h: void ns3::QapWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qap-wifi-mac.h: ns3::Time ns3::QapWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qap-wifi-mac.h: ns3::Time ns3::QapWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qap-wifi-mac.h: void ns3::QapWifiMac::SetBeaconInterval(ns3::Time interval) [member function]
cls.add_method('SetBeaconInterval',
'void',
@@ -5178,6 +5841,26 @@
'ns3::Mac48Address',
[],
is_const=True, is_virtual=True)
+ ## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetBasicBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetBasicBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetCompressedBlockAckTimeout(ns3::Time blockAckTimeout) [member function]
+ cls.add_method('SetCompressedBlockAckTimeout',
+ 'void',
+ [param('ns3::Time', 'blockAckTimeout')],
+ is_virtual=True)
+ ## qsta-wifi-mac.h: ns3::Time ns3::QstaWifiMac::GetBasicBlockAckTimeout() const [member function]
+ cls.add_method('GetBasicBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
+ ## qsta-wifi-mac.h: ns3::Time ns3::QstaWifiMac::GetCompressedBlockAckTimeout() const [member function]
+ cls.add_method('GetCompressedBlockAckTimeout',
+ 'ns3::Time',
+ [],
+ is_const=True, is_virtual=True)
## qsta-wifi-mac.h: void ns3::QstaWifiMac::SetMaxMissedBeacons(uint32_t missed) [member function]
cls.add_method('SetMaxMissedBeacons',
'void',
@@ -5662,6 +6345,10 @@
module.add_function('QosUtilsGetTidForPacket',
'uint8_t',
[param('ns3::Ptr< ns3::Packet const >', 'packet')])
+ ## qos-utils.h: extern uint32_t ns3::QosUtilsMapSeqControlToUniqueInteger(uint16_t seqControl, uint16_t endSequence) [free function]
+ module.add_function('QosUtilsMapSeqControlToUniqueInteger',
+ 'uint32_t',
+ [param('uint16_t', 'seqControl'), param('uint16_t', 'endSequence')])
## qos-utils.h: extern ns3::AccessClass ns3::QosUtilsMapTidToAc(uint8_t tid) [free function]
module.add_function('QosUtilsMapTidToAc',
'ns3::AccessClass',
--- a/bindings/python/ns3modulescan.py Mon Feb 08 23:32:23 2010 -0800
+++ b/bindings/python/ns3modulescan.py Fri Feb 12 16:20:59 2010 -0800
@@ -87,6 +87,13 @@
'extern void ns3::PythonCompleteConstruct(ns3::Ptr<ns3::Object> object, ns3::TypeId typeId, ns3::AttributeList const & attributes) [free function]': {
'ignore': None # used transparently by, should not be wrapped
},
+ 'ns3::Ipv4RoutingTableEntry * ns3::GlobalRouter::GetInjectedRoute(uint32_t i) [member function]': {
+ 'params': {'return': { 'caller_owns_return': 'false',}},
+ },
+ 'ns3::Ipv4RoutingTableEntry * ns3::Ipv4GlobalRouting::GetRoute(uint32_t i) [member function]': {
+ 'params': {'return': { 'caller_owns_return': 'false',}},
+ },
+
}
def get_ns3_relative_path(path):
--- a/doc/manual/objects.texi Mon Feb 08 23:32:23 2010 -0800
+++ b/doc/manual/objects.texi Fri Feb 12 16:20:59 2010 -0800
@@ -10,6 +10,7 @@
* Object-oriented behavior::
* Object base classes::
* Memory management and class Ptr::
+* Object factories::
* Downcasting::
@end menu
@@ -62,7 +63,7 @@
@itemize @bullet
@item @code{class Object}
@item @code{class ObjectBase}
-@item @code{class RefCountBase}
+@item @code{class SimpleRefCount}
@end itemize
It is not required that ns-3 objects inherit from these class, but
those that do get special properties. Classes deriving from
@@ -75,7 +76,7 @@
Classes that derive from @code{class ObjectBase} get the first two
properties above, but do not get smart pointers. Classes that
-derive from @code{class RefCountBase} get only the smart-pointer
+derive from @code{class SimpleRefCount} get only the smart-pointer
reference counting system.
In practice, @code{class Object} is the variant of the three above that
@@ -152,11 +153,8 @@
Please do not create such objects using @code{operator new}; create them
using @code{CreateObject()} instead.
-For objects deriving from @code{class RefCountBase}, or other
-objects that support usage of the smart pointer class
-(in particular, the ns-3 Packet class does not derive from RefCountBase
-in order to avoid a vtable, but separately implements @code{Ref ()} and
-@code{Unref ()}),
+For objects deriving from @code{class SimpleRefCount}, or other
+objects that support usage of the smart pointer class,
a templated helper function is available and recommended to be used:
@verbatim
Ptr<B> b = Create<B> ();
@@ -164,6 +162,10 @@
This is simply a wrapper around operator new that correctly handles
the reference counting system.
+In summary, use @code{Create<B>} if B is not an object but just uses
+reference counting (e.g. @code{class Packet}), and use @code{CreateObject<B>}
+if B derives from @code{ns3::Object}.
+
@subsection Aggregation
The ns-3 object aggregation system is motivated in strong part by
@@ -255,6 +257,43 @@
We hope that this mode of programming will require much less
need for developers to modify the base classes.
+@node Object factories
+@section Object factories
+
+A common use case is to create lots of similarly configured objects.
+One can repeatedly call @code{CreateObject} but there is also a
+factory design pattern in use in the ns-3 system. It is heavily
+used in the "helper" API.
+
+Class @code{ObjectFactory} can be used to instantiate objects and
+to configure the attributes on those objects
+
+@verbatim
+ void SetTypeId (TypeId tid);
+ void Set (std::string name, const AttributeValue &value);
+ Ptr<T> Create (void) const;
+@end verbatim
+
+The first method allows one to use the ns-3 TypeId system to specify
+the type of objects created. The second allows one to set
+attributes on the objects to be created, and the third allows one
+to create the objects themselves.
+
+For example:
+@verbatim
+ ObjectFactory factory;
+ // Make this factory create objects of type FriisPropagationLossModel
+ factory.SetTypeId ("ns3::FriisPropagationLossModel")
+ // Make this factory object change a default value of an attribute, for
+ // subsequently created objects
+ factory.Set ("SystemLoss", DoubleValue (2.0));
+ // Create one such object
+ Ptr<Object> object = m_factory.Create ();
+ factory.Set ("SystemLoss", DoubleValue (3.0));
+ // Create another object
+ Ptr<Object> object = m_factory.Create ();
+Wend verbatim
+
@node Downcasting
@section Downcasting
--- a/examples/csma/csma-packet-socket.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/csma/csma-packet-socket.cc Fri Feb 12 16:20:59 2010 -0800
@@ -14,7 +14,6 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
//
// Network topology
//
@@ -22,11 +21,9 @@
// | | | |
// =====================
//
-// - CBR/UDP flows from n0 to n1, and from n3 to n0
-// - UDP packet size of 210 bytes, with per-packet interval 0.00375 sec.
-// (i.e., DataRate of 448,000 bps)
-// - DropTail queues
-// - Tracing of queues and packet receptions to file "csma-one-subnet.tr"
+// - Packet socket flow from n0 to n3
+// - Default 512 byte packets generated by traffic generator
+// Trace output will be sent to the csma-packet-socket.tr file
#include <iostream>
#include <fstream>
--- a/examples/csma/csma-ping.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/csma/csma-ping.cc Fri Feb 12 16:20:59 2010 -0800
@@ -14,19 +14,14 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
-//
// Network topology
//
// n0 n1 n2 n3
// | | | |
// =====================
//
-// - CBR/UDP flows from n0 to n1, and from n3 to n0
-// - UDP packet size of 210 bytes, with per-packet interval 0.00375 sec.
-// (i.e., DataRate of 448,000 bps)
-// - DropTail queues
-// - Tracing of queues and packet receptions to file "csma-one-subnet.tr"
+// node n0,n1,n3 pings to node n2
+// node n0 generates protocol 2 (IGMP) to node n3
#include <iostream>
#include <fstream>
@@ -83,8 +78,6 @@
ip.SetBase ("192.168.1.0", "255.255.255.0");
Ipv4InterfaceContainer addresses = ip.Assign (devs);
- // setup global router
- Ipv4GlobalRoutingHelper::PopulateRoutingTables ();
NS_LOG_INFO ("Create Source");
Config::SetDefault ("ns3::Ipv4RawSocketImpl::Protocol", StringValue ("2"));
InetSocketAddress dst = InetSocketAddress (addresses.GetAddress (3));
--- a/examples/csma/csma-raw-ip-socket.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/csma/csma-raw-ip-socket.cc Fri Feb 12 16:20:59 2010 -0800
@@ -14,19 +14,17 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
//
// Network topology
-//
+// (sender) (receiver)
// n0 n1 n2 n3
// | | | |
// =====================
//
-// - CBR/UDP flows from n0 to n1, and from n3 to n0
-// - UDP packet size of 210 bytes, with per-packet interval 0.00375 sec.
-// (i.e., DataRate of 448,000 bps)
-// - DropTail queues
-// - Tracing of queues and packet receptions to file "csma-one-subnet.tr"
+// Node n0 sends data to node n3 over a raw IP socket. The protocol
+// number used is 2.
+// The default traffic rate is to send 1250 bytes/second for 10 kb/s
+// The data rate can be toggled by command line argument
#include <iostream>
#include <fstream>
@@ -44,7 +42,9 @@
static void SinkRx (Ptr<const Packet> p, const Address &ad)
{
- //std::cout << *p << std::endl;
+ // Enable the below line to see the packet contents printed out at the
+ // receive sink
+ //std::cout << Simulator::Now().GetSeconds () << " " << *p << std::endl;
}
int
@@ -53,8 +53,9 @@
#if 0
LogComponentEnable ("CsmaPacketSocketExample", LOG_LEVEL_INFO);
#endif
-
+ uint32_t dataRate = 10;
CommandLine cmd;
+ cmd.AddValue ("dataRate", "application dataRate (Kb/s)", dataRate);
cmd.Parse (argc, argv);
// Here, we will explicitly create four nodes.
@@ -82,23 +83,24 @@
Ipv4InterfaceContainer addresses = ip.Assign (devs);
NS_LOG_INFO ("Create Source");
+ // IP protocol configuration
Config::SetDefault ("ns3::Ipv4RawSocketImpl::Protocol", StringValue ("2"));
InetSocketAddress dst = InetSocketAddress (addresses.GetAddress (3));
OnOffHelper onoff = OnOffHelper ("ns3::Ipv4RawSocketFactory", dst);
onoff.SetAttribute ("OnTime", RandomVariableValue (ConstantVariable (1.0)));
onoff.SetAttribute ("OffTime", RandomVariableValue (ConstantVariable (0.0)));
- onoff.SetAttribute ("DataRate", DataRateValue (DataRate (6000)));
- onoff.SetAttribute ("PacketSize", UintegerValue (1200));
+ onoff.SetAttribute ("DataRate", DataRateValue (DataRate (dataRate*1000)));
+ onoff.SetAttribute ("PacketSize", UintegerValue (1250));
ApplicationContainer apps = onoff.Install (c.Get (0));
- apps.Start (Seconds (1.0));
- apps.Stop (Seconds (10.0));
+ apps.Start (Seconds (0.5));
+ apps.Stop (Seconds (11));
NS_LOG_INFO ("Create Sink.");
PacketSinkHelper sink = PacketSinkHelper ("ns3::Ipv4RawSocketFactory", dst);
apps = sink.Install (c.Get (3));
apps.Start (Seconds (0.0));
- apps.Stop (Seconds (11.0));
+ apps.Stop (Seconds (12.0));
NS_LOG_INFO ("Configure Tracing.");
// first, pcap tracing in non-promiscuous mode
--- a/examples/error-model/simple-error-model.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/error-model/simple-error-model.cc Fri Feb 12 16:20:59 2010 -0800
@@ -13,12 +13,8 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
- * ns-2 simple.tcl script (ported from ns-2)
- * Originally authored by Steve McCanne, 12/19/1996
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
-//
// Network topology
//
// n0
--- a/examples/routing/simple-global-routing.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/routing/simple-global-routing.cc Fri Feb 12 16:20:59 2010 -0800
@@ -13,11 +13,8 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
- * ns-2 simple.tcl script (ported from ns-2)
- * Originally authored by Steve McCanne, 12/19/1996
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
//
// Network topology
//
--- a/examples/routing/simple-point-to-point-olsr.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/routing/simple-point-to-point-olsr.cc Fri Feb 12 16:20:59 2010 -0800
@@ -13,11 +13,10 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
- * ns-2 simple.tcl script (ported from ns-2)
- * Originally authored by Steve McCanne, 12/19/1996
*/
-// Port of ns-2/tcl/ex/simple.tcl to ns-3
+//
+// Simple example of OLSR routing over some point-to-point links
//
// Network topology
//
--- a/examples/tunneling/virtual-net-device.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/examples/tunneling/virtual-net-device.cc Fri Feb 12 16:20:59 2010 -0800
@@ -14,8 +14,6 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Based on simple-global-routing.cc
- * ns-2 simple.tcl script (ported from ns-2)
- * Originally authored by Steve McCanne, 12/19/1996
*/
// Network topology
--- a/src/common/ascii-writer.cc Mon Feb 08 23:32:23 2010 -0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2009 INRIA
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * Author: Guillaume Seguin <guillaume@segu.in>
- */
-#include "ascii-writer.h"
-
-#include "ns3/log.h"
-#include "ns3/simulator.h"
-#include "ns3/simulation-singleton.h"
-#include "ns3/packet.h"
-
-#include <fstream>
-#include <map>
-
-
-NS_LOG_COMPONENT_DEFINE ("AsciiWriter");
-
-namespace ns3 {
-
-typedef std::map<std::ostream*, Ptr<AsciiWriter> > AsciiWritersMap;
-
-Ptr<AsciiWriter>
-AsciiWriter::Get (std::ostream &os)
-{
- AsciiWritersMap *map = SimulationSingleton<AsciiWritersMap>::Get ();
- Ptr<AsciiWriter> writer = (*map)[&os];
- if (writer == 0)
- {
- // don't call Create<> because constructor is private
- writer = Ptr<AsciiWriter> (new AsciiWriter (&os), false);
- (*map)[&os] = writer;
- }
- return writer;
-}
-
-AsciiWriter::AsciiWriter (std::ostream *os)
- : m_writer (os)
-{
- NS_LOG_FUNCTION (this);
-}
-
-AsciiWriter::~AsciiWriter (void)
-{
- NS_LOG_FUNCTION (this);
-}
-
-void
-AsciiWriter::WritePacket (enum Type type, std::string message, Ptr<const Packet> packet)
-{
- std::string typeString;
- switch (type)
- {
- case ENQUEUE:
- typeString = "+";
- break;
- case DEQUEUE:
- typeString = "-";
- break;
- case RX:
- typeString = "r";
- break;
- case TX:
- typeString = "t";
- break;
- case DROP:
- typeString = "d";
- break;
- }
- NS_LOG_FUNCTION (this << typeString << message);
- *m_writer << typeString << " " << Simulator::Now ().GetSeconds () << " "
- << message << " " << *packet << std::endl;
-}
-
-} // namespace ns3
--- a/src/common/ascii-writer.h Mon Feb 08 23:32:23 2010 -0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2009 INRIA
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * Author: Guillaume Seguin <guilla...@segu.in>
- */
-
-#ifndef ASCII_WRITER_H
-#define ASCII_WRITER_H
-
-#include <stdint.h>
-#include <ostream>
-#include "ns3/simple-ref-count.h"
-#include "ns3/ptr.h"
-
-namespace ns3 {
-
-class Packet;
-
-/**
- * \ingroup common
- *
- * \brief Ascii output
- */
-class AsciiWriter : public SimpleRefCount<AsciiWriter>
-{
-public:
- static Ptr<AsciiWriter> Get (std::ostream &os);
-
- enum Type {
- ENQUEUE,
- DEQUEUE,
- DROP,
- TX,
- RX
- };
-
- ~AsciiWriter (void);
-
- /**
- * Writes a message in the output file, checking if the files will
- * need to be reordered.
- */
- void WritePacket (enum Type type, std::string message, Ptr<const Packet> p);
-
-private:
- AsciiWriter (std::ostream *os);
-
- std::ostream *m_writer;
-};
-
-} // namespace ns3
-
-#endif /* ASCII_WRITER_H */
--- a/src/common/pcap-writer.cc Mon Feb 08 23:32:23 2010 -0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,562 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2005,2006 INRIA
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
- */
-
-/*
- * Documentation kindly pointed out by Tom Henderson:
- * http://wiki.ethereal.com/Development/LibpcapFileFormat
- */
-
-#include <fstream>
-
-#include "ns3/log.h"
-#include "ns3/assert.h"
-#include "ns3/abort.h"
-#include "ns3/simulator.h"
-#include "ns3/uinteger.h"
-#include "pcap-writer.h"
-#include "packet.h"
-
-NS_LOG_COMPONENT_DEFINE ("PcapWriter");
-
-namespace ns3 {
-
-NS_OBJECT_ENSURE_REGISTERED (PcapWriter);
-
-enum {
- PCAP_ETHERNET = 1,
- PCAP_PPP = 9,
- PCAP_RAW_IP = 101,
- PCAP_80211 = 105,
- PCAP_80211_PRISM = 119,
- PCAP_80211_RADIOTAP = 127,
-};
-
-TypeId
-PcapWriter::GetTypeId (void)
-{
- static TypeId tid = TypeId ("ns3::PcapWriter")
- .SetParent<Object> ()
- .AddConstructor<PcapWriter> ()
- .AddAttribute ("CaptureSize",
- "Number of bytes to capture at the start of each packet written in the pcap file. Zero means capture all bytes.",
- UintegerValue (0),
- MakeUintegerAccessor (&PcapWriter::m_captureSize),
- MakeUintegerChecker<uint32_t> ())
- ;
- return tid;
-}
-
-PcapWriter::PcapWriter ()
-{
- NS_LOG_FUNCTION (this);
- NS_LOG_LOGIC ("m_writer = 0");
- m_writer = 0;
-}
-
-PcapWriter::~PcapWriter ()
-{
- NS_LOG_FUNCTION (this);
-
- if (m_writer != 0)
- {
- NS_LOG_LOGIC ("m_writer nonzero " << m_writer);
- if (m_writer->is_open ())
- {
- NS_LOG_LOGIC ("m_writer open. Closing " << m_writer);
- m_writer->close ();
- }
-
- NS_LOG_LOGIC ("Deleting writer " << m_writer);
- delete m_writer;
-
- NS_LOG_LOGIC ("m_writer = 0");
- m_writer = 0;
- }
- else
- {
- NS_LOG_LOGIC ("m_writer == 0");
- }
-}
-
-void
-PcapWriter::Open (std::string const &name)
-{
- NS_LOG_FUNCTION (this << name);
- NS_ABORT_MSG_UNLESS (m_writer == 0, "PcapWriter::Open(): m_writer already allocated (std::ofstream leak detected)");
-
- m_writer = new std::ofstream ();
- NS_ABORT_MSG_UNLESS (m_writer, "PcapWriter::Open(): Cannot allocate m_writer");
-
- NS_LOG_LOGIC ("Created writer " << m_writer);
-
- m_writer->open (name.c_str (), std::ios_base::binary | std::ios_base::out);
- NS_ABORT_MSG_IF (m_writer->fail (), "PcapWriter::Open(): m_writer->open(" << name.c_str () << ") failed");
-
- NS_ASSERT_MSG (m_writer->is_open (), "PcapWriter::Open(): m_writer not open");
-
- NS_LOG_LOGIC ("Writer opened successfully");
-}
-
-void
-PcapWriter::WriteEthernetHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_ETHERNET);
-}
-
-void
-PcapWriter::WriteIpHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_RAW_IP);
-}
-
-void
-PcapWriter::WriteWifiHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_80211);
-}
-
-void
-PcapWriter::WriteWifiRadiotapHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_80211_RADIOTAP);
-}
-
-void
-PcapWriter::WriteWifiPrismHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_80211_PRISM);
-}
-
-void
-PcapWriter::WritePppHeader (void)
-{
- NS_LOG_FUNCTION_NOARGS ();
- WriteHeader (PCAP_PPP);
-}
-
-void
-PcapWriter::WriteHeader (uint32_t network)
-{
- NS_LOG_FUNCTION (this << network);
- Write32 (0xa1b2c3d4);
- Write16 (2);
- Write16 (4);
- Write32 (0);
- Write32 (0);
- Write32 (0xffff);
- Write32 (network);
- m_pcapMode = network;
-}
-
-void
-PcapWriter::WritePacket (Ptr<const Packet> packet)
-{
- if (m_writer != 0)
- {
- uint64_t current = Simulator::Now ().GetMicroSeconds ();
- uint64_t s = current / 1000000;
- uint64_t us = current % 1000000;
- Write32 (s & 0xffffffff);
- Write32 (us & 0xffffffff);
- uint32_t thisCaptureSize;
- if (m_captureSize == 0)
- {
- thisCaptureSize = packet->GetSize ();
- }
- else
- {
- thisCaptureSize = std::min (m_captureSize, packet->GetSize ());
- }
- Write32 (thisCaptureSize);
- Write32 (packet->GetSize ()); // actual packet size
- packet->CopyData (m_writer, thisCaptureSize);
- }
-}
-
-
-void PcapWriter::WriteWifiMonitorPacket(Ptr<const Packet> packet, uint16_t channelFreqMhz, uint16_t channelNumber,
- uint32_t rate, bool isShortPreamble, bool isTx,
- double signalDbm, double noiseDbm)
-{
- NS_LOG_FUNCTION (this << packet->GetSize() << channelFreqMhz << rate << isShortPreamble << isTx << signalDbm << noiseDbm);
-
- if (m_writer == 0)
- {
- return;
- }
-
- if (m_pcapMode == PCAP_80211)
- {
- WritePacket (packet);
- return;
- }
-
- /* the following is common between PRISM and RADIOTAP */
-
- uint64_t current = Simulator::Now ().GetMicroSeconds ();
- uint64_t s = current / 1000000;
- uint64_t us = current % 1000000;
- Write32 (s & 0xffffffff);
- Write32 (us & 0xffffffff);
-
-
- // MAC timestamp. Actually according to radiotap specifications
- // (http://www.radiotap.org/defined-fields/TSFT) this should be
- // the time "when the first bit of the MPDU arrived at the
- // MAC". This is not exactly what we're doing here, but to handle
- // this properly we would need to first of all investigate how
- // real devices (e.g. madwifi) handle this case, especially for TX
- // packets (radiotap specs says TSFT is not used for TX packets,
- // but madwifi actually uses it).
- uint64_t tsft = current;
-
-
- uint32_t wifiMonitorHeaderSize;
-
- if (m_pcapMode == PCAP_80211_PRISM)
- {
-
-#define PRISM_MSG_CODE 0x00000044
-#define PRISM_MSG_LENGTH 144
-#define PRISM_DID_HOSTTIME 0x00010044
-#define PRISM_DID_MACTIME 0x00020044
-#define PRISM_DID_CHANNEL 0x00030044
-#define PRISM_DID_RSSI 0x00040044
-#define PRISM_DID_SQ 0x00050044
-#define PRISM_DID_SIGNAL 0x00060044
-#define PRISM_DID_NOISE 0x00070044
-#define PRISM_DID_RATE 0x00080044
-#define PRISM_DID_ISTX 0x00090044
-#define PRISM_DID_FRMLEN 0x000A0044
-
-#define PRISM_STATUS_PRESENT 0
-#define PRISM_STATUS_ABSENT 1
-#define PRISM_ITEM_LENGTH 4
-
-
- wifiMonitorHeaderSize = PRISM_MSG_LENGTH;
- if (m_captureSize == 0)
- {
- Write32 (packet->GetSize () + wifiMonitorHeaderSize); // captured size == actual packet size
- }
- else
- {
- uint32_t thisCaptureSize = std::min (m_captureSize, packet->GetSize () + wifiMonitorHeaderSize);
- Write32 (thisCaptureSize);
- }
- Write32 (packet->GetSize () + wifiMonitorHeaderSize); // actual packet size
-
- Write32(PRISM_MSG_CODE);
- Write32(PRISM_MSG_LENGTH);
- WriteData((const uint8_t *)"unknown wifi device!!!!!!!!", 16);
-
- Write32(PRISM_DID_HOSTTIME);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- // madwifi reports hosttime in jiffies.
- // We calculate jiffies assuming HZ = 10
- Write32((uint32_t) (Now ().GetMilliSeconds () / 10 ) );
-
- Write32(PRISM_DID_MACTIME);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- // This looses precision, which is a well-known issue of the prism
- // header format.
- Write32((uint32_t) tsft);
-
- Write32(PRISM_DID_CHANNEL);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32((uint32_t) channelNumber);
-
- Write32(PRISM_DID_RSSI);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- // madwifi here reports a value which is said to be "the value in
- // dBm above noise". Apart from the fact that this is incorrect
- // (if it is relative to a value in dBm, then it must be in dB,
- // not in dBm again), this means that in fact it is not a RSSI
- // (which stands for Received Signal Strength Indicator) but it is
- // rather a Signal to Noise Ratio (SNR), of course in dB.
- // Anyway, in the end we calculate the value exactly as madwifi does.
- Write32((uint32_t)round(signalDbm - noiseDbm));
-
- // SQ field not used. I would expect a PRISM_STATUS_ABSENT to be
- // needed here, but if you look at the prism header that madwifi
- // produces you'll just see that the whole field structure is
- // zeroed.
- Write32(0);
- Write16(0);
- Write16(0);
- Write32(0);
-
- Write32(PRISM_DID_SIGNAL);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32((uint32_t)round(signalDbm));
-
- Write32(PRISM_DID_NOISE);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32((uint32_t)round(noiseDbm));
-
- Write32(PRISM_DID_RATE);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32(rate);
-
- Write32(PRISM_DID_ISTX);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32(isTx ? 1 : 0);
-
- Write32(PRISM_DID_FRMLEN);
- Write16(PRISM_STATUS_PRESENT);
- Write16(PRISM_ITEM_LENGTH);
- Write32(packet->GetSize ());
-
-
-
- } // PCAP_80211_PRISM
-
- else if (m_pcapMode == PCAP_80211_RADIOTAP)
- {
- NS_LOG_LOGIC("writing radiotap packet");
-
-#define RADIOTAP_TSFT 0x00000001
-#define RADIOTAP_FLAGS 0x00000002
-#define RADIOTAP_RATE 0x00000004
-#define RADIOTAP_CHANNEL 0x00000008
-#define RADIOTAP_FHSS 0x00000010
-#define RADIOTAP_DBM_ANTSIGNAL 0x00000020
-#define RADIOTAP_DBM_ANTNOISE 0x00000040
-#define RADIOTAP_LOCK_QUALITY 0x00000080
-#define RADIOTAP_TX_ATTENUATION 0x00000100
-#define RADIOTAP_DB_TX_ATTENUATION 0x00000200
-#define RADIOTAP_DBM_TX_POWER 0x00000200
-#define RADIOTAP_ANTENNA 0x00000400
-#define RADIOTAP_DB_ANTSIGNAL 0x00000800
-#define RADIOTAP_DB_ANTNOISE 0x00001000
-#define RADIOTAP_EXT 0x10000000
-
-#define RADIOTAP_FLAG_NONE 0x00
-#define RADIOTAP_FLAG_CFP 0x01
-#define RADIOTAP_FLAG_SHORTPRE 0x02
-#define RADIOTAP_FLAG_WEP 0x04
-#define RADIOTAP_FLAG_FRAG 0x08
-#define RADIOTAP_FLAG_FCS 0x10
-#define RADIOTAP_FLAG_DATAPAD 0x20
-#define RADIOTAP_FLAG_BADFCS 0x40
-
-#define RADIOTAP_CHANNEL_TURBO 0x0010
-#define RADIOTAP_CHANNEL_CCK 0x0020
-#define RADIOTAP_CHANNEL_OFDM 0x0040
-#define RADIOTAP_CHANNEL_2GHZ 0x0080
-#define RADIOTAP_CHANNEL_5GHZ 0x0100
-#define RADIOTAP_CHANNEL_PASSIVE 0x0200
-#define RADIOTAP_CHANNEL_DYN_CCK_OFDM 0x0400
-#define RADIOTAP_CHANNEL_GFSK 0x0800
-#define RADIOTAP_CHANNEL_GSM 0x1000
-#define RADIOTAP_CHANNEL_STATIC_TURBO 0x2000
-#define RADIOTAP_CHANNEL_HALF_RATE 0x4000
-#define RADIOTAP_CHANNEL_QUARTER_RATE 0x8000
-
-#define RADIOTAP_RX_PRESENT (RADIOTAP_TSFT | RADIOTAP_FLAGS | RADIOTAP_RATE | RADIOTAP_CHANNEL | RADIOTAP_DBM_ANTSIGNAL | RADIOTAP_DBM_ANTNOISE)
-#define RADIOTAP_RX_LENGTH (8+8+1+1+2+2+1+1)
-
-#define RADIOTAP_TX_PRESENT (RADIOTAP_TSFT | RADIOTAP_FLAGS | RADIOTAP_RATE | RADIOTAP_CHANNEL)
-#define RADIOTAP_TX_LENGTH (8+8+1+1+2+2)
-
- if (isTx)
- {
- wifiMonitorHeaderSize = RADIOTAP_TX_LENGTH;
- }
- else
- {
- wifiMonitorHeaderSize = RADIOTAP_RX_LENGTH;
- }
-
- if (m_captureSize == 0)
- {
- Write32 (packet->GetSize () + wifiMonitorHeaderSize); // captured size == actual packet size
- }
- else
- {
- uint32_t thisCaptureSize = std::min (m_captureSize, packet->GetSize () + wifiMonitorHeaderSize);
- Write32 (thisCaptureSize);
- }
- Write32 (packet->GetSize () + wifiMonitorHeaderSize); // actual packet size
-
- Write8(0); // radiotap version
- Write8(0); // padding
-
- if (isTx)
- {
- Write16(RADIOTAP_TX_LENGTH);
- Write32(RADIOTAP_TX_PRESENT);
- }
- else
- {
- Write16(RADIOTAP_RX_LENGTH);
- Write32(RADIOTAP_RX_PRESENT);
- }
-
- Write64(tsft);
-
- uint8_t flags = RADIOTAP_FLAG_NONE;
- if (isShortPreamble)
- {
- flags |= RADIOTAP_FLAG_SHORTPRE;
- }
- Write8(flags);
-
-
- Write8(rate);
-
- Write16(channelFreqMhz);
-
- uint16_t channelFlags;
- if (channelFreqMhz < 2500)
- {
- // TODO: when 802.11g WifiModes will be implemented
- // we will need to check dinamically whether channelFlags
- // needs to be set to RADIOTAP_CHANNEL_CCK,
- // RADIOTAP_CHANNEL_DYN or RADIOTAP_CHANNEL_OFDM.
- channelFlags = RADIOTAP_CHANNEL_2GHZ | RADIOTAP_CHANNEL_CCK;
- }
- else
- {
- // TODO: we should handle correctly the case of half rate
- // (10 MHz channel) and quarter rate (5 Mhz channel).
- channelFlags = RADIOTAP_CHANNEL_5GHZ | RADIOTAP_CHANNEL_OFDM;
- }
- Write16(channelFlags);
-
- if (!isTx)
- {
-
- Write8 (RoundToInt8 (signalDbm));
- Write8 (RoundToInt8 (noiseDbm));
- }
-
- } // PCAP_80211_RADIOTAP
-
-
- else
- {
- NS_LOG_ERROR("unknown PCAP mode");
- return;
- }
-
- // finally, write rest of packet
- if (m_captureSize == 0)
- {
- packet->CopyData (m_writer, packet->GetSize ());
- }
- else
- {
- packet->CopyData (m_writer, m_captureSize - wifiMonitorHeaderSize);
- }
-
-}
-
-
-void
-PcapWriter::SetCaptureSize (uint32_t size)
-{
- m_captureSize = size;
-}
-
-int8_t
-PcapWriter::RoundToInt8 (double value)
-{
- if (value < -128)
- {
- return -128;
- }
- if (value > 127)
- {
- return 127;
- }
- return ((int8_t) round(value));
-}
-
-
-
-
-
-
-void
-PcapWriter::WriteData (uint8_t const*buffer, uint32_t size)
-{
- NS_LOG_FUNCTION(this << size);
- m_writer->write ((char const *)buffer, size);
-}
-
-
-void
-PcapWriter::Write64 (uint64_t data)
-{
- uint8_t buffer[8];
- buffer[0] = (data >> 0) & 0xff;
- buffer[1] = (data >> 8) & 0xff;
- buffer[2] = (data >> 16) & 0xff;
- buffer[3] = (data >> 24) & 0xff;
- buffer[4] = (data >> 32) & 0xff;
- buffer[5] = (data >> 40) & 0xff;
- buffer[6] = (data >> 48) & 0xff;
- buffer[7] = (data >> 56) & 0xff;
- WriteData (buffer, 8);
-}
-
-void
-PcapWriter::Write32 (uint32_t data)
-{
- uint8_t buffer[4];
- buffer[0] = (data >> 0) & 0xff;
- buffer[1] = (data >> 8) & 0xff;
- buffer[2] = (data >> 16) & 0xff;
- buffer[3] = (data >> 24) & 0xff;
- WriteData (buffer, 4);
-}
-
-void
-PcapWriter::Write16 (uint16_t data)
-{
- uint8_t buffer[2];
- buffer[0] = (data >> 0) & 0xff;
- buffer[1] = (data >> 8) & 0xff;
- WriteData (buffer, 2);
-}
-
-void
-PcapWriter::Write8 (uint8_t data)
-{
- WriteData (&data, 1);
-}
-
-
-
-} // namespace ns3
--- a/src/common/pcap-writer.h Mon Feb 08 23:32:23 2010 -0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,159 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2005,2006 INRIA
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
- */
-
-#ifndef PCAP_WRITER_H
-#define PCAP_WRITER_H
-
-#include <stdint.h>
-#include "ns3/object.h"
-
-namespace ns3 {
-
-class Packet;
-
-/**
- * \ingroup common
- *
- * \brief Pcap output for Packet logger
- *
- * Log Packets to a file in pcap format which can be
- * read by pcap readers.
- */
-class PcapWriter : public Object
-{
-public:
- static TypeId GetTypeId (void);
- PcapWriter ();
- ~PcapWriter ();
-
- /**
- * \param name the name of the file to store packet log into.
- * This method creates the file if it does not exist. If it
- * exists, the file is emptied.
- */
- void Open (std::string const &name);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be Packets with
- * Ethernet/LLC/SNAP encapsulation. This method should
- * be invoked before ns3::PcapWriter::writePacket and after
- * ns3::PcapWriter::open.
- */
- void WriteEthernetHeader (void);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be IPv4 Packets. This
- * method should be invoked before ns3::PcapWriter::WritePacket
- * and after ns3::PcapWriter::Open.
- */
- void WriteIpHeader (void);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be 802.11 Packets. This
- * method should be invoked before ns3::PcapWriter::WritePacket
- * and after ns3::PcapWriter::Open.
- */
- void WriteWifiHeader (void);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be 802.11 Packets preceded by a
- * radiotap header providing PHY layer info. This method should be
- * invoked before ns3::PcapWriter::WritePacket and after
- * ns3::PcapWriter::Open.
- */
- void WriteWifiRadiotapHeader (void);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be 802.11 Packets preceded by a
- * prism header providing PHY layer info. This method should be
- * invoked before ns3::PcapWriter::WritePacket and after
- * ns3::PcapWriter::Open.
- */
- void WriteWifiPrismHeader (void);
-
- /**
- * Write a pcap header in the output file which specifies
- * that the content of the file will be ppp Packets. This
- * method should be invoked before ns3::PcapWriter::WritePacket
- * and after ns3::PcapWriter::Open.
- */
- void WritePppHeader (void);
-
- /**
- * \param packet packet to write to output file
- */
- void WritePacket (Ptr<const Packet> packet);
-
- /**
- * Write a Packet, possibly adding wifi PHY layer information to it
- *
- * @param packet the packet being received
- * @param channelFreqMhz the frequency in MHz at which the packet is
- * received. Note that in real devices this is normally the
- * frequency to which the receiver is tuned, and this can be
- * different than the frequency at which the packet was originally
- * transmitted. This is because it is possible to have the receiver
- * tuned on a given channel and still to be able to receive packets
- * on a nearby channel.
- * @param channelNumber the channel number, as defined by the
- * IEEE 802.11 standard.
- * @param rate the PHY data rate in units of 500kbps (i.e., the same
- * units used both for the radiotap and for the prism header)
- * @param isShortPreamble true if short preamble is used, false otherwise
- * @param isTx true if packet is being transmitted, false when
- * packet is being received
- * @param signalDbm signal power in dBm
- * @param noiseDbm noise power in dBm
- */
- void WriteWifiMonitorPacket(Ptr<const Packet> packet, uint16_t channelFreqMhz, uint16_t channelNumber,
- uint32_t rate, bool isShortPreamble, bool isTx,
- double signalDbm, double noiseDbm);
-
- /**
- * Set the maximum number of bytes to be captured for each packet.
- *
- * @param size the maximum number of bytes to be captured. If zero
- * (default), the whole packet will be captured.
- */
- void SetCaptureSize (uint32_t size);
-
-
-private:
- void WriteData (uint8_t const*buffer, uint32_t size);
- void Write64 (uint64_t data);
- void Write32 (uint32_t data);
- void Write16 (uint16_t data);
- void Write8 (uint8_t data);
- void WriteHeader (uint32_t network);
- int8_t RoundToInt8 (double value);
- std::ofstream *m_writer;
- uint32_t m_pcapMode;
- uint32_t m_captureSize;
-
-};
-
-} // namespace ns3
-
-#endif /* PCAP_WRITER_H */
--- a/src/common/wscript Mon Feb 08 23:32:23 2010 -0800
+++ b/src/common/wscript Fri Feb 12 16:20:59 2010 -0800
@@ -10,7 +10,6 @@
'chunk.cc',
'header.cc',
'trailer.cc',
- 'pcap-writer.cc',
'data-rate.cc',
'error-model.cc',
'tag.cc',
@@ -18,7 +17,6 @@
'tag-buffer.cc',
'packet-tag-list.cc',
'nix-vector.cc',
- 'ascii-writer.cc',
'pcap-file.cc',
'pcap-file-test-suite.cc',
'pcap-file-object.cc',
@@ -38,7 +36,6 @@
'trailer.h',
'packet.h',
'packet-metadata.h',
- 'pcap-writer.h',
'data-rate.h',
'error-model.h',
'tag.h',
@@ -46,7 +43,6 @@
'tag-buffer.h',
'packet-tag-list.h',
'nix-vector.h',
- 'ascii-writer.h',
'sgi-hashmap.h',
'pcap-file.h',
'pcap-file-object.h',
--- a/src/devices/wifi/block-ack-manager.h Mon Feb 08 23:32:23 2010 -0800
+++ b/src/devices/wifi/block-ack-manager.h Fri Feb 12 16:20:59 2010 -0800
@@ -58,6 +58,10 @@
*/
class BlockAckManager
{
+private:
+ BlockAckManager (const BlockAckManager&);
+ BlockAckManager& operator= (const BlockAckManager&);
+
public:
BlockAckManager ();
~BlockAckManager ();
--- a/src/internet-stack/ipv4-l3-protocol.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/src/internet-stack/ipv4-l3-protocol.cc Fri Feb 12 16:20:59 2010 -0800
@@ -483,6 +483,7 @@
socket->ForwardUp (packet, ipHeader, device);
}
+ NS_ASSERT_MSG (m_routingProtocol != 0, "Need a routing protocol object to process packets");
m_routingProtocol->RouteInput (packet, ipHeader, device,
MakeCallback (&Ipv4L3Protocol::IpForward, this),
MakeCallback (&Ipv4L3Protocol::IpMulticastForward, this),
@@ -610,7 +611,15 @@
Socket::SocketErrno errno_;
Ptr<NetDevice> oif (0); // unused for now
ipHeader = BuildHeader (source, destination, protocol, packet->GetSize (), ttl, mayFragment);
- Ptr<Ipv4Route> newRoute = m_routingProtocol->RouteOutput (packet, ipHeader, oif, errno_);
+ Ptr<Ipv4Route> newRoute;
+ if (m_routingProtocol != 0)
+ {
+ newRoute = m_routingProtocol->RouteOutput (packet, ipHeader, oif, errno_);
+ }
+ else
+ {
+ NS_LOG_ERROR ("Ipv4L3Protocol::Send: m_routingProtocol == 0");
+ }
if (newRoute)
{
int32_t interface = GetInterfaceForDevice (newRoute->GetOutputDevice ());
--- a/src/internet-stack/tcp-l4-protocol.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/src/internet-stack/tcp-l4-protocol.cc Fri Feb 12 16:20:59 2010 -0800
@@ -584,7 +584,15 @@
Socket::SocketErrno errno_;
Ptr<Ipv4Route> route;
Ptr<NetDevice> oif (0); //specify non-zero if bound to a source address
- route = ipv4->GetRoutingProtocol ()->RouteOutput (packet, header, oif, errno_);
+ if (ipv4->GetRoutingProtocol () != 0)
+ {
+ route = ipv4->GetRoutingProtocol ()->RouteOutput (packet, header, oif, errno_);
+ }
+ else
+ {
+ NS_LOG_ERROR ("No IPV4 Routing Protocol");
+ route = 0;
+ }
ipv4->Send (packet, saddr, daddr, PROT_NUMBER, route);
}
}
@@ -623,7 +631,15 @@
header.SetProtocol (PROT_NUMBER);
Socket::SocketErrno errno_;
Ptr<Ipv4Route> route;
- route = ipv4->GetRoutingProtocol ()->RouteOutput (packet, header, oif, errno_);
+ if (ipv4->GetRoutingProtocol () != 0)
+ {
+ route = ipv4->GetRoutingProtocol ()->RouteOutput (packet, header, oif, errno_);
+ }
+ else
+ {
+ NS_LOG_ERROR ("No IPV4 Routing Protocol");
+ route = 0;
+ }
ipv4->Send (packet, saddr, daddr, PROT_NUMBER, route);
}
else
--- a/src/internet-stack/tcp-socket-impl.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/src/internet-stack/tcp-socket-impl.cc Fri Feb 12 16:20:59 2010 -0800
@@ -358,6 +358,7 @@
NS_LOG_FUNCTION (this << address);
Ptr<Ipv4> ipv4 = m_node->GetObject<Ipv4> ();
+ NS_ASSERT (ipv4 != 0);
if (m_endPoint == 0)
{
@@ -772,11 +773,17 @@
Ptr<Packet> p = Create<Packet> ();
TcpHeader header;
+ if (m_endPoint == 0)
+ {
+ NS_LOG_WARN ("Failed to send empty packet due to null endpoint");
+ return;
+ }
+
if (flags & TcpHeader::FIN)
{
flags |= TcpHeader::ACK;
}
-
+
header.SetFlags (flags);
header.SetSequenceNumber (m_nextTxSequence);
header.SetAckNumber (m_nextRxSequence);
@@ -811,9 +818,12 @@
SendEmptyPacket(TcpHeader::RST);
NotifyErrorClose();
CancelAllTimers();
- m_endPoint->SetDestroyCallback(MakeNullCallback<void>());
- m_tcp->DeAllocate (m_endPoint);
- m_endPoint = 0;
+ if (m_endPoint != 0)
+ {
+ m_endPoint->SetDestroyCallback(MakeNullCallback<void>());
+ m_tcp->DeAllocate (m_endPoint);
+ m_endPoint = 0;
+ }
}
@@ -1093,6 +1103,11 @@
{
return false; // No data exists
}
+ if (m_endPoint == 0)
+ {
+ NS_LOG_INFO ("TcpSocketImpl::SendPendingData: No endpoint; m_shutdownSend=" << m_shutdownSend);
+ return false; // Is this the right way to handle this condition?
+ }
uint32_t nPacketsSent = 0;
while (m_pendingData->SizeFromSeq (m_firstPendingSequence, m_nextTxSequence))
{
@@ -1142,7 +1157,7 @@
if (m_shutdownSend)
{
m_errno = ERROR_SHUTDOWN;
- return -1;
+ return false;
}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mobility/steady-state-random-waypoint-mobility-model.cc Fri Feb 12 16:20:59 2010 -0800
@@ -0,0 +1,371 @@
+/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
+/*
+ * Copyright (c) 2009 IITP RAS
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation;
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * Author: Denis Fakhriev <fakhriev@iitp.ru>
+ */
+#include <cmath>
+#include "ns3/simulator.h"
+#include "ns3/double.h"
+#include "steady-state-random-waypoint-mobility-model.h"
+#include "ns3/test.h"
+#include "ns3/node-container.h"
+#include "ns3/mobility-helper.h"
+#include "ns3/simulator.h"
+
+namespace ns3 {
+
+NS_OBJECT_ENSURE_REGISTERED (SteadyStateRandomWaypointMobilityModel);
+
+TypeId
+SteadyStateRandomWaypointMobilityModel::GetTypeId (void)
+{
+ static TypeId tid = TypeId ("ns3::SteadyStateRandomWaypointMobilityModel")
+ .SetParent<MobilityModel> ()
+ .SetGroupName ("Mobility")
+ .AddConstructor<SteadyStateRandomWaypointMobilityModel> ()
+ .AddAttribute ("MinSpeed",
+ "Minimum speed value, [m/s]",
+ DoubleValue (0.3),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_minSpeed),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MaxSpeed",
+ "Maximum speed value, [m/s]",
+ DoubleValue (0.7),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_maxSpeed),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MinPause",
+ "Minimum pause value, [s]",
+ DoubleValue (0.0),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_minPause),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MaxPause",
+ "Maximum pause value, [s]",
+ DoubleValue (0.0),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_maxPause),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MinX",
+ "Minimum X value of traveling region, [m]",
+ DoubleValue (1),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_minX),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MaxX",
+ "Maximum X value of traveling region, [m]",
+ DoubleValue (1),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_maxX),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MinY",
+ "Minimum Y value of traveling region, [m]",
+ DoubleValue (1),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_minY),
+ MakeDoubleChecker<double> ())
+ .AddAttribute ("MaxY",
+ "Maximum Y value of traveling region, [m]",
+ DoubleValue (1),
+ MakeDoubleAccessor (&SteadyStateRandomWaypointMobilityModel::m_maxY),
+ MakeDoubleChecker<double> ());
+
+ return tid;
+}
+
+SteadyStateRandomWaypointMobilityModel::SteadyStateRandomWaypointMobilityModel ():
+ alreadyStarted (false)
+{
+}
+
+void
+SteadyStateRandomWaypointMobilityModel::DoStart (void)
+{
+ SteadyStateStart ();
+ MobilityModel::DoStart ();
+}
+
+void
+SteadyStateRandomWaypointMobilityModel::SteadyStateStart (void)
+{
+ alreadyStarted = true;
+ NS_ASSERT (m_minSpeed >= 1e-6);
+ NS_ASSERT (m_minSpeed <= m_maxSpeed);
+ m_speed = UniformVariable (m_minSpeed, m_maxSpeed);
+ NS_ASSERT (m_minX < m_maxX);
+ NS_ASSERT (m_minY < m_maxY);
+ m_position = CreateObject<RandomRectanglePositionAllocator> ();
+ m_position->SetX (UniformVariable (m_minX, m_maxX));
+ m_position->SetY (UniformVariable (m_minY, m_maxY));
+ NS_ASSERT (m_minPause <= m_maxPause);
+ m_pause = UniformVariable (m_minPause, m_maxPause);
+
+ m_helper.Update ();
+ m_helper.Pause ();
+
+ // calculate the steady-state probability that a node is initially paused
+ double expectedPauseTime = (m_minPause + m_maxPause)/2;
+ double a = m_maxX - m_minX;
+ double b = m_maxY - m_minY;
+ double v0 = m_minSpeed;
+ double v1 = m_maxSpeed;
+ double log1 = b*b / a*std::log (std::sqrt ((a*a)/(b*b) + 1) + a/b);
+ double log2 = a*a / b*std::log (std::sqrt ((b*b)/(a*a) + 1) + b/a);
+ double expectedTravelTime = 1.0/6.0*(log1 + log2);
+ expectedTravelTime += 1.0/15.0*((a*a*a)/(b*b) + (b*b*b)/(a*a)) -
+ 1.0/15.0*std::sqrt(a*a + b*b)*((a*a)/(b*b) + (b*b)/(a*a) - 3);
+ if (v0 == v1)
+ {
+ expectedTravelTime /= v0;
+ }
+ else
+ {
+ expectedTravelTime *= std::log(v1/v0)/(v1 - v0);
+ }
+ double probabilityPaused = expectedPauseTime/(expectedPauseTime + expectedTravelTime);
+ NS_ASSERT (probabilityPaused >= 0 && probabilityPaused <= 1);
+
+ UniformVariable u_r;
+ double u = u_r.GetValue(0, 1);
+ if (u < probabilityPaused) // node initially paused
+ {
+ m_helper.SetPosition (m_position->GetNext ());
+ u = u_r.GetValue(0, 1);
+ Time pause;
+ if (m_minPause != m_maxPause)
+ {
+ if (u < (2*m_minPause/(m_minPause + m_maxPause)))
+ {
+ pause = Seconds (u*(m_minPause + m_maxPause)/2);
+ }
+ else
+ {
+ // there is an error in equation 20 in the Tech. Report MCS-03-04
+ // this error is corrected in the TMC 2004 paper and below
+ pause = Seconds (m_maxPause - sqrt ((1 - u)*(m_maxPause*m_maxPause - m_minPause*m_minPause)));
+ }
+ }
+ else // if pause is constant
+ {
+ pause = Seconds (u*expectedPauseTime);
+ }
+ NS_ASSERT (!m_event.IsRunning());
+ m_event = Simulator::Schedule (pause, &SteadyStateRandomWaypointMobilityModel::BeginWalk, this);
+ }
+ else // node initially moving
+ {
+ UniformVariable x1_r, y1_r, x2_r, y2_r;
+ double x1, x2, y1, y2;
+ double r = 0;
+ double u1 = 1;
+ while (u1 >= r)
+ {
+ x1 = x1_r.GetValue (0, a);
+ y1 = y1_r.GetValue (0, b);
+ x2 = x2_r.GetValue (0, a);
+ y2 = y2_r.GetValue (0, b);
+ u1 = u_r.GetValue (0, 1);
+ r = std::sqrt (((x2 - x1)*(x2 - x1) + (y2 - y1)*(y2 - y1))/(a*a + b*b));
+ NS_ASSERT (r <= 1);
+ }
+ double u2 = u_r.GetValue (0, 1);
+ m_helper.SetPosition (Vector (m_minX + u2*x1 + (1 - u2)*x2, m_minY + u2*y1 + (1 - u2)*y2, 0));
+ NS_ASSERT (!m_event.IsRunning());
+ m_event = Simulator::ScheduleNow (&SteadyStateRandomWaypointMobilityModel::SteadyStateBeginWalk, this,
+ Vector (m_minX + x2, m_minY + y2, 0));
+ }
+ NotifyCourseChange ();
+}
+
+void
+SteadyStateRandomWaypointMobilityModel::SteadyStateBeginWalk (const Vector &destination)
+{
+ m_helper.Update ();
+ Vector m_current = m_helper.GetCurrentPosition ();
+ NS_ASSERT (m_minX <= m_current.x && m_current.x <= m_maxX);
+ NS_ASSERT (m_minY <= m_current.y && m_current.y <= m_maxY);
+ NS_ASSERT (m_minX <= destination.x && destination.x <= m_maxX);
+ NS_ASSERT (m_minY <= destination.y && destination.y <= m_maxY);
+ UniformVariable u_r;
+ double u = u_r.GetValue (0, 1);
+ double speed = std::pow (m_maxSpeed, u)/std::pow (m_minSpeed, u - 1);
+ double dx = (destination.x - m_current.x);
+ double dy = (destination.y - m_current.y);
+ double dz = (destination.z - m_current.z);
+ double k = speed / std::sqrt (dx*dx + dy*dy + dz*dz);
+
+ m_helper.SetVelocity (Vector (k*dx, k*dy, k*dz));
+ m_helper.Unpause ();
+ Time travelDelay = Seconds (CalculateDistance (destination, m_current) / speed);
+ m_event = Simulator::Schedule (travelDelay,
+ &SteadyStateRandomWaypointMobilityModel::Start, this);
+ NotifyCourseChange ();
+}
+
+void
+SteadyStateRandomWaypointMobilityModel::BeginWalk (void)
+{
+ m_helper.Update ();
+ Vector m_current = m_helper.GetCurrentPosition ();
+ NS_ASSERT (m_minX <= m_current.x && m_current.x <= m_maxX);
+ NS_ASSERT (m_minY <= m_current.y && m_current.y <= m_maxY);
+ Vector destination = m_position->GetNext ();
+ double speed = m_speed.GetValue ();
+ double dx = (destination.x - m_current.x);
+ double dy = (destination.y - m_current.y);
+ double dz = (destination.z - m_current.z);
+ double k = speed / std::sqrt (dx*dx + dy*dy + dz*dz);
+
+ m_helper.SetVelocity (Vector (k*dx, k*dy, k*dz));
+ m_helper.Unpause ();
+ Time travelDelay = Seconds (CalculateDistance (destination, m_current) / speed);
+ m_event = Simulator::Schedule (travelDelay,
+ &SteadyStateRandomWaypointMobilityModel::Start, this);
+ NotifyCourseChange ();
+}
+
+void
+SteadyStateRandomWaypointMobilityModel::Start (void)
+{
+ m_helper.Update ();
+ m_helper.Pause ();
+ Time pause = Seconds (m_pause.GetValue ());
+ m_event = Simulator::Schedule (pause, &SteadyStateRandomWaypointMobilityModel::BeginWalk, this);
+ NotifyCourseChange ();
+}
+
+Vector
+SteadyStateRandomWaypointMobilityModel::DoGetPosition (void) const
+{
+ m_helper.Update ();
+ return m_helper.GetCurrentPosition ();
+}
+void
+SteadyStateRandomWaypointMobilityModel::DoSetPosition (const Vector &position)
+{
+ if (alreadyStarted)
+ {
+ m_helper.SetPosition (position);
+ Simulator::Remove (m_event);
+ m_event = Simulator::ScheduleNow (&SteadyStateRandomWaypointMobilityModel::Start, this);
+ }
+}
+Vector
+SteadyStateRandomWaypointMobilityModel::DoGetVelocity (void) const
+{
+ return m_helper.GetVelocity ();
+}
+
+class SteadyStateRandomWaypointTest : public TestCase
+{
+public:
+ SteadyStateRandomWaypointTest ()
+ : TestCase ("Check steady-state rwp mobility model velocity and position distributions") {}
+ virtual ~SteadyStateRandomWaypointTest () {}
+
+private:
+ NodeContainer nodes;
+ double NodeCount;
+private:
+ virtual bool DoRun (void);
+ void DistribCompare ();
+};
+
+bool
+SteadyStateRandomWaypointTest::DoRun (void)
+{
+ SeedManager::SetSeed(123);
+
+ // Total simulation time, seconds
+ double totalTime = 1000;
+ // Create nodes
+ NodeCount = 10000;
+ nodes.Create ((uint32_t) NodeCount);
+ // Installmobility
+ MobilityHelper mobility;
+ mobility.SetMobilityModel ("ns3::SteadyStateRandomWaypointMobilityModel",
+ "MinSpeed", DoubleValue (0.01),
+ "MaxSpeed", DoubleValue (20.0),
+ "MinPause", DoubleValue (0.0),
+ "MaxPause", DoubleValue (0.0),
+ "MinX", DoubleValue (0),
+ "MaxX", DoubleValue (1000),
+ "MinY", DoubleValue (0),
+ "MaxY", DoubleValue (600));
+ mobility.Install (nodes);
+
+ Simulator::Schedule (Seconds (0.001), & SteadyStateRandomWaypointTest::DistribCompare, this);
+ Simulator::Schedule (Seconds (totalTime), & SteadyStateRandomWaypointTest::DistribCompare, this);
+ Simulator::Stop (Seconds (totalTime));
+ Simulator::Run ();
+ Simulator::Destroy ();
+
+ return GetErrorStatus ();
+}
+
+void
+SteadyStateRandomWaypointTest::DistribCompare ()
+{
+ Ptr<MobilityModel> model;
+ double velocity;
+ double sum_x = 0;
+ double sum_y = 0;
+ double sum_v = 0;
+ NodeContainer::Iterator i;
+ for (i = nodes.Begin (); i != nodes.End (); ++i)
+ {
+ model = (*i)->GetObject<MobilityModel> ();
+ velocity = sqrt (pow (model->GetVelocity().x, 2) + pow (model->GetVelocity().y, 2));
+ sum_x += model->GetPosition().x;
+ sum_y += model->GetPosition().y;
+ sum_v += velocity;
+ }
+ double mean_x = sum_x / NodeCount;
+ double mean_y = sum_y / NodeCount;
+ double mean_v = sum_v / NodeCount;
+
+ NS_TEST_EXPECT_MSG_EQ_TOL (500, mean_x, 25.0, "Got unexpected x-position mean value");
+ NS_TEST_EXPECT_MSG_EQ_TOL (300, mean_y, 15.0, "Got unexpected y-position mean value");
+ NS_TEST_EXPECT_MSG_EQ_TOL (2.6, mean_v, 0.13, "Got unexpected velocity mean value");
+
+ sum_x = 0;
+ sum_y = 0;
+ sum_v = 0;
+ double tmp;
+ for (i = nodes.Begin (); i != nodes.End (); ++i)
+ {
+ model = (*i)->GetObject<MobilityModel> ();
+ velocity = sqrt (pow (model->GetVelocity().x, 2) + pow (model->GetVelocity().y, 2));
+ tmp = model->GetPosition().x - mean_x;
+ sum_x += tmp * tmp;
+ tmp = model->GetPosition().y - mean_y;
+ sum_y += tmp * tmp;
+ tmp = velocity - mean_v;
+ sum_v += tmp * tmp;
+ }
+ double dev_x = std::sqrt (sum_x / (NodeCount - 1));
+ double dev_y = std::sqrt (sum_y / (NodeCount - 1));
+ double dev_v = std::sqrt (sum_v / (NodeCount - 1));
+
+ NS_TEST_EXPECT_MSG_EQ_TOL (230, dev_x, 10.0, "Got unexpected x-position standard deviation");
+ NS_TEST_EXPECT_MSG_EQ_TOL (140, dev_y, 7.0, "Got unexpected y-position standard deviation");
+ NS_TEST_EXPECT_MSG_EQ_TOL (4.4, dev_v, 0.22, "Got unexpected velocity standard deviation");
+}
+
+struct SteadyStateRandomWaypointTestSuite : public TestSuite
+{
+ SteadyStateRandomWaypointTestSuite () : TestSuite ("steady-state-rwp-mobility-model", UNIT)
+ {
+ AddTestCase (new SteadyStateRandomWaypointTest);
+ }
+} g_steadyStateRandomWaypointTestSuite;
+
+} // namespace ns3
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mobility/steady-state-random-waypoint-mobility-model.h Fri Feb 12 16:20:59 2010 -0800
@@ -0,0 +1,85 @@
+/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
+/*
+ * Copyright (c) 2009 IITP RAS
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation;
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * Author: Denis Fakhriev <fakhriev@iitp.ru>
+ */
+#ifndef STEADY_STATE_RANDOM_WAYPOINT_MOBILITY_MODEL_H
+#define STEADY_STATE_RANDOM_WAYPOINT_MOBILITY_MODEL_H
+
+#include "constant-velocity-helper.h"
+#include "mobility-model.h"
+#include "position-allocator.h"
+#include "ns3/ptr.h"
+#include "ns3/random-variable.h"
+
+namespace ns3 {
+
+/**
+ * \brief a steady-state random waypoint mobility model
+ *
+ * This model based on random waypoint mobility (RWM) model for case when
+ * speed, pause and position are uniformly distributed random variables.
+ * The difference is that the initial values of this parameters are not
+ * from uniform distribution but from stationary distribution of RWM model.
+ * The implementation of this model is 2d-specific and with nonzero nodes speeds.
+ *
+ * Based on NS-2 implementation by Toilers Research Group -- Colorado
+ * School of Mines (http://toilers.mines.edu).
+ * The papers related to this code are:
+ * W. Navidi and T. Camp, Stationary Distributions for the Random
+ * Waypoint Mobility Model, IEEE Transactions on Mobile Computing,
+ * vol. 3, no. 1, pp. 99-108, January-March 2004.
+ * W. Navidi, T. Camp, and N. Bauer, Improving the Accuracy of
+ * Random Waypoint Simulations Through Steady-State Initialization,
+ * Proceedings of the 15th International Conference on Modeling and
+ * Simulation (MS '04), pp. 319-326, March 2004.
+ */
+class SteadyStateRandomWaypointMobilityModel : public MobilityModel
+{
+public:
+ static TypeId GetTypeId (void);
+ SteadyStateRandomWaypointMobilityModel ();
+protected:
+ virtual void DoStart (void);
+private:
+ void SteadyStateStart (void);
+ void SteadyStateBeginWalk (const Vector &destination);
+ void Start (void);
+ void BeginWalk (void);
+ virtual Vector DoGetPosition (void) const;
+ virtual void DoSetPosition (const Vector &position);
+ virtual Vector DoGetVelocity (void) const;
+
+ ConstantVelocityHelper m_helper;
+ double m_maxSpeed;
+ double m_minSpeed;
+ UniformVariable m_speed;
+ double m_minX;
+ double m_maxX;
+ double m_minY;
+ double m_maxY;
+ Ptr<RandomRectanglePositionAllocator> m_position;
+ double m_minPause;
+ double m_maxPause;
+ UniformVariable m_pause;
+ EventId m_event;
+ bool alreadyStarted;
+};
+
+} // namespace ns3
+
+#endif /* STEADY_STATE_RANDOM_WAYPOINT_MOBILITY_MODEL_H */
--- a/src/mobility/wscript Mon Feb 08 23:32:23 2010 -0800
+++ b/src/mobility/wscript Fri Feb 12 16:20:59 2010 -0800
@@ -11,6 +11,7 @@
'constant-velocity-helper.cc',
'constant-velocity-mobility-model.cc',
'random-waypoint-mobility-model.cc',
+ 'steady-state-random-waypoint-mobility-model.cc',
'random-walk-2d-mobility-model.cc',
'random-direction-2d-mobility-model.cc',
'constant-acceleration-mobility-model.cc',
@@ -29,6 +30,7 @@
'constant-velocity-helper.h',
'constant-velocity-mobility-model.h',
'random-waypoint-mobility-model.h',
+ 'steady-state-random-waypoint-mobility-model.h',
'random-walk-2d-mobility-model.h',
'random-direction-2d-mobility-model.h',
'constant-acceleration-mobility-model.h',
--- a/src/routing/olsr/olsr-routing-protocol.cc Mon Feb 08 23:32:23 2010 -0800
+++ b/src/routing/olsr/olsr-routing-protocol.cc Fri Feb 12 16:20:59 2010 -0800
@@ -2815,7 +2815,7 @@
std::vector<RoutingTableEntry>
-RoutingProtocol::GetEntries () const
+RoutingProtocol::GetRoutingTableEntries () const
{
std::vector<RoutingTableEntry> retval;
for (std::map<Ipv4Address, RoutingTableEntry>::const_iterator iter = m_table.begin ();
--- a/src/routing/olsr/olsr-routing-protocol.h Mon Feb 08 23:32:23 2010 -0800
+++ b/src/routing/olsr/olsr-routing-protocol.h Fri Feb 12 16:20:59 2010 -0800
@@ -100,6 +100,11 @@
///
void Dump (void);
+ /**
+ * Return the list of routing table entries discovered by OLSR
+ **/
+ std::vector<RoutingTableEntry> GetRoutingTableEntries () const;
+
protected:
virtual void DoStart (void);
private:
@@ -133,7 +138,6 @@
void Clear ();
uint32_t GetSize () const { return m_table.size (); }
- std::vector<RoutingTableEntry> GetEntries () const;
void RemoveEntry (const Ipv4Address &dest);
void AddEntry (const Ipv4Address &dest,
const Ipv4Address &next,
--- a/src/test/perf/perf-pcap.cc Mon Feb 08 23:32:23 2010 -0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#include <time.h>
-#include <sys/time.h>
-#include <iostream>
-#include <fstream>
-#include <limits>
-
-#include "ns3/simulator-module.h"
-#include "ns3/node-module.h"
-#include "ns3/core-module.h"
-#include "ns3/helper-module.h"
-#include "ns3/pcap-writer.h"
-
-using namespace ns3;
-
-static const uint64_t US_PER_NS = (uint64_t)1000;
-static const uint64_t US_PER_SEC = (uint64_t)1000000;
-static const uint64_t NS_PER_SEC = (uint64_t)1000000000;
-
-uint64_t
-GetRealtimeInNs (void)
-{
- struct timeval tv;
- gettimeofday (&tv, NULL);
-
- uint64_t nsResult = tv.tv_sec * NS_PER_SEC + tv.tv_usec * US_PER_NS;
- return nsResult;
-}
-
-bool g_passheader = true;
-bool g_addheader = true;
-
-RadiotapHeader g_header;
-
-Time g_t(0.);
-
-void
-PerfPcapNew (Ptr<PcapFileObject> file, Ptr<Packet> p, uint32_t n)
-{
- if (g_passheader)
- {
- for (uint32_t i = 0; i < n; ++i)
- {
- if (g_passheader)
- {
- file->Write (g_t, g_header, p);
- }
- }
- }
- else
- {
- for (uint32_t i = 0; i < n; ++i)
- {
- if (g_addheader)
- {
- Ptr<Packet> pc = p->Copy ();
- pc->AddHeader (g_header);
- file->Write (g_t, pc);
- }
- else
- {
- file->Write (g_t, p);
- }
- }
- }
-}
-
-void
-PerfPcapOld (PcapWriter &pcapWriter, Ptr<Packet> p, uint32_t n)
-{
-
- for (uint32_t i = 0; i < n; ++i)
- {
- if (g_addheader)
- {
- pcapWriter.WriteWifiMonitorPacket (p, 0, 0, 0, true, false, 0., 0.);
- }
- else
- {
- pcapWriter.WritePacket (p);
- }
- }
-}
-
-int
-main (int argc, char *argv[])
-{
- uint32_t n = 100000;
- uint32_t iter = 50;
- bool oldstyle = false;
-
- CommandLine cmd;
- cmd.AddValue ("addheader", "Add a header to the traces to trigger a deep copy", g_addheader);
- cmd.AddValue ("passheader", "Pass header as reference instead of adding it", g_passheader);
- cmd.AddValue ("n", "How many packets to write (defaults to 100000", n);
- cmd.AddValue ("iter", "How many times to run the test looking for a min (defaults to 50)", iter);
- cmd.AddValue ("oldstyle", "run the old style pcap writer stuff if true", oldstyle);
- cmd.Parse (argc, argv);
-
- uint64_t result = std::numeric_limits<uint64_t>::max ();
-
- if (oldstyle)
- {
- Ptr<Packet> p = Create<Packet> (1024);
-
- //
- // This will probably run on a machine doing other things. Run it some
- // relatively large number of times and try to find a minimum, which
- // will hopefully represent a time when it runs free of interference.
- //
- for (uint32_t i = 0; i < iter; ++i)
- {
- PcapWriter pcapWriter;
- pcapWriter.Open ("perf-pcap.pcap");
- pcapWriter.WriteWifiRadiotapHeader ();
-
- uint64_t start = GetRealtimeInNs ();
- PerfPcapOld (pcapWriter, p, n);
- uint64_t et = GetRealtimeInNs () - start;
- result = std::min (result, et);
- std::cout << "."; std::cout.flush ();
- }
- std::cout << std::endl;
- }
- else
- {
- g_header.SetTsft (0);
- g_header.SetFrameFlags (RadiotapHeader::FRAME_FLAG_SHORT_PREAMBLE);
- g_header.SetRate (0);
- g_header.SetChannelFrequencyAndFlags (0, 0);
-
- //
- // This will probably run on a machine doing other things. Run it some
- // relatively large number of times and try to find a minimum, which
- // will hopefully represent a time when it runs free of interference.
- //
- for (uint32_t i = 0; i < iter; ++i)
- {
- PcapHelper pcapHelper;
- Ptr<PcapFileObject> file = pcapHelper.CreateFile ("perf-pcap.pcap", "w", PcapHelper::DLT_IEEE802_11_RADIO);
- Ptr<Packet> p = Create<Packet> (1024);
-
- uint64_t start = GetRealtimeInNs ();
- PerfPcapNew (file, p, n);
- uint64_t et = GetRealtimeInNs () - start;
- result = std::min (result, et);
- std::cout << "."; std::cout.flush ();
- }
- std::cout << std::endl;
- }
- std::cout << argv[0] << ": " << result << "ns" << std::endl;
-}
--- a/src/test/perf/wscript Mon Feb 08 23:32:23 2010 -0800
+++ b/src/test/perf/wscript Fri Feb 12 16:20:59 2010 -0800
@@ -8,9 +8,6 @@
headers = bld.new_task_gen('ns3header')
headers.module = 'perf'
- obj = bld.create_ns3_program('perf-pcap', ['core', 'simulator', 'internet-stack'])
- obj.source = 'perf-pcap.cc'
-
obj = bld.create_ns3_program('perf-io', ['core'])
obj.source = 'perf-io.cc'