From 0e5a67fd200cf1128a530808ee68d62bc18a3b50 Mon Sep 17 00:00:00 2001 From: Steven Smith Date: Thu, 15 Aug 2013 14:45:42 -0400 Subject: [PATCH] Bug 1753 Halting Issue with DistributedSimulatorImpl --- src/mpi/bindings/modulegen__gcc_ILP32.py | 2786 ------------------- src/mpi/bindings/modulegen__gcc_LP64.py | 232 +- src/mpi/model/distributed-simulator-impl.cc | 117 +- src/mpi/model/distributed-simulator-impl.h | 16 +- 4 files changed, 340 insertions(+), 2811 deletions(-) diff --git a/src/mpi/bindings/modulegen__gcc_ILP32.py b/src/mpi/bindings/modulegen__gcc_ILP32.py index c26676200..e69de29bb 100644 --- a/src/mpi/bindings/modulegen__gcc_ILP32.py +++ b/src/mpi/bindings/modulegen__gcc_ILP32.py @@ -1,2786 +0,0 @@ -from pybindgen import Module, FileCodeSink, param, retval, cppclass, typehandlers - - -import pybindgen.settings -import warnings - -class ErrorHandler(pybindgen.settings.ErrorHandler): - def handle_error(self, wrapper, exception, traceback_): - warnings.warn("exception %r in wrapper %s" % (exception, wrapper)) - return True -pybindgen.settings.error_handler = ErrorHandler() - - -import sys - -def module_init(): - root_module = Module('ns.mpi', cpp_namespace='::ns3') - return root_module - -def register_types(module): - root_module = module.get_root() - - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList [class] - module.add_class('AttributeConstructionList', import_from_module='ns.core') - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item [struct] - module.add_class('Item', import_from_module='ns.core', outer_class=root_module['ns3::AttributeConstructionList']) - ## buffer.h (module 'network'): ns3::Buffer [class] - module.add_class('Buffer', import_from_module='ns.network') - ## buffer.h (module 'network'): ns3::Buffer::Iterator [class] - module.add_class('Iterator', import_from_module='ns.network', outer_class=root_module['ns3::Buffer']) - ## packet.h (module 'network'): ns3::ByteTagIterator [class] - module.add_class('ByteTagIterator', import_from_module='ns.network') - ## packet.h (module 'network'): ns3::ByteTagIterator::Item [class] - module.add_class('Item', import_from_module='ns.network', outer_class=root_module['ns3::ByteTagIterator']) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList [class] - module.add_class('ByteTagList', import_from_module='ns.network') - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator [class] - module.add_class('Iterator', import_from_module='ns.network', outer_class=root_module['ns3::ByteTagList']) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item [struct] - module.add_class('Item', import_from_module='ns.network', outer_class=root_module['ns3::ByteTagList::Iterator']) - ## callback.h (module 'core'): ns3::CallbackBase [class] - module.add_class('CallbackBase', import_from_module='ns.core') - ## event-id.h (module 'core'): ns3::EventId [class] - module.add_class('EventId', import_from_module='ns.core') - ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage [class] - module.add_class('LbtsMessage') - ## mpi-interface.h (module 'mpi'): ns3::MpiInterface [class] - module.add_class('MpiInterface') - ## object-base.h (module 'core'): ns3::ObjectBase [class] - module.add_class('ObjectBase', allow_subclassing=True, import_from_module='ns.core') - ## object.h (module 'core'): ns3::ObjectDeleter [struct] - module.add_class('ObjectDeleter', import_from_module='ns.core') - ## object-factory.h (module 'core'): ns3::ObjectFactory [class] - module.add_class('ObjectFactory', import_from_module='ns.core') - ## packet-metadata.h (module 'network'): ns3::PacketMetadata [class] - module.add_class('PacketMetadata', import_from_module='ns.network') - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item [struct] - module.add_class('Item', import_from_module='ns.network', outer_class=root_module['ns3::PacketMetadata']) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item [enumeration] - module.add_enum('', ['PAYLOAD', 'HEADER', 'TRAILER'], outer_class=root_module['ns3::PacketMetadata::Item'], import_from_module='ns.network') - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::ItemIterator [class] - module.add_class('ItemIterator', import_from_module='ns.network', outer_class=root_module['ns3::PacketMetadata']) - ## packet.h (module 'network'): ns3::PacketTagIterator [class] - module.add_class('PacketTagIterator', import_from_module='ns.network') - ## packet.h (module 'network'): ns3::PacketTagIterator::Item [class] - module.add_class('Item', import_from_module='ns.network', outer_class=root_module['ns3::PacketTagIterator']) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList [class] - module.add_class('PacketTagList', import_from_module='ns.network') - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData [struct] - module.add_class('TagData', import_from_module='ns.network', outer_class=root_module['ns3::PacketTagList']) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::TagData_e [enumeration] - module.add_enum('TagData_e', ['MAX_SIZE'], outer_class=root_module['ns3::PacketTagList::TagData'], import_from_module='ns.network') - ## mpi-interface.h (module 'mpi'): ns3::SentBuffer [class] - module.add_class('SentBuffer') - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::Object', 'ns3::ObjectBase', 'ns3::ObjectDeleter'], parent=root_module['ns3::ObjectBase'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## tag.h (module 'network'): ns3::Tag [class] - module.add_class('Tag', import_from_module='ns.network', parent=root_module['ns3::ObjectBase']) - ## tag-buffer.h (module 'network'): ns3::TagBuffer [class] - module.add_class('TagBuffer', import_from_module='ns.network') - ## type-id.h (module 'core'): ns3::TypeId [class] - module.add_class('TypeId', import_from_module='ns.core') - ## type-id.h (module 'core'): ns3::TypeId::AttributeFlag [enumeration] - module.add_enum('AttributeFlag', ['ATTR_GET', 'ATTR_SET', 'ATTR_CONSTRUCT', 'ATTR_SGC'], outer_class=root_module['ns3::TypeId'], import_from_module='ns.core') - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation [struct] - module.add_class('AttributeInformation', import_from_module='ns.core', outer_class=root_module['ns3::TypeId']) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation [struct] - module.add_class('TraceSourceInformation', import_from_module='ns.core', outer_class=root_module['ns3::TypeId']) - ## empty.h (module 'core'): ns3::empty [class] - module.add_class('empty', import_from_module='ns.core') - ## int64x64-double.h (module 'core'): ns3::int64x64_t [class] - module.add_class('int64x64_t', import_from_module='ns.core') - ## chunk.h (module 'network'): ns3::Chunk [class] - module.add_class('Chunk', import_from_module='ns.network', parent=root_module['ns3::ObjectBase']) - ## header.h (module 'network'): ns3::Header [class] - module.add_class('Header', import_from_module='ns.network', parent=root_module['ns3::Chunk']) - ## object.h (module 'core'): ns3::Object [class] - module.add_class('Object', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::Object, ns3::ObjectBase, ns3::ObjectDeleter >']) - ## object.h (module 'core'): ns3::Object::AggregateIterator [class] - module.add_class('AggregateIterator', import_from_module='ns.core', outer_class=root_module['ns3::Object']) - ## scheduler.h (module 'core'): ns3::Scheduler [class] - module.add_class('Scheduler', import_from_module='ns.core', parent=root_module['ns3::Object']) - ## scheduler.h (module 'core'): ns3::Scheduler::Event [struct] - module.add_class('Event', import_from_module='ns.core', outer_class=root_module['ns3::Scheduler']) - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey [struct] - module.add_class('EventKey', import_from_module='ns.core', outer_class=root_module['ns3::Scheduler']) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::AttributeAccessor', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::AttributeChecker', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::AttributeValue', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::CallbackImplBase', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::EventImpl', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::NixVector', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::Packet', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] - module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::TraceSourceAccessor', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) - ## simulator-impl.h (module 'core'): ns3::SimulatorImpl [class] - module.add_class('SimulatorImpl', import_from_module='ns.core', parent=root_module['ns3::Object']) - ## nstime.h (module 'core'): ns3::Time [class] - module.add_class('Time', import_from_module='ns.core') - ## nstime.h (module 'core'): ns3::Time::Unit [enumeration] - module.add_enum('Unit', ['S', 'MS', 'US', 'NS', 'PS', 'FS', 'LAST'], outer_class=root_module['ns3::Time'], import_from_module='ns.core') - ## nstime.h (module 'core'): ns3::Time [class] - root_module['ns3::Time'].implicitly_converts_to(root_module['ns3::int64x64_t']) - ## trace-source-accessor.h (module 'core'): ns3::TraceSourceAccessor [class] - module.add_class('TraceSourceAccessor', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::TraceSourceAccessor, ns3::empty, ns3::DefaultDeleter >']) - ## trailer.h (module 'network'): ns3::Trailer [class] - module.add_class('Trailer', import_from_module='ns.network', parent=root_module['ns3::Chunk']) - ## attribute.h (module 'core'): ns3::AttributeAccessor [class] - module.add_class('AttributeAccessor', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::AttributeAccessor, ns3::empty, ns3::DefaultDeleter >']) - ## attribute.h (module 'core'): ns3::AttributeChecker [class] - module.add_class('AttributeChecker', allow_subclassing=False, automatic_type_narrowing=True, import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::AttributeChecker, ns3::empty, ns3::DefaultDeleter >']) - ## attribute.h (module 'core'): ns3::AttributeValue [class] - module.add_class('AttributeValue', allow_subclassing=False, automatic_type_narrowing=True, import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::AttributeValue, ns3::empty, ns3::DefaultDeleter >']) - ## callback.h (module 'core'): ns3::CallbackChecker [class] - module.add_class('CallbackChecker', import_from_module='ns.core', parent=root_module['ns3::AttributeChecker']) - ## callback.h (module 'core'): ns3::CallbackImplBase [class] - module.add_class('CallbackImplBase', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::CallbackImplBase, ns3::empty, ns3::DefaultDeleter >']) - ## callback.h (module 'core'): ns3::CallbackValue [class] - module.add_class('CallbackValue', import_from_module='ns.core', parent=root_module['ns3::AttributeValue']) - ## distributed-simulator-impl.h (module 'mpi'): ns3::DistributedSimulatorImpl [class] - module.add_class('DistributedSimulatorImpl', parent=root_module['ns3::SimulatorImpl']) - ## attribute.h (module 'core'): ns3::EmptyAttributeValue [class] - module.add_class('EmptyAttributeValue', import_from_module='ns.core', parent=root_module['ns3::AttributeValue']) - ## event-impl.h (module 'core'): ns3::EventImpl [class] - module.add_class('EventImpl', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::EventImpl, ns3::empty, ns3::DefaultDeleter >']) - ## mpi-receiver.h (module 'mpi'): ns3::MpiReceiver [class] - module.add_class('MpiReceiver', parent=root_module['ns3::Object']) - ## nix-vector.h (module 'network'): ns3::NixVector [class] - module.add_class('NixVector', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::NixVector, ns3::empty, ns3::DefaultDeleter >']) - ## object-factory.h (module 'core'): ns3::ObjectFactoryChecker [class] - module.add_class('ObjectFactoryChecker', import_from_module='ns.core', parent=root_module['ns3::AttributeChecker']) - ## object-factory.h (module 'core'): ns3::ObjectFactoryValue [class] - module.add_class('ObjectFactoryValue', import_from_module='ns.core', parent=root_module['ns3::AttributeValue']) - ## packet.h (module 'network'): ns3::Packet [class] - module.add_class('Packet', import_from_module='ns.network', parent=root_module['ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter >']) - ## nstime.h (module 'core'): ns3::TimeValue [class] - module.add_class('TimeValue', import_from_module='ns.core', parent=root_module['ns3::AttributeValue']) - ## type-id.h (module 'core'): ns3::TypeIdChecker [class] - module.add_class('TypeIdChecker', import_from_module='ns.core', parent=root_module['ns3::AttributeChecker']) - ## type-id.h (module 'core'): ns3::TypeIdValue [class] - module.add_class('TypeIdValue', import_from_module='ns.core', parent=root_module['ns3::AttributeValue']) - - ## Register a nested module for the namespace FatalImpl - - nested_module = module.add_cpp_namespace('FatalImpl') - register_types_ns3_FatalImpl(nested_module) - - -def register_types_ns3_FatalImpl(module): - root_module = module.get_root() - - -def register_methods(root_module): - register_Ns3AttributeConstructionList_methods(root_module, root_module['ns3::AttributeConstructionList']) - register_Ns3AttributeConstructionListItem_methods(root_module, root_module['ns3::AttributeConstructionList::Item']) - register_Ns3Buffer_methods(root_module, root_module['ns3::Buffer']) - register_Ns3BufferIterator_methods(root_module, root_module['ns3::Buffer::Iterator']) - register_Ns3ByteTagIterator_methods(root_module, root_module['ns3::ByteTagIterator']) - register_Ns3ByteTagIteratorItem_methods(root_module, root_module['ns3::ByteTagIterator::Item']) - register_Ns3ByteTagList_methods(root_module, root_module['ns3::ByteTagList']) - register_Ns3ByteTagListIterator_methods(root_module, root_module['ns3::ByteTagList::Iterator']) - register_Ns3ByteTagListIteratorItem_methods(root_module, root_module['ns3::ByteTagList::Iterator::Item']) - register_Ns3CallbackBase_methods(root_module, root_module['ns3::CallbackBase']) - register_Ns3EventId_methods(root_module, root_module['ns3::EventId']) - register_Ns3LbtsMessage_methods(root_module, root_module['ns3::LbtsMessage']) - register_Ns3MpiInterface_methods(root_module, root_module['ns3::MpiInterface']) - register_Ns3ObjectBase_methods(root_module, root_module['ns3::ObjectBase']) - register_Ns3ObjectDeleter_methods(root_module, root_module['ns3::ObjectDeleter']) - register_Ns3ObjectFactory_methods(root_module, root_module['ns3::ObjectFactory']) - register_Ns3PacketMetadata_methods(root_module, root_module['ns3::PacketMetadata']) - register_Ns3PacketMetadataItem_methods(root_module, root_module['ns3::PacketMetadata::Item']) - register_Ns3PacketMetadataItemIterator_methods(root_module, root_module['ns3::PacketMetadata::ItemIterator']) - register_Ns3PacketTagIterator_methods(root_module, root_module['ns3::PacketTagIterator']) - register_Ns3PacketTagIteratorItem_methods(root_module, root_module['ns3::PacketTagIterator::Item']) - register_Ns3PacketTagList_methods(root_module, root_module['ns3::PacketTagList']) - register_Ns3PacketTagListTagData_methods(root_module, root_module['ns3::PacketTagList::TagData']) - register_Ns3SentBuffer_methods(root_module, root_module['ns3::SentBuffer']) - register_Ns3SimpleRefCount__Ns3Object_Ns3ObjectBase_Ns3ObjectDeleter_methods(root_module, root_module['ns3::SimpleRefCount< ns3::Object, ns3::ObjectBase, ns3::ObjectDeleter >']) - register_Ns3Tag_methods(root_module, root_module['ns3::Tag']) - register_Ns3TagBuffer_methods(root_module, root_module['ns3::TagBuffer']) - register_Ns3TypeId_methods(root_module, root_module['ns3::TypeId']) - register_Ns3TypeIdAttributeInformation_methods(root_module, root_module['ns3::TypeId::AttributeInformation']) - register_Ns3TypeIdTraceSourceInformation_methods(root_module, root_module['ns3::TypeId::TraceSourceInformation']) - register_Ns3Empty_methods(root_module, root_module['ns3::empty']) - register_Ns3Int64x64_t_methods(root_module, root_module['ns3::int64x64_t']) - register_Ns3Chunk_methods(root_module, root_module['ns3::Chunk']) - register_Ns3Header_methods(root_module, root_module['ns3::Header']) - register_Ns3Object_methods(root_module, root_module['ns3::Object']) - register_Ns3ObjectAggregateIterator_methods(root_module, root_module['ns3::Object::AggregateIterator']) - register_Ns3Scheduler_methods(root_module, root_module['ns3::Scheduler']) - register_Ns3SchedulerEvent_methods(root_module, root_module['ns3::Scheduler::Event']) - register_Ns3SchedulerEventKey_methods(root_module, root_module['ns3::Scheduler::EventKey']) - register_Ns3SimpleRefCount__Ns3AttributeAccessor_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeAccessor__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::AttributeAccessor, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3AttributeChecker_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeChecker__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::AttributeChecker, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3AttributeValue_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeValue__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::AttributeValue, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3CallbackImplBase_Ns3Empty_Ns3DefaultDeleter__lt__ns3CallbackImplBase__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::CallbackImplBase, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3EventImpl_Ns3Empty_Ns3DefaultDeleter__lt__ns3EventImpl__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::EventImpl, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3NixVector_Ns3Empty_Ns3DefaultDeleter__lt__ns3NixVector__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::NixVector, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3Packet_Ns3Empty_Ns3DefaultDeleter__lt__ns3Packet__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimpleRefCount__Ns3TraceSourceAccessor_Ns3Empty_Ns3DefaultDeleter__lt__ns3TraceSourceAccessor__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::TraceSourceAccessor, ns3::empty, ns3::DefaultDeleter >']) - register_Ns3SimulatorImpl_methods(root_module, root_module['ns3::SimulatorImpl']) - register_Ns3Time_methods(root_module, root_module['ns3::Time']) - register_Ns3TraceSourceAccessor_methods(root_module, root_module['ns3::TraceSourceAccessor']) - register_Ns3Trailer_methods(root_module, root_module['ns3::Trailer']) - register_Ns3AttributeAccessor_methods(root_module, root_module['ns3::AttributeAccessor']) - register_Ns3AttributeChecker_methods(root_module, root_module['ns3::AttributeChecker']) - register_Ns3AttributeValue_methods(root_module, root_module['ns3::AttributeValue']) - register_Ns3CallbackChecker_methods(root_module, root_module['ns3::CallbackChecker']) - register_Ns3CallbackImplBase_methods(root_module, root_module['ns3::CallbackImplBase']) - register_Ns3CallbackValue_methods(root_module, root_module['ns3::CallbackValue']) - register_Ns3DistributedSimulatorImpl_methods(root_module, root_module['ns3::DistributedSimulatorImpl']) - register_Ns3EmptyAttributeValue_methods(root_module, root_module['ns3::EmptyAttributeValue']) - register_Ns3EventImpl_methods(root_module, root_module['ns3::EventImpl']) - register_Ns3MpiReceiver_methods(root_module, root_module['ns3::MpiReceiver']) - register_Ns3NixVector_methods(root_module, root_module['ns3::NixVector']) - register_Ns3ObjectFactoryChecker_methods(root_module, root_module['ns3::ObjectFactoryChecker']) - register_Ns3ObjectFactoryValue_methods(root_module, root_module['ns3::ObjectFactoryValue']) - register_Ns3Packet_methods(root_module, root_module['ns3::Packet']) - register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue']) - register_Ns3TypeIdChecker_methods(root_module, root_module['ns3::TypeIdChecker']) - register_Ns3TypeIdValue_methods(root_module, root_module['ns3::TypeIdValue']) - return - -def register_Ns3AttributeConstructionList_methods(root_module, cls): - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::AttributeConstructionList(ns3::AttributeConstructionList const & arg0) [copy constructor] - cls.add_constructor([param('ns3::AttributeConstructionList const &', 'arg0')]) - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::AttributeConstructionList() [constructor] - cls.add_constructor([]) - ## attribute-construction-list.h (module 'core'): void ns3::AttributeConstructionList::Add(std::string name, ns3::Ptr checker, ns3::Ptr value) [member function] - cls.add_method('Add', - 'void', - [param('std::string', 'name'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker'), param('ns3::Ptr< ns3::AttributeValue >', 'value')]) - ## attribute-construction-list.h (module 'core'): std::_List_const_iterator ns3::AttributeConstructionList::Begin() const [member function] - cls.add_method('Begin', - 'std::_List_const_iterator< ns3::AttributeConstructionList::Item >', - [], - is_const=True) - ## attribute-construction-list.h (module 'core'): std::_List_const_iterator ns3::AttributeConstructionList::End() const [member function] - cls.add_method('End', - 'std::_List_const_iterator< ns3::AttributeConstructionList::Item >', - [], - is_const=True) - ## attribute-construction-list.h (module 'core'): ns3::Ptr ns3::AttributeConstructionList::Find(ns3::Ptr checker) const [member function] - cls.add_method('Find', - 'ns3::Ptr< ns3::AttributeValue >', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True) - return - -def register_Ns3AttributeConstructionListItem_methods(root_module, cls): - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item::Item() [constructor] - cls.add_constructor([]) - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item::Item(ns3::AttributeConstructionList::Item const & arg0) [copy constructor] - cls.add_constructor([param('ns3::AttributeConstructionList::Item const &', 'arg0')]) - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item::checker [variable] - cls.add_instance_attribute('checker', 'ns3::Ptr< ns3::AttributeChecker const >', is_const=False) - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item::name [variable] - cls.add_instance_attribute('name', 'std::string', is_const=False) - ## attribute-construction-list.h (module 'core'): ns3::AttributeConstructionList::Item::value [variable] - cls.add_instance_attribute('value', 'ns3::Ptr< ns3::AttributeValue >', is_const=False) - return - -def register_Ns3Buffer_methods(root_module, cls): - ## buffer.h (module 'network'): ns3::Buffer::Buffer() [constructor] - cls.add_constructor([]) - ## buffer.h (module 'network'): ns3::Buffer::Buffer(uint32_t dataSize) [constructor] - cls.add_constructor([param('uint32_t', 'dataSize')]) - ## buffer.h (module 'network'): ns3::Buffer::Buffer(uint32_t dataSize, bool initialize) [constructor] - cls.add_constructor([param('uint32_t', 'dataSize'), param('bool', 'initialize')]) - ## buffer.h (module 'network'): ns3::Buffer::Buffer(ns3::Buffer const & o) [copy constructor] - cls.add_constructor([param('ns3::Buffer const &', 'o')]) - ## buffer.h (module 'network'): bool ns3::Buffer::AddAtEnd(uint32_t end) [member function] - cls.add_method('AddAtEnd', - 'bool', - [param('uint32_t', 'end')]) - ## buffer.h (module 'network'): void ns3::Buffer::AddAtEnd(ns3::Buffer const & o) [member function] - cls.add_method('AddAtEnd', - 'void', - [param('ns3::Buffer const &', 'o')]) - ## buffer.h (module 'network'): bool ns3::Buffer::AddAtStart(uint32_t start) [member function] - cls.add_method('AddAtStart', - 'bool', - [param('uint32_t', 'start')]) - ## buffer.h (module 'network'): ns3::Buffer::Iterator ns3::Buffer::Begin() const [member function] - cls.add_method('Begin', - 'ns3::Buffer::Iterator', - [], - is_const=True) - ## buffer.h (module 'network'): void ns3::Buffer::CopyData(std::ostream * os, uint32_t size) const [member function] - cls.add_method('CopyData', - 'void', - [param('std::ostream *', 'os'), param('uint32_t', 'size')], - is_const=True) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::CopyData(uint8_t * buffer, uint32_t size) const [member function] - cls.add_method('CopyData', - 'uint32_t', - [param('uint8_t *', 'buffer'), param('uint32_t', 'size')], - is_const=True) - ## buffer.h (module 'network'): ns3::Buffer ns3::Buffer::CreateFragment(uint32_t start, uint32_t length) const [member function] - cls.add_method('CreateFragment', - 'ns3::Buffer', - [param('uint32_t', 'start'), param('uint32_t', 'length')], - is_const=True) - ## buffer.h (module 'network'): ns3::Buffer ns3::Buffer::CreateFullCopy() const [member function] - cls.add_method('CreateFullCopy', - 'ns3::Buffer', - [], - is_const=True) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Deserialize(uint8_t const * buffer, uint32_t size) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('uint8_t const *', 'buffer'), param('uint32_t', 'size')]) - ## buffer.h (module 'network'): ns3::Buffer::Iterator ns3::Buffer::End() const [member function] - cls.add_method('End', - 'ns3::Buffer::Iterator', - [], - is_const=True) - ## buffer.h (module 'network'): int32_t ns3::Buffer::GetCurrentEndOffset() const [member function] - cls.add_method('GetCurrentEndOffset', - 'int32_t', - [], - is_const=True) - ## buffer.h (module 'network'): int32_t ns3::Buffer::GetCurrentStartOffset() const [member function] - cls.add_method('GetCurrentStartOffset', - 'int32_t', - [], - is_const=True) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_const=True) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::GetSize() const [member function] - cls.add_method('GetSize', - 'uint32_t', - [], - is_const=True) - ## buffer.h (module 'network'): uint8_t const * ns3::Buffer::PeekData() const [member function] - cls.add_method('PeekData', - 'uint8_t const *', - [], - is_const=True) - ## buffer.h (module 'network'): void ns3::Buffer::RemoveAtEnd(uint32_t end) [member function] - cls.add_method('RemoveAtEnd', - 'void', - [param('uint32_t', 'end')]) - ## buffer.h (module 'network'): void ns3::Buffer::RemoveAtStart(uint32_t start) [member function] - cls.add_method('RemoveAtStart', - 'void', - [param('uint32_t', 'start')]) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Serialize(uint8_t * buffer, uint32_t maxSize) const [member function] - cls.add_method('Serialize', - 'uint32_t', - [param('uint8_t *', 'buffer'), param('uint32_t', 'maxSize')], - is_const=True) - return - -def register_Ns3BufferIterator_methods(root_module, cls): - ## buffer.h (module 'network'): ns3::Buffer::Iterator::Iterator(ns3::Buffer::Iterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Buffer::Iterator const &', 'arg0')]) - ## buffer.h (module 'network'): ns3::Buffer::Iterator::Iterator() [constructor] - cls.add_constructor([]) - ## buffer.h (module 'network'): uint16_t ns3::Buffer::Iterator::CalculateIpChecksum(uint16_t size) [member function] - cls.add_method('CalculateIpChecksum', - 'uint16_t', - [param('uint16_t', 'size')]) - ## buffer.h (module 'network'): uint16_t ns3::Buffer::Iterator::CalculateIpChecksum(uint16_t size, uint32_t initialChecksum) [member function] - cls.add_method('CalculateIpChecksum', - 'uint16_t', - [param('uint16_t', 'size'), param('uint32_t', 'initialChecksum')]) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Iterator::GetDistanceFrom(ns3::Buffer::Iterator const & o) const [member function] - cls.add_method('GetDistanceFrom', - 'uint32_t', - [param('ns3::Buffer::Iterator const &', 'o')], - is_const=True) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Iterator::GetSize() const [member function] - cls.add_method('GetSize', - 'uint32_t', - [], - is_const=True) - ## buffer.h (module 'network'): bool ns3::Buffer::Iterator::IsEnd() const [member function] - cls.add_method('IsEnd', - 'bool', - [], - is_const=True) - ## buffer.h (module 'network'): bool ns3::Buffer::Iterator::IsStart() const [member function] - cls.add_method('IsStart', - 'bool', - [], - is_const=True) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Next() [member function] - cls.add_method('Next', - 'void', - []) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Next(uint32_t delta) [member function] - cls.add_method('Next', - 'void', - [param('uint32_t', 'delta')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Prev() [member function] - cls.add_method('Prev', - 'void', - []) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Prev(uint32_t delta) [member function] - cls.add_method('Prev', - 'void', - [param('uint32_t', 'delta')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Read(uint8_t * buffer, uint32_t size) [member function] - cls.add_method('Read', - 'void', - [param('uint8_t *', 'buffer'), param('uint32_t', 'size')]) - ## buffer.h (module 'network'): uint16_t ns3::Buffer::Iterator::ReadLsbtohU16() [member function] - cls.add_method('ReadLsbtohU16', - 'uint16_t', - []) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Iterator::ReadLsbtohU32() [member function] - cls.add_method('ReadLsbtohU32', - 'uint32_t', - []) - ## buffer.h (module 'network'): uint64_t ns3::Buffer::Iterator::ReadLsbtohU64() [member function] - cls.add_method('ReadLsbtohU64', - 'uint64_t', - []) - ## buffer.h (module 'network'): uint16_t ns3::Buffer::Iterator::ReadNtohU16() [member function] - cls.add_method('ReadNtohU16', - 'uint16_t', - []) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Iterator::ReadNtohU32() [member function] - cls.add_method('ReadNtohU32', - 'uint32_t', - []) - ## buffer.h (module 'network'): uint64_t ns3::Buffer::Iterator::ReadNtohU64() [member function] - cls.add_method('ReadNtohU64', - 'uint64_t', - []) - ## buffer.h (module 'network'): uint16_t ns3::Buffer::Iterator::ReadU16() [member function] - cls.add_method('ReadU16', - 'uint16_t', - []) - ## buffer.h (module 'network'): uint32_t ns3::Buffer::Iterator::ReadU32() [member function] - cls.add_method('ReadU32', - 'uint32_t', - []) - ## buffer.h (module 'network'): uint64_t ns3::Buffer::Iterator::ReadU64() [member function] - cls.add_method('ReadU64', - 'uint64_t', - []) - ## buffer.h (module 'network'): uint8_t ns3::Buffer::Iterator::ReadU8() [member function] - cls.add_method('ReadU8', - 'uint8_t', - []) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Write(uint8_t const * buffer, uint32_t size) [member function] - cls.add_method('Write', - 'void', - [param('uint8_t const *', 'buffer'), param('uint32_t', 'size')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::Write(ns3::Buffer::Iterator start, ns3::Buffer::Iterator end) [member function] - cls.add_method('Write', - 'void', - [param('ns3::Buffer::Iterator', 'start'), param('ns3::Buffer::Iterator', 'end')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtolsbU16(uint16_t data) [member function] - cls.add_method('WriteHtolsbU16', - 'void', - [param('uint16_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtolsbU32(uint32_t data) [member function] - cls.add_method('WriteHtolsbU32', - 'void', - [param('uint32_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtolsbU64(uint64_t data) [member function] - cls.add_method('WriteHtolsbU64', - 'void', - [param('uint64_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtonU16(uint16_t data) [member function] - cls.add_method('WriteHtonU16', - 'void', - [param('uint16_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtonU32(uint32_t data) [member function] - cls.add_method('WriteHtonU32', - 'void', - [param('uint32_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteHtonU64(uint64_t data) [member function] - cls.add_method('WriteHtonU64', - 'void', - [param('uint64_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteU16(uint16_t data) [member function] - cls.add_method('WriteU16', - 'void', - [param('uint16_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteU32(uint32_t data) [member function] - cls.add_method('WriteU32', - 'void', - [param('uint32_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteU64(uint64_t data) [member function] - cls.add_method('WriteU64', - 'void', - [param('uint64_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteU8(uint8_t data) [member function] - cls.add_method('WriteU8', - 'void', - [param('uint8_t', 'data')]) - ## buffer.h (module 'network'): void ns3::Buffer::Iterator::WriteU8(uint8_t data, uint32_t len) [member function] - cls.add_method('WriteU8', - 'void', - [param('uint8_t', 'data'), param('uint32_t', 'len')]) - return - -def register_Ns3ByteTagIterator_methods(root_module, cls): - ## packet.h (module 'network'): ns3::ByteTagIterator::ByteTagIterator(ns3::ByteTagIterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ByteTagIterator const &', 'arg0')]) - ## packet.h (module 'network'): bool ns3::ByteTagIterator::HasNext() const [member function] - cls.add_method('HasNext', - 'bool', - [], - is_const=True) - ## packet.h (module 'network'): ns3::ByteTagIterator::Item ns3::ByteTagIterator::Next() [member function] - cls.add_method('Next', - 'ns3::ByteTagIterator::Item', - []) - return - -def register_Ns3ByteTagIteratorItem_methods(root_module, cls): - ## packet.h (module 'network'): ns3::ByteTagIterator::Item::Item(ns3::ByteTagIterator::Item const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ByteTagIterator::Item const &', 'arg0')]) - ## packet.h (module 'network'): uint32_t ns3::ByteTagIterator::Item::GetEnd() const [member function] - cls.add_method('GetEnd', - 'uint32_t', - [], - is_const=True) - ## packet.h (module 'network'): uint32_t ns3::ByteTagIterator::Item::GetStart() const [member function] - cls.add_method('GetStart', - 'uint32_t', - [], - is_const=True) - ## packet.h (module 'network'): void ns3::ByteTagIterator::Item::GetTag(ns3::Tag & tag) const [member function] - cls.add_method('GetTag', - 'void', - [param('ns3::Tag &', 'tag')], - is_const=True) - ## packet.h (module 'network'): ns3::TypeId ns3::ByteTagIterator::Item::GetTypeId() const [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_const=True) - return - -def register_Ns3ByteTagList_methods(root_module, cls): - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::ByteTagList() [constructor] - cls.add_constructor([]) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::ByteTagList(ns3::ByteTagList const & o) [copy constructor] - cls.add_constructor([param('ns3::ByteTagList const &', 'o')]) - ## byte-tag-list.h (module 'network'): ns3::TagBuffer ns3::ByteTagList::Add(ns3::TypeId tid, uint32_t bufferSize, int32_t start, int32_t end) [member function] - cls.add_method('Add', - 'ns3::TagBuffer', - [param('ns3::TypeId', 'tid'), param('uint32_t', 'bufferSize'), param('int32_t', 'start'), param('int32_t', 'end')]) - ## byte-tag-list.h (module 'network'): void ns3::ByteTagList::Add(ns3::ByteTagList const & o) [member function] - cls.add_method('Add', - 'void', - [param('ns3::ByteTagList const &', 'o')]) - ## byte-tag-list.h (module 'network'): void ns3::ByteTagList::AddAtEnd(int32_t adjustment, int32_t appendOffset) [member function] - cls.add_method('AddAtEnd', - 'void', - [param('int32_t', 'adjustment'), param('int32_t', 'appendOffset')]) - ## byte-tag-list.h (module 'network'): void ns3::ByteTagList::AddAtStart(int32_t adjustment, int32_t prependOffset) [member function] - cls.add_method('AddAtStart', - 'void', - [param('int32_t', 'adjustment'), param('int32_t', 'prependOffset')]) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator ns3::ByteTagList::Begin(int32_t offsetStart, int32_t offsetEnd) const [member function] - cls.add_method('Begin', - 'ns3::ByteTagList::Iterator', - [param('int32_t', 'offsetStart'), param('int32_t', 'offsetEnd')], - is_const=True) - ## byte-tag-list.h (module 'network'): void ns3::ByteTagList::RemoveAll() [member function] - cls.add_method('RemoveAll', - 'void', - []) - return - -def register_Ns3ByteTagListIterator_methods(root_module, cls): - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Iterator(ns3::ByteTagList::Iterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ByteTagList::Iterator const &', 'arg0')]) - ## byte-tag-list.h (module 'network'): uint32_t ns3::ByteTagList::Iterator::GetOffsetStart() const [member function] - cls.add_method('GetOffsetStart', - 'uint32_t', - [], - is_const=True) - ## byte-tag-list.h (module 'network'): bool ns3::ByteTagList::Iterator::HasNext() const [member function] - cls.add_method('HasNext', - 'bool', - [], - is_const=True) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item ns3::ByteTagList::Iterator::Next() [member function] - cls.add_method('Next', - 'ns3::ByteTagList::Iterator::Item', - []) - return - -def register_Ns3ByteTagListIteratorItem_methods(root_module, cls): - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::Item(ns3::ByteTagList::Iterator::Item const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ByteTagList::Iterator::Item const &', 'arg0')]) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::Item(ns3::TagBuffer buf) [constructor] - cls.add_constructor([param('ns3::TagBuffer', 'buf')]) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::buf [variable] - cls.add_instance_attribute('buf', 'ns3::TagBuffer', is_const=False) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::end [variable] - cls.add_instance_attribute('end', 'int32_t', is_const=False) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::size [variable] - cls.add_instance_attribute('size', 'uint32_t', is_const=False) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::start [variable] - cls.add_instance_attribute('start', 'int32_t', is_const=False) - ## byte-tag-list.h (module 'network'): ns3::ByteTagList::Iterator::Item::tid [variable] - cls.add_instance_attribute('tid', 'ns3::TypeId', is_const=False) - return - -def register_Ns3CallbackBase_methods(root_module, cls): - ## callback.h (module 'core'): ns3::CallbackBase::CallbackBase(ns3::CallbackBase const & arg0) [copy constructor] - cls.add_constructor([param('ns3::CallbackBase const &', 'arg0')]) - ## callback.h (module 'core'): ns3::CallbackBase::CallbackBase() [constructor] - cls.add_constructor([]) - ## callback.h (module 'core'): ns3::Ptr ns3::CallbackBase::GetImpl() const [member function] - cls.add_method('GetImpl', - 'ns3::Ptr< ns3::CallbackImplBase >', - [], - is_const=True) - ## callback.h (module 'core'): ns3::CallbackBase::CallbackBase(ns3::Ptr impl) [constructor] - cls.add_constructor([param('ns3::Ptr< ns3::CallbackImplBase >', 'impl')], - visibility='protected') - ## callback.h (module 'core'): static std::string ns3::CallbackBase::Demangle(std::string const & mangled) [member function] - cls.add_method('Demangle', - 'std::string', - [param('std::string const &', 'mangled')], - is_static=True, visibility='protected') - return - -def register_Ns3EventId_methods(root_module, cls): - cls.add_binary_comparison_operator('!=') - cls.add_binary_comparison_operator('==') - ## event-id.h (module 'core'): ns3::EventId::EventId(ns3::EventId const & arg0) [copy constructor] - cls.add_constructor([param('ns3::EventId const &', 'arg0')]) - ## event-id.h (module 'core'): ns3::EventId::EventId() [constructor] - cls.add_constructor([]) - ## event-id.h (module 'core'): ns3::EventId::EventId(ns3::Ptr const & impl, uint64_t ts, uint32_t context, uint32_t uid) [constructor] - cls.add_constructor([param('ns3::Ptr< ns3::EventImpl > const &', 'impl'), param('uint64_t', 'ts'), param('uint32_t', 'context'), param('uint32_t', 'uid')]) - ## event-id.h (module 'core'): void ns3::EventId::Cancel() [member function] - cls.add_method('Cancel', - 'void', - []) - ## event-id.h (module 'core'): uint32_t ns3::EventId::GetContext() const [member function] - cls.add_method('GetContext', - 'uint32_t', - [], - is_const=True) - ## event-id.h (module 'core'): uint64_t ns3::EventId::GetTs() const [member function] - cls.add_method('GetTs', - 'uint64_t', - [], - is_const=True) - ## event-id.h (module 'core'): uint32_t ns3::EventId::GetUid() const [member function] - cls.add_method('GetUid', - 'uint32_t', - [], - is_const=True) - ## event-id.h (module 'core'): bool ns3::EventId::IsExpired() const [member function] - cls.add_method('IsExpired', - 'bool', - [], - is_const=True) - ## event-id.h (module 'core'): bool ns3::EventId::IsRunning() const [member function] - cls.add_method('IsRunning', - 'bool', - [], - is_const=True) - ## event-id.h (module 'core'): ns3::EventImpl * ns3::EventId::PeekEventImpl() const [member function] - cls.add_method('PeekEventImpl', - 'ns3::EventImpl *', - [], - is_const=True) - return - -def register_Ns3LbtsMessage_methods(root_module, cls): - ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage(ns3::LbtsMessage const & arg0) [copy constructor] - cls.add_constructor([param('ns3::LbtsMessage const &', 'arg0')]) - ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage() [constructor] - cls.add_constructor([]) - ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage(uint32_t rxc, uint32_t txc, uint32_t id, ns3::Time const & t) [constructor] - cls.add_constructor([param('uint32_t', 'rxc'), param('uint32_t', 'txc'), param('uint32_t', 'id'), param('ns3::Time const &', 't')]) - ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::LbtsMessage::GetMyId() [member function] - cls.add_method('GetMyId', - 'uint32_t', - []) - ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::LbtsMessage::GetRxCount() [member function] - cls.add_method('GetRxCount', - 'uint32_t', - []) - ## distributed-simulator-impl.h (module 'mpi'): ns3::Time ns3::LbtsMessage::GetSmallestTime() [member function] - cls.add_method('GetSmallestTime', - 'ns3::Time', - []) - ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::LbtsMessage::GetTxCount() [member function] - cls.add_method('GetTxCount', - 'uint32_t', - []) - return - -def register_Ns3MpiInterface_methods(root_module, cls): - ## mpi-interface.h (module 'mpi'): ns3::MpiInterface::MpiInterface() [constructor] - cls.add_constructor([]) - ## mpi-interface.h (module 'mpi'): ns3::MpiInterface::MpiInterface(ns3::MpiInterface const & arg0) [copy constructor] - cls.add_constructor([param('ns3::MpiInterface const &', 'arg0')]) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::Destroy() [member function] - cls.add_method('Destroy', - 'void', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::Disable() [member function] - cls.add_method('Disable', - 'void', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::Enable(int * pargc, char * * * pargv) [member function] - cls.add_method('Enable', - 'void', - [param('int *', 'pargc'), param('char * * *', 'pargv')], - is_static=True) - ## mpi-interface.h (module 'mpi'): static uint32_t ns3::MpiInterface::GetRxCount() [member function] - cls.add_method('GetRxCount', - 'uint32_t', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static uint32_t ns3::MpiInterface::GetSize() [member function] - cls.add_method('GetSize', - 'uint32_t', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static uint32_t ns3::MpiInterface::GetSystemId() [member function] - cls.add_method('GetSystemId', - 'uint32_t', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static uint32_t ns3::MpiInterface::GetTxCount() [member function] - cls.add_method('GetTxCount', - 'uint32_t', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static bool ns3::MpiInterface::IsEnabled() [member function] - cls.add_method('IsEnabled', - 'bool', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::ReceiveMessages() [member function] - cls.add_method('ReceiveMessages', - 'void', - [], - is_static=True) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::SendPacket(ns3::Ptr p, ns3::Time const & rxTime, uint32_t node, uint32_t dev) [member function] - cls.add_method('SendPacket', - 'void', - [param('ns3::Ptr< ns3::Packet >', 'p'), param('ns3::Time const &', 'rxTime'), param('uint32_t', 'node'), param('uint32_t', 'dev')], - is_static=True) - ## mpi-interface.h (module 'mpi'): static void ns3::MpiInterface::TestSendComplete() [member function] - cls.add_method('TestSendComplete', - 'void', - [], - is_static=True) - return - -def register_Ns3ObjectBase_methods(root_module, cls): - ## object-base.h (module 'core'): ns3::ObjectBase::ObjectBase() [constructor] - cls.add_constructor([]) - ## object-base.h (module 'core'): ns3::ObjectBase::ObjectBase(ns3::ObjectBase const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ObjectBase const &', 'arg0')]) - ## object-base.h (module 'core'): void ns3::ObjectBase::GetAttribute(std::string name, ns3::AttributeValue & value) const [member function] - cls.add_method('GetAttribute', - 'void', - [param('std::string', 'name'), param('ns3::AttributeValue &', 'value')], - is_const=True) - ## object-base.h (module 'core'): bool ns3::ObjectBase::GetAttributeFailSafe(std::string name, ns3::AttributeValue & attribute) const [member function] - cls.add_method('GetAttributeFailSafe', - 'bool', - [param('std::string', 'name'), param('ns3::AttributeValue &', 'attribute')], - is_const=True) - ## object-base.h (module 'core'): ns3::TypeId ns3::ObjectBase::GetInstanceTypeId() const [member function] - cls.add_method('GetInstanceTypeId', - 'ns3::TypeId', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## object-base.h (module 'core'): static ns3::TypeId ns3::ObjectBase::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## object-base.h (module 'core'): void ns3::ObjectBase::SetAttribute(std::string name, ns3::AttributeValue const & value) [member function] - cls.add_method('SetAttribute', - 'void', - [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')]) - ## object-base.h (module 'core'): bool ns3::ObjectBase::SetAttributeFailSafe(std::string name, ns3::AttributeValue const & value) [member function] - cls.add_method('SetAttributeFailSafe', - 'bool', - [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')]) - ## object-base.h (module 'core'): bool ns3::ObjectBase::TraceConnect(std::string name, std::string context, ns3::CallbackBase const & cb) [member function] - cls.add_method('TraceConnect', - 'bool', - [param('std::string', 'name'), param('std::string', 'context'), param('ns3::CallbackBase const &', 'cb')]) - ## object-base.h (module 'core'): bool ns3::ObjectBase::TraceConnectWithoutContext(std::string name, ns3::CallbackBase const & cb) [member function] - cls.add_method('TraceConnectWithoutContext', - 'bool', - [param('std::string', 'name'), param('ns3::CallbackBase const &', 'cb')]) - ## object-base.h (module 'core'): bool ns3::ObjectBase::TraceDisconnect(std::string name, std::string context, ns3::CallbackBase const & cb) [member function] - cls.add_method('TraceDisconnect', - 'bool', - [param('std::string', 'name'), param('std::string', 'context'), param('ns3::CallbackBase const &', 'cb')]) - ## object-base.h (module 'core'): bool ns3::ObjectBase::TraceDisconnectWithoutContext(std::string name, ns3::CallbackBase const & cb) [member function] - cls.add_method('TraceDisconnectWithoutContext', - 'bool', - [param('std::string', 'name'), param('ns3::CallbackBase const &', 'cb')]) - ## object-base.h (module 'core'): void ns3::ObjectBase::ConstructSelf(ns3::AttributeConstructionList const & attributes) [member function] - cls.add_method('ConstructSelf', - 'void', - [param('ns3::AttributeConstructionList const &', 'attributes')], - visibility='protected') - ## object-base.h (module 'core'): void ns3::ObjectBase::NotifyConstructionCompleted() [member function] - cls.add_method('NotifyConstructionCompleted', - 'void', - [], - visibility='protected', is_virtual=True) - return - -def register_Ns3ObjectDeleter_methods(root_module, cls): - ## object.h (module 'core'): ns3::ObjectDeleter::ObjectDeleter() [constructor] - cls.add_constructor([]) - ## object.h (module 'core'): ns3::ObjectDeleter::ObjectDeleter(ns3::ObjectDeleter const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ObjectDeleter const &', 'arg0')]) - ## object.h (module 'core'): static void ns3::ObjectDeleter::Delete(ns3::Object * object) [member function] - cls.add_method('Delete', - 'void', - [param('ns3::Object *', 'object')], - is_static=True) - return - -def register_Ns3ObjectFactory_methods(root_module, cls): - cls.add_output_stream_operator() - ## object-factory.h (module 'core'): ns3::ObjectFactory::ObjectFactory(ns3::ObjectFactory const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ObjectFactory const &', 'arg0')]) - ## object-factory.h (module 'core'): ns3::ObjectFactory::ObjectFactory() [constructor] - cls.add_constructor([]) - ## object-factory.h (module 'core'): ns3::ObjectFactory::ObjectFactory(std::string typeId) [constructor] - cls.add_constructor([param('std::string', 'typeId')]) - ## object-factory.h (module 'core'): ns3::Ptr ns3::ObjectFactory::Create() const [member function] - cls.add_method('Create', - 'ns3::Ptr< ns3::Object >', - [], - is_const=True) - ## object-factory.h (module 'core'): ns3::TypeId ns3::ObjectFactory::GetTypeId() const [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_const=True) - ## object-factory.h (module 'core'): void ns3::ObjectFactory::Set(std::string name, ns3::AttributeValue const & value) [member function] - cls.add_method('Set', - 'void', - [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')]) - ## object-factory.h (module 'core'): void ns3::ObjectFactory::SetTypeId(ns3::TypeId tid) [member function] - cls.add_method('SetTypeId', - 'void', - [param('ns3::TypeId', 'tid')]) - ## object-factory.h (module 'core'): void ns3::ObjectFactory::SetTypeId(char const * tid) [member function] - cls.add_method('SetTypeId', - 'void', - [param('char const *', 'tid')]) - ## object-factory.h (module 'core'): void ns3::ObjectFactory::SetTypeId(std::string tid) [member function] - cls.add_method('SetTypeId', - 'void', - [param('std::string', 'tid')]) - return - -def register_Ns3PacketMetadata_methods(root_module, cls): - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::PacketMetadata(uint64_t uid, uint32_t size) [constructor] - cls.add_constructor([param('uint64_t', 'uid'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::PacketMetadata(ns3::PacketMetadata const & o) [copy constructor] - cls.add_constructor([param('ns3::PacketMetadata const &', 'o')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::AddAtEnd(ns3::PacketMetadata const & o) [member function] - cls.add_method('AddAtEnd', - 'void', - [param('ns3::PacketMetadata const &', 'o')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::AddHeader(ns3::Header const & header, uint32_t size) [member function] - cls.add_method('AddHeader', - 'void', - [param('ns3::Header const &', 'header'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::AddPaddingAtEnd(uint32_t end) [member function] - cls.add_method('AddPaddingAtEnd', - 'void', - [param('uint32_t', 'end')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::AddTrailer(ns3::Trailer const & trailer, uint32_t size) [member function] - cls.add_method('AddTrailer', - 'void', - [param('ns3::Trailer const &', 'trailer'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::ItemIterator ns3::PacketMetadata::BeginItem(ns3::Buffer buffer) const [member function] - cls.add_method('BeginItem', - 'ns3::PacketMetadata::ItemIterator', - [param('ns3::Buffer', 'buffer')], - is_const=True) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata ns3::PacketMetadata::CreateFragment(uint32_t start, uint32_t end) const [member function] - cls.add_method('CreateFragment', - 'ns3::PacketMetadata', - [param('uint32_t', 'start'), param('uint32_t', 'end')], - is_const=True) - ## packet-metadata.h (module 'network'): uint32_t ns3::PacketMetadata::Deserialize(uint8_t const * buffer, uint32_t size) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('uint8_t const *', 'buffer'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): static void ns3::PacketMetadata::Enable() [member function] - cls.add_method('Enable', - 'void', - [], - is_static=True) - ## packet-metadata.h (module 'network'): static void ns3::PacketMetadata::EnableChecking() [member function] - cls.add_method('EnableChecking', - 'void', - [], - is_static=True) - ## packet-metadata.h (module 'network'): uint32_t ns3::PacketMetadata::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_const=True) - ## packet-metadata.h (module 'network'): uint64_t ns3::PacketMetadata::GetUid() const [member function] - cls.add_method('GetUid', - 'uint64_t', - [], - is_const=True) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::RemoveAtEnd(uint32_t end) [member function] - cls.add_method('RemoveAtEnd', - 'void', - [param('uint32_t', 'end')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::RemoveAtStart(uint32_t start) [member function] - cls.add_method('RemoveAtStart', - 'void', - [param('uint32_t', 'start')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::RemoveHeader(ns3::Header const & header, uint32_t size) [member function] - cls.add_method('RemoveHeader', - 'void', - [param('ns3::Header const &', 'header'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): void ns3::PacketMetadata::RemoveTrailer(ns3::Trailer const & trailer, uint32_t size) [member function] - cls.add_method('RemoveTrailer', - 'void', - [param('ns3::Trailer const &', 'trailer'), param('uint32_t', 'size')]) - ## packet-metadata.h (module 'network'): uint32_t ns3::PacketMetadata::Serialize(uint8_t * buffer, uint32_t maxSize) const [member function] - cls.add_method('Serialize', - 'uint32_t', - [param('uint8_t *', 'buffer'), param('uint32_t', 'maxSize')], - is_const=True) - return - -def register_Ns3PacketMetadataItem_methods(root_module, cls): - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::Item() [constructor] - cls.add_constructor([]) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::Item(ns3::PacketMetadata::Item const & arg0) [copy constructor] - cls.add_constructor([param('ns3::PacketMetadata::Item const &', 'arg0')]) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::current [variable] - cls.add_instance_attribute('current', 'ns3::Buffer::Iterator', is_const=False) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::currentSize [variable] - cls.add_instance_attribute('currentSize', 'uint32_t', is_const=False) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::currentTrimedFromEnd [variable] - cls.add_instance_attribute('currentTrimedFromEnd', 'uint32_t', is_const=False) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::currentTrimedFromStart [variable] - cls.add_instance_attribute('currentTrimedFromStart', 'uint32_t', is_const=False) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::isFragment [variable] - cls.add_instance_attribute('isFragment', 'bool', is_const=False) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item::tid [variable] - cls.add_instance_attribute('tid', 'ns3::TypeId', is_const=False) - return - -def register_Ns3PacketMetadataItemIterator_methods(root_module, cls): - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::ItemIterator::ItemIterator(ns3::PacketMetadata::ItemIterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::PacketMetadata::ItemIterator const &', 'arg0')]) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::ItemIterator::ItemIterator(ns3::PacketMetadata const * metadata, ns3::Buffer buffer) [constructor] - cls.add_constructor([param('ns3::PacketMetadata const *', 'metadata'), param('ns3::Buffer', 'buffer')]) - ## packet-metadata.h (module 'network'): bool ns3::PacketMetadata::ItemIterator::HasNext() const [member function] - cls.add_method('HasNext', - 'bool', - [], - is_const=True) - ## packet-metadata.h (module 'network'): ns3::PacketMetadata::Item ns3::PacketMetadata::ItemIterator::Next() [member function] - cls.add_method('Next', - 'ns3::PacketMetadata::Item', - []) - return - -def register_Ns3PacketTagIterator_methods(root_module, cls): - ## packet.h (module 'network'): ns3::PacketTagIterator::PacketTagIterator(ns3::PacketTagIterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::PacketTagIterator const &', 'arg0')]) - ## packet.h (module 'network'): bool ns3::PacketTagIterator::HasNext() const [member function] - cls.add_method('HasNext', - 'bool', - [], - is_const=True) - ## packet.h (module 'network'): ns3::PacketTagIterator::Item ns3::PacketTagIterator::Next() [member function] - cls.add_method('Next', - 'ns3::PacketTagIterator::Item', - []) - return - -def register_Ns3PacketTagIteratorItem_methods(root_module, cls): - ## packet.h (module 'network'): ns3::PacketTagIterator::Item::Item(ns3::PacketTagIterator::Item const & arg0) [copy constructor] - cls.add_constructor([param('ns3::PacketTagIterator::Item const &', 'arg0')]) - ## packet.h (module 'network'): void ns3::PacketTagIterator::Item::GetTag(ns3::Tag & tag) const [member function] - cls.add_method('GetTag', - 'void', - [param('ns3::Tag &', 'tag')], - is_const=True) - ## packet.h (module 'network'): ns3::TypeId ns3::PacketTagIterator::Item::GetTypeId() const [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_const=True) - return - -def register_Ns3PacketTagList_methods(root_module, cls): - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::PacketTagList() [constructor] - cls.add_constructor([]) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::PacketTagList(ns3::PacketTagList const & o) [copy constructor] - cls.add_constructor([param('ns3::PacketTagList const &', 'o')]) - ## packet-tag-list.h (module 'network'): void ns3::PacketTagList::Add(ns3::Tag const & tag) const [member function] - cls.add_method('Add', - 'void', - [param('ns3::Tag const &', 'tag')], - is_const=True) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData const * ns3::PacketTagList::Head() const [member function] - cls.add_method('Head', - 'ns3::PacketTagList::TagData const *', - [], - is_const=True) - ## packet-tag-list.h (module 'network'): bool ns3::PacketTagList::Peek(ns3::Tag & tag) const [member function] - cls.add_method('Peek', - 'bool', - [param('ns3::Tag &', 'tag')], - is_const=True) - ## packet-tag-list.h (module 'network'): bool ns3::PacketTagList::Remove(ns3::Tag & tag) [member function] - cls.add_method('Remove', - 'bool', - [param('ns3::Tag &', 'tag')]) - ## packet-tag-list.h (module 'network'): void ns3::PacketTagList::RemoveAll() [member function] - cls.add_method('RemoveAll', - 'void', - []) - ## packet-tag-list.h (module 'network'): bool ns3::PacketTagList::Replace(ns3::Tag & tag) [member function] - cls.add_method('Replace', - 'bool', - [param('ns3::Tag &', 'tag')]) - return - -def register_Ns3PacketTagListTagData_methods(root_module, cls): - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::TagData() [constructor] - cls.add_constructor([]) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::TagData(ns3::PacketTagList::TagData const & arg0) [copy constructor] - cls.add_constructor([param('ns3::PacketTagList::TagData const &', 'arg0')]) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::count [variable] - cls.add_instance_attribute('count', 'uint32_t', is_const=False) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::data [variable] - cls.add_instance_attribute('data', 'uint8_t [ 20 ]', is_const=False) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::next [variable] - cls.add_instance_attribute('next', 'ns3::PacketTagList::TagData *', is_const=False) - ## packet-tag-list.h (module 'network'): ns3::PacketTagList::TagData::tid [variable] - cls.add_instance_attribute('tid', 'ns3::TypeId', is_const=False) - return - -def register_Ns3SentBuffer_methods(root_module, cls): - ## mpi-interface.h (module 'mpi'): ns3::SentBuffer::SentBuffer(ns3::SentBuffer const & arg0) [copy constructor] - cls.add_constructor([param('ns3::SentBuffer const &', 'arg0')]) - ## mpi-interface.h (module 'mpi'): ns3::SentBuffer::SentBuffer() [constructor] - cls.add_constructor([]) - ## mpi-interface.h (module 'mpi'): uint8_t * ns3::SentBuffer::GetBuffer() [member function] - cls.add_method('GetBuffer', - 'uint8_t *', - []) - ## mpi-interface.h (module 'mpi'): MPI_Request * ns3::SentBuffer::GetRequest() [member function] - cls.add_method('GetRequest', - 'MPI_Request *', - []) - ## mpi-interface.h (module 'mpi'): void ns3::SentBuffer::SetBuffer(uint8_t * buffer) [member function] - cls.add_method('SetBuffer', - 'void', - [param('uint8_t *', 'buffer')]) - return - -def register_Ns3SimpleRefCount__Ns3Object_Ns3ObjectBase_Ns3ObjectDeleter_methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount::SimpleRefCount(ns3::SimpleRefCount const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::Object, ns3::ObjectBase, ns3::ObjectDeleter > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3Tag_methods(root_module, cls): - ## tag.h (module 'network'): ns3::Tag::Tag() [constructor] - cls.add_constructor([]) - ## tag.h (module 'network'): ns3::Tag::Tag(ns3::Tag const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Tag const &', 'arg0')]) - ## tag.h (module 'network'): void ns3::Tag::Deserialize(ns3::TagBuffer i) [member function] - cls.add_method('Deserialize', - 'void', - [param('ns3::TagBuffer', 'i')], - is_pure_virtual=True, is_virtual=True) - ## tag.h (module 'network'): uint32_t ns3::Tag::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## tag.h (module 'network'): static ns3::TypeId ns3::Tag::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## tag.h (module 'network'): void ns3::Tag::Print(std::ostream & os) const [member function] - cls.add_method('Print', - 'void', - [param('std::ostream &', 'os')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## tag.h (module 'network'): void ns3::Tag::Serialize(ns3::TagBuffer i) const [member function] - cls.add_method('Serialize', - 'void', - [param('ns3::TagBuffer', 'i')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3TagBuffer_methods(root_module, cls): - ## tag-buffer.h (module 'network'): ns3::TagBuffer::TagBuffer(ns3::TagBuffer const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TagBuffer const &', 'arg0')]) - ## tag-buffer.h (module 'network'): ns3::TagBuffer::TagBuffer(uint8_t * start, uint8_t * end) [constructor] - cls.add_constructor([param('uint8_t *', 'start'), param('uint8_t *', 'end')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::CopyFrom(ns3::TagBuffer o) [member function] - cls.add_method('CopyFrom', - 'void', - [param('ns3::TagBuffer', 'o')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::Read(uint8_t * buffer, uint32_t size) [member function] - cls.add_method('Read', - 'void', - [param('uint8_t *', 'buffer'), param('uint32_t', 'size')]) - ## tag-buffer.h (module 'network'): double ns3::TagBuffer::ReadDouble() [member function] - cls.add_method('ReadDouble', - 'double', - []) - ## tag-buffer.h (module 'network'): uint16_t ns3::TagBuffer::ReadU16() [member function] - cls.add_method('ReadU16', - 'uint16_t', - []) - ## tag-buffer.h (module 'network'): uint32_t ns3::TagBuffer::ReadU32() [member function] - cls.add_method('ReadU32', - 'uint32_t', - []) - ## tag-buffer.h (module 'network'): uint64_t ns3::TagBuffer::ReadU64() [member function] - cls.add_method('ReadU64', - 'uint64_t', - []) - ## tag-buffer.h (module 'network'): uint8_t ns3::TagBuffer::ReadU8() [member function] - cls.add_method('ReadU8', - 'uint8_t', - []) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::TrimAtEnd(uint32_t trim) [member function] - cls.add_method('TrimAtEnd', - 'void', - [param('uint32_t', 'trim')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::Write(uint8_t const * buffer, uint32_t size) [member function] - cls.add_method('Write', - 'void', - [param('uint8_t const *', 'buffer'), param('uint32_t', 'size')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::WriteDouble(double v) [member function] - cls.add_method('WriteDouble', - 'void', - [param('double', 'v')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::WriteU16(uint16_t data) [member function] - cls.add_method('WriteU16', - 'void', - [param('uint16_t', 'data')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::WriteU32(uint32_t data) [member function] - cls.add_method('WriteU32', - 'void', - [param('uint32_t', 'data')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::WriteU64(uint64_t v) [member function] - cls.add_method('WriteU64', - 'void', - [param('uint64_t', 'v')]) - ## tag-buffer.h (module 'network'): void ns3::TagBuffer::WriteU8(uint8_t v) [member function] - cls.add_method('WriteU8', - 'void', - [param('uint8_t', 'v')]) - return - -def register_Ns3TypeId_methods(root_module, cls): - cls.add_binary_comparison_operator('<') - cls.add_binary_comparison_operator('!=') - cls.add_output_stream_operator() - cls.add_binary_comparison_operator('==') - ## type-id.h (module 'core'): ns3::TypeId::TypeId(char const * name) [constructor] - cls.add_constructor([param('char const *', 'name')]) - ## type-id.h (module 'core'): ns3::TypeId::TypeId() [constructor] - cls.add_constructor([]) - ## type-id.h (module 'core'): ns3::TypeId::TypeId(ns3::TypeId const & o) [copy constructor] - cls.add_constructor([param('ns3::TypeId const &', 'o')]) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::AddAttribute(std::string name, std::string help, ns3::AttributeValue const & initialValue, ns3::Ptr accessor, ns3::Ptr checker) [member function] - cls.add_method('AddAttribute', - 'ns3::TypeId', - [param('std::string', 'name'), param('std::string', 'help'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')]) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::AddAttribute(std::string name, std::string help, uint32_t flags, ns3::AttributeValue const & initialValue, ns3::Ptr accessor, ns3::Ptr checker) [member function] - cls.add_method('AddAttribute', - 'ns3::TypeId', - [param('std::string', 'name'), param('std::string', 'help'), param('uint32_t', 'flags'), param('ns3::AttributeValue const &', 'initialValue'), param('ns3::Ptr< ns3::AttributeAccessor const >', 'accessor'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')]) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::AddTraceSource(std::string name, std::string help, ns3::Ptr accessor) [member function] - cls.add_method('AddTraceSource', - 'ns3::TypeId', - [param('std::string', 'name'), param('std::string', 'help'), param('ns3::Ptr< ns3::TraceSourceAccessor const >', 'accessor')]) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation ns3::TypeId::GetAttribute(uint32_t i) const [member function] - cls.add_method('GetAttribute', - 'ns3::TypeId::AttributeInformation', - [param('uint32_t', 'i')], - is_const=True) - ## type-id.h (module 'core'): std::string ns3::TypeId::GetAttributeFullName(uint32_t i) const [member function] - cls.add_method('GetAttributeFullName', - 'std::string', - [param('uint32_t', 'i')], - is_const=True) - ## type-id.h (module 'core'): uint32_t ns3::TypeId::GetAttributeN() const [member function] - cls.add_method('GetAttributeN', - 'uint32_t', - [], - is_const=True) - ## type-id.h (module 'core'): ns3::Callback ns3::TypeId::GetConstructor() const [member function] - cls.add_method('GetConstructor', - 'ns3::Callback< ns3::ObjectBase *, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', - [], - is_const=True) - ## type-id.h (module 'core'): std::string ns3::TypeId::GetGroupName() const [member function] - cls.add_method('GetGroupName', - 'std::string', - [], - is_const=True) - ## type-id.h (module 'core'): std::string ns3::TypeId::GetName() const [member function] - cls.add_method('GetName', - 'std::string', - [], - is_const=True) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::GetParent() const [member function] - cls.add_method('GetParent', - 'ns3::TypeId', - [], - is_const=True) - ## type-id.h (module 'core'): static ns3::TypeId ns3::TypeId::GetRegistered(uint32_t i) [member function] - cls.add_method('GetRegistered', - 'ns3::TypeId', - [param('uint32_t', 'i')], - is_static=True) - ## type-id.h (module 'core'): static uint32_t ns3::TypeId::GetRegisteredN() [member function] - cls.add_method('GetRegisteredN', - 'uint32_t', - [], - is_static=True) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation ns3::TypeId::GetTraceSource(uint32_t i) const [member function] - cls.add_method('GetTraceSource', - 'ns3::TypeId::TraceSourceInformation', - [param('uint32_t', 'i')], - is_const=True) - ## type-id.h (module 'core'): uint32_t ns3::TypeId::GetTraceSourceN() const [member function] - cls.add_method('GetTraceSourceN', - 'uint32_t', - [], - is_const=True) - ## type-id.h (module 'core'): uint16_t ns3::TypeId::GetUid() const [member function] - cls.add_method('GetUid', - 'uint16_t', - [], - is_const=True) - ## type-id.h (module 'core'): bool ns3::TypeId::HasConstructor() const [member function] - cls.add_method('HasConstructor', - 'bool', - [], - is_const=True) - ## type-id.h (module 'core'): bool ns3::TypeId::HasParent() const [member function] - cls.add_method('HasParent', - 'bool', - [], - is_const=True) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::HideFromDocumentation() [member function] - cls.add_method('HideFromDocumentation', - 'ns3::TypeId', - []) - ## type-id.h (module 'core'): bool ns3::TypeId::IsChildOf(ns3::TypeId other) const [member function] - cls.add_method('IsChildOf', - 'bool', - [param('ns3::TypeId', 'other')], - is_const=True) - ## type-id.h (module 'core'): bool ns3::TypeId::LookupAttributeByName(std::string name, ns3::TypeId::AttributeInformation * info) const [member function] - cls.add_method('LookupAttributeByName', - 'bool', - [param('std::string', 'name'), param('ns3::TypeId::AttributeInformation *', 'info', transfer_ownership=False)], - is_const=True) - ## type-id.h (module 'core'): static ns3::TypeId ns3::TypeId::LookupByName(std::string name) [member function] - cls.add_method('LookupByName', - 'ns3::TypeId', - [param('std::string', 'name')], - is_static=True) - ## type-id.h (module 'core'): ns3::Ptr ns3::TypeId::LookupTraceSourceByName(std::string name) const [member function] - cls.add_method('LookupTraceSourceByName', - 'ns3::Ptr< ns3::TraceSourceAccessor const >', - [param('std::string', 'name')], - is_const=True) - ## type-id.h (module 'core'): bool ns3::TypeId::MustHideFromDocumentation() const [member function] - cls.add_method('MustHideFromDocumentation', - 'bool', - [], - is_const=True) - ## type-id.h (module 'core'): bool ns3::TypeId::SetAttributeInitialValue(uint32_t i, ns3::Ptr initialValue) [member function] - cls.add_method('SetAttributeInitialValue', - 'bool', - [param('uint32_t', 'i'), param('ns3::Ptr< ns3::AttributeValue const >', 'initialValue')]) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::SetGroupName(std::string groupName) [member function] - cls.add_method('SetGroupName', - 'ns3::TypeId', - [param('std::string', 'groupName')]) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeId::SetParent(ns3::TypeId tid) [member function] - cls.add_method('SetParent', - 'ns3::TypeId', - [param('ns3::TypeId', 'tid')]) - ## type-id.h (module 'core'): void ns3::TypeId::SetUid(uint16_t tid) [member function] - cls.add_method('SetUid', - 'void', - [param('uint16_t', 'tid')]) - return - -def register_Ns3TypeIdAttributeInformation_methods(root_module, cls): - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::AttributeInformation() [constructor] - cls.add_constructor([]) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::AttributeInformation(ns3::TypeId::AttributeInformation const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TypeId::AttributeInformation const &', 'arg0')]) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::accessor [variable] - cls.add_instance_attribute('accessor', 'ns3::Ptr< ns3::AttributeAccessor const >', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::checker [variable] - cls.add_instance_attribute('checker', 'ns3::Ptr< ns3::AttributeChecker const >', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::flags [variable] - cls.add_instance_attribute('flags', 'uint32_t', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::help [variable] - cls.add_instance_attribute('help', 'std::string', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::initialValue [variable] - cls.add_instance_attribute('initialValue', 'ns3::Ptr< ns3::AttributeValue const >', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::name [variable] - cls.add_instance_attribute('name', 'std::string', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::AttributeInformation::originalInitialValue [variable] - cls.add_instance_attribute('originalInitialValue', 'ns3::Ptr< ns3::AttributeValue const >', is_const=False) - return - -def register_Ns3TypeIdTraceSourceInformation_methods(root_module, cls): - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation::TraceSourceInformation() [constructor] - cls.add_constructor([]) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation::TraceSourceInformation(ns3::TypeId::TraceSourceInformation const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TypeId::TraceSourceInformation const &', 'arg0')]) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation::accessor [variable] - cls.add_instance_attribute('accessor', 'ns3::Ptr< ns3::TraceSourceAccessor const >', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation::help [variable] - cls.add_instance_attribute('help', 'std::string', is_const=False) - ## type-id.h (module 'core'): ns3::TypeId::TraceSourceInformation::name [variable] - cls.add_instance_attribute('name', 'std::string', is_const=False) - return - -def register_Ns3Empty_methods(root_module, cls): - ## empty.h (module 'core'): ns3::empty::empty() [constructor] - cls.add_constructor([]) - ## empty.h (module 'core'): ns3::empty::empty(ns3::empty const & arg0) [copy constructor] - cls.add_constructor([param('ns3::empty const &', 'arg0')]) - return - -def register_Ns3Int64x64_t_methods(root_module, cls): - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long unsigned int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long unsigned int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short unsigned int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned char const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short int const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('signed char const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('double const', 'right')) - cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long unsigned int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long unsigned int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short unsigned int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned char const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short int const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('signed char const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('double const', 'right')) - cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long unsigned int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long unsigned int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short unsigned int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned char const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short int const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('signed char const', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('double const', 'right')) - cls.add_unary_numeric_operator('-') - cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long unsigned int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long unsigned int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short unsigned int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('unsigned char const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long long int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('long int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('short int const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('signed char const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('double const', 'right')) - cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', 'right')) - cls.add_binary_comparison_operator('<') - cls.add_binary_comparison_operator('>') - cls.add_binary_comparison_operator('!=') - cls.add_inplace_numeric_operator('*=', param('ns3::int64x64_t const &', 'right')) - cls.add_inplace_numeric_operator('+=', param('ns3::int64x64_t const &', 'right')) - cls.add_inplace_numeric_operator('-=', param('ns3::int64x64_t const &', 'right')) - cls.add_inplace_numeric_operator('/=', param('ns3::int64x64_t const &', 'right')) - cls.add_output_stream_operator() - cls.add_binary_comparison_operator('<=') - cls.add_binary_comparison_operator('==') - cls.add_binary_comparison_operator('>=') - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t() [constructor] - cls.add_constructor([]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(double v) [constructor] - cls.add_constructor([param('double', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(int v) [constructor] - cls.add_constructor([param('int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(long int v) [constructor] - cls.add_constructor([param('long int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(long long int v) [constructor] - cls.add_constructor([param('long long int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(unsigned int v) [constructor] - cls.add_constructor([param('unsigned int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(long unsigned int v) [constructor] - cls.add_constructor([param('long unsigned int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(long long unsigned int v) [constructor] - cls.add_constructor([param('long long unsigned int', 'v')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(int64_t hi, uint64_t lo) [constructor] - cls.add_constructor([param('int64_t', 'hi'), param('uint64_t', 'lo')]) - ## int64x64-double.h (module 'core'): ns3::int64x64_t::int64x64_t(ns3::int64x64_t const & o) [copy constructor] - cls.add_constructor([param('ns3::int64x64_t const &', 'o')]) - ## int64x64-double.h (module 'core'): double ns3::int64x64_t::GetDouble() const [member function] - cls.add_method('GetDouble', - 'double', - [], - is_const=True) - ## int64x64-double.h (module 'core'): int64_t ns3::int64x64_t::GetHigh() const [member function] - cls.add_method('GetHigh', - 'int64_t', - [], - is_const=True) - ## int64x64-double.h (module 'core'): uint64_t ns3::int64x64_t::GetLow() const [member function] - cls.add_method('GetLow', - 'uint64_t', - [], - is_const=True) - ## int64x64-double.h (module 'core'): static ns3::int64x64_t ns3::int64x64_t::Invert(uint64_t v) [member function] - cls.add_method('Invert', - 'ns3::int64x64_t', - [param('uint64_t', 'v')], - is_static=True) - ## int64x64-double.h (module 'core'): void ns3::int64x64_t::MulByInvert(ns3::int64x64_t const & o) [member function] - cls.add_method('MulByInvert', - 'void', - [param('ns3::int64x64_t const &', 'o')]) - return - -def register_Ns3Chunk_methods(root_module, cls): - ## chunk.h (module 'network'): ns3::Chunk::Chunk() [constructor] - cls.add_constructor([]) - ## chunk.h (module 'network'): ns3::Chunk::Chunk(ns3::Chunk const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Chunk const &', 'arg0')]) - ## chunk.h (module 'network'): uint32_t ns3::Chunk::Deserialize(ns3::Buffer::Iterator start) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('ns3::Buffer::Iterator', 'start')], - is_pure_virtual=True, is_virtual=True) - ## chunk.h (module 'network'): static ns3::TypeId ns3::Chunk::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## chunk.h (module 'network'): void ns3::Chunk::Print(std::ostream & os) const [member function] - cls.add_method('Print', - 'void', - [param('std::ostream &', 'os')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3Header_methods(root_module, cls): - cls.add_output_stream_operator() - ## header.h (module 'network'): ns3::Header::Header() [constructor] - cls.add_constructor([]) - ## header.h (module 'network'): ns3::Header::Header(ns3::Header const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Header const &', 'arg0')]) - ## header.h (module 'network'): uint32_t ns3::Header::Deserialize(ns3::Buffer::Iterator start) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('ns3::Buffer::Iterator', 'start')], - is_pure_virtual=True, is_virtual=True) - ## header.h (module 'network'): uint32_t ns3::Header::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## header.h (module 'network'): static ns3::TypeId ns3::Header::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## header.h (module 'network'): void ns3::Header::Print(std::ostream & os) const [member function] - cls.add_method('Print', - 'void', - [param('std::ostream &', 'os')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## header.h (module 'network'): void ns3::Header::Serialize(ns3::Buffer::Iterator start) const [member function] - cls.add_method('Serialize', - 'void', - [param('ns3::Buffer::Iterator', 'start')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3Object_methods(root_module, cls): - ## object.h (module 'core'): ns3::Object::Object() [constructor] - cls.add_constructor([]) - ## object.h (module 'core'): void ns3::Object::AggregateObject(ns3::Ptr other) [member function] - cls.add_method('AggregateObject', - 'void', - [param('ns3::Ptr< ns3::Object >', 'other')]) - ## object.h (module 'core'): void ns3::Object::Dispose() [member function] - cls.add_method('Dispose', - 'void', - []) - ## object.h (module 'core'): ns3::Object::AggregateIterator ns3::Object::GetAggregateIterator() const [member function] - cls.add_method('GetAggregateIterator', - 'ns3::Object::AggregateIterator', - [], - is_const=True) - ## object.h (module 'core'): ns3::TypeId ns3::Object::GetInstanceTypeId() const [member function] - cls.add_method('GetInstanceTypeId', - 'ns3::TypeId', - [], - is_const=True, is_virtual=True) - ## object.h (module 'core'): static ns3::TypeId ns3::Object::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## object.h (module 'core'): void ns3::Object::Initialize() [member function] - cls.add_method('Initialize', - 'void', - []) - ## object.h (module 'core'): ns3::Object::Object(ns3::Object const & o) [copy constructor] - cls.add_constructor([param('ns3::Object const &', 'o')], - visibility='protected') - ## object.h (module 'core'): void ns3::Object::DoDispose() [member function] - cls.add_method('DoDispose', - 'void', - [], - visibility='protected', is_virtual=True) - ## object.h (module 'core'): void ns3::Object::DoInitialize() [member function] - cls.add_method('DoInitialize', - 'void', - [], - visibility='protected', is_virtual=True) - ## object.h (module 'core'): void ns3::Object::NotifyNewAggregate() [member function] - cls.add_method('NotifyNewAggregate', - 'void', - [], - visibility='protected', is_virtual=True) - return - -def register_Ns3ObjectAggregateIterator_methods(root_module, cls): - ## object.h (module 'core'): ns3::Object::AggregateIterator::AggregateIterator(ns3::Object::AggregateIterator const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Object::AggregateIterator const &', 'arg0')]) - ## object.h (module 'core'): ns3::Object::AggregateIterator::AggregateIterator() [constructor] - cls.add_constructor([]) - ## object.h (module 'core'): bool ns3::Object::AggregateIterator::HasNext() const [member function] - cls.add_method('HasNext', - 'bool', - [], - is_const=True) - ## object.h (module 'core'): ns3::Ptr ns3::Object::AggregateIterator::Next() [member function] - cls.add_method('Next', - 'ns3::Ptr< ns3::Object const >', - []) - return - -def register_Ns3Scheduler_methods(root_module, cls): - ## scheduler.h (module 'core'): ns3::Scheduler::Scheduler() [constructor] - cls.add_constructor([]) - ## scheduler.h (module 'core'): ns3::Scheduler::Scheduler(ns3::Scheduler const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Scheduler const &', 'arg0')]) - ## scheduler.h (module 'core'): static ns3::TypeId ns3::Scheduler::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## scheduler.h (module 'core'): void ns3::Scheduler::Insert(ns3::Scheduler::Event const & ev) [member function] - cls.add_method('Insert', - 'void', - [param('ns3::Scheduler::Event const &', 'ev')], - is_pure_virtual=True, is_virtual=True) - ## scheduler.h (module 'core'): bool ns3::Scheduler::IsEmpty() const [member function] - cls.add_method('IsEmpty', - 'bool', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## scheduler.h (module 'core'): ns3::Scheduler::Event ns3::Scheduler::PeekNext() const [member function] - cls.add_method('PeekNext', - 'ns3::Scheduler::Event', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## scheduler.h (module 'core'): void ns3::Scheduler::Remove(ns3::Scheduler::Event const & ev) [member function] - cls.add_method('Remove', - 'void', - [param('ns3::Scheduler::Event const &', 'ev')], - is_pure_virtual=True, is_virtual=True) - ## scheduler.h (module 'core'): ns3::Scheduler::Event ns3::Scheduler::RemoveNext() [member function] - cls.add_method('RemoveNext', - 'ns3::Scheduler::Event', - [], - is_pure_virtual=True, is_virtual=True) - return - -def register_Ns3SchedulerEvent_methods(root_module, cls): - cls.add_binary_comparison_operator('<') - ## scheduler.h (module 'core'): ns3::Scheduler::Event::Event() [constructor] - cls.add_constructor([]) - ## scheduler.h (module 'core'): ns3::Scheduler::Event::Event(ns3::Scheduler::Event const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Scheduler::Event const &', 'arg0')]) - ## scheduler.h (module 'core'): ns3::Scheduler::Event::impl [variable] - cls.add_instance_attribute('impl', 'ns3::EventImpl *', is_const=False) - ## scheduler.h (module 'core'): ns3::Scheduler::Event::key [variable] - cls.add_instance_attribute('key', 'ns3::Scheduler::EventKey', is_const=False) - return - -def register_Ns3SchedulerEventKey_methods(root_module, cls): - cls.add_binary_comparison_operator('<') - cls.add_binary_comparison_operator('>') - cls.add_binary_comparison_operator('!=') - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey::EventKey() [constructor] - cls.add_constructor([]) - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey::EventKey(ns3::Scheduler::EventKey const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Scheduler::EventKey const &', 'arg0')]) - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey::m_context [variable] - cls.add_instance_attribute('m_context', 'uint32_t', is_const=False) - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey::m_ts [variable] - cls.add_instance_attribute('m_ts', 'uint64_t', is_const=False) - ## scheduler.h (module 'core'): ns3::Scheduler::EventKey::m_uid [variable] - cls.add_instance_attribute('m_uid', 'uint32_t', is_const=False) - return - -def register_Ns3SimpleRefCount__Ns3AttributeAccessor_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeAccessor__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::AttributeAccessor, ns3::empty, ns3::DefaultDeleter< ns3::AttributeAccessor > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3AttributeChecker_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeChecker__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::AttributeChecker, ns3::empty, ns3::DefaultDeleter< ns3::AttributeChecker > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3AttributeValue_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeValue__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::AttributeValue, ns3::empty, ns3::DefaultDeleter< ns3::AttributeValue > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3CallbackImplBase_Ns3Empty_Ns3DefaultDeleter__lt__ns3CallbackImplBase__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::CallbackImplBase, ns3::empty, ns3::DefaultDeleter< ns3::CallbackImplBase > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3EventImpl_Ns3Empty_Ns3DefaultDeleter__lt__ns3EventImpl__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::EventImpl, ns3::empty, ns3::DefaultDeleter< ns3::EventImpl > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3NixVector_Ns3Empty_Ns3DefaultDeleter__lt__ns3NixVector__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::NixVector, ns3::empty, ns3::DefaultDeleter< ns3::NixVector > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3Packet_Ns3Empty_Ns3DefaultDeleter__lt__ns3Packet__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter< ns3::Packet > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimpleRefCount__Ns3TraceSourceAccessor_Ns3Empty_Ns3DefaultDeleter__lt__ns3TraceSourceAccessor__gt___methods(root_module, cls): - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] - cls.add_constructor([]) - ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] - cls.add_constructor([param('ns3::SimpleRefCount< ns3::TraceSourceAccessor, ns3::empty, ns3::DefaultDeleter< ns3::TraceSourceAccessor > > const &', 'o')]) - ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] - cls.add_method('Cleanup', - 'void', - [], - is_static=True) - return - -def register_Ns3SimulatorImpl_methods(root_module, cls): - ## simulator-impl.h (module 'core'): ns3::SimulatorImpl::SimulatorImpl() [constructor] - cls.add_constructor([]) - ## simulator-impl.h (module 'core'): ns3::SimulatorImpl::SimulatorImpl(ns3::SimulatorImpl const & arg0) [copy constructor] - cls.add_constructor([param('ns3::SimulatorImpl const &', 'arg0')]) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Cancel(ns3::EventId const & ev) [member function] - cls.add_method('Cancel', - 'void', - [param('ns3::EventId const &', 'ev')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Destroy() [member function] - cls.add_method('Destroy', - 'void', - [], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): uint32_t ns3::SimulatorImpl::GetContext() const [member function] - cls.add_method('GetContext', - 'uint32_t', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::Time ns3::SimulatorImpl::GetDelayLeft(ns3::EventId const & id) const [member function] - cls.add_method('GetDelayLeft', - 'ns3::Time', - [param('ns3::EventId const &', 'id')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::Time ns3::SimulatorImpl::GetMaximumSimulationTime() const [member function] - cls.add_method('GetMaximumSimulationTime', - 'ns3::Time', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): uint32_t ns3::SimulatorImpl::GetSystemId() const [member function] - cls.add_method('GetSystemId', - 'uint32_t', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): static ns3::TypeId ns3::SimulatorImpl::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## simulator-impl.h (module 'core'): bool ns3::SimulatorImpl::IsExpired(ns3::EventId const & ev) const [member function] - cls.add_method('IsExpired', - 'bool', - [param('ns3::EventId const &', 'ev')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): bool ns3::SimulatorImpl::IsFinished() const [member function] - cls.add_method('IsFinished', - 'bool', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::Time ns3::SimulatorImpl::Now() const [member function] - cls.add_method('Now', - 'ns3::Time', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Remove(ns3::EventId const & ev) [member function] - cls.add_method('Remove', - 'void', - [param('ns3::EventId const &', 'ev')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Run() [member function] - cls.add_method('Run', - 'void', - [], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::EventId ns3::SimulatorImpl::Schedule(ns3::Time const & time, ns3::EventImpl * event) [member function] - cls.add_method('Schedule', - 'ns3::EventId', - [param('ns3::Time const &', 'time'), param('ns3::EventImpl *', 'event')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::EventId ns3::SimulatorImpl::ScheduleDestroy(ns3::EventImpl * event) [member function] - cls.add_method('ScheduleDestroy', - 'ns3::EventId', - [param('ns3::EventImpl *', 'event')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): ns3::EventId ns3::SimulatorImpl::ScheduleNow(ns3::EventImpl * event) [member function] - cls.add_method('ScheduleNow', - 'ns3::EventId', - [param('ns3::EventImpl *', 'event')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::ScheduleWithContext(uint32_t context, ns3::Time const & time, ns3::EventImpl * event) [member function] - cls.add_method('ScheduleWithContext', - 'void', - [param('uint32_t', 'context'), param('ns3::Time const &', 'time'), param('ns3::EventImpl *', 'event')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::SetScheduler(ns3::ObjectFactory schedulerFactory) [member function] - cls.add_method('SetScheduler', - 'void', - [param('ns3::ObjectFactory', 'schedulerFactory')], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Stop() [member function] - cls.add_method('Stop', - 'void', - [], - is_pure_virtual=True, is_virtual=True) - ## simulator-impl.h (module 'core'): void ns3::SimulatorImpl::Stop(ns3::Time const & time) [member function] - cls.add_method('Stop', - 'void', - [param('ns3::Time const &', 'time')], - is_pure_virtual=True, is_virtual=True) - return - -def register_Ns3Time_methods(root_module, cls): - cls.add_binary_numeric_operator('+', root_module['ns3::Time'], root_module['ns3::Time'], param('ns3::Time const &', 'right')) - cls.add_binary_numeric_operator('-', root_module['ns3::Time'], root_module['ns3::Time'], param('ns3::Time const &', 'right')) - cls.add_binary_comparison_operator('<') - cls.add_binary_comparison_operator('>') - cls.add_binary_comparison_operator('!=') - cls.add_inplace_numeric_operator('+=', param('ns3::Time const &', 'right')) - cls.add_inplace_numeric_operator('-=', param('ns3::Time const &', 'right')) - cls.add_output_stream_operator() - cls.add_binary_comparison_operator('<=') - cls.add_binary_comparison_operator('==') - cls.add_binary_comparison_operator('>=') - ## nstime.h (module 'core'): ns3::Time::Time() [constructor] - cls.add_constructor([]) - ## nstime.h (module 'core'): ns3::Time::Time(ns3::Time const & o) [copy constructor] - cls.add_constructor([param('ns3::Time const &', 'o')]) - ## nstime.h (module 'core'): ns3::Time::Time(double v) [constructor] - cls.add_constructor([param('double', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(int v) [constructor] - cls.add_constructor([param('int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(long int v) [constructor] - cls.add_constructor([param('long int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(long long int v) [constructor] - cls.add_constructor([param('long long int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(unsigned int v) [constructor] - cls.add_constructor([param('unsigned int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(long unsigned int v) [constructor] - cls.add_constructor([param('long unsigned int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(long long unsigned int v) [constructor] - cls.add_constructor([param('long long unsigned int', 'v')]) - ## nstime.h (module 'core'): ns3::Time::Time(std::string const & s) [constructor] - cls.add_constructor([param('std::string const &', 's')]) - ## nstime.h (module 'core'): ns3::Time::Time(ns3::int64x64_t const & value) [constructor] - cls.add_constructor([param('ns3::int64x64_t const &', 'value')]) - ## nstime.h (module 'core'): int ns3::Time::Compare(ns3::Time const & o) const [member function] - cls.add_method('Compare', - 'int', - [param('ns3::Time const &', 'o')], - is_const=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::From(ns3::int64x64_t const & from, ns3::Time::Unit timeUnit) [member function] - cls.add_method('From', - 'ns3::Time', - [param('ns3::int64x64_t const &', 'from'), param('ns3::Time::Unit', 'timeUnit')], - is_static=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::From(ns3::int64x64_t const & value) [member function] - cls.add_method('From', - 'ns3::Time', - [param('ns3::int64x64_t const &', 'value')], - is_static=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::FromDouble(double value, ns3::Time::Unit timeUnit) [member function] - cls.add_method('FromDouble', - 'ns3::Time', - [param('double', 'value'), param('ns3::Time::Unit', 'timeUnit')], - is_static=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::FromInteger(uint64_t value, ns3::Time::Unit timeUnit) [member function] - cls.add_method('FromInteger', - 'ns3::Time', - [param('uint64_t', 'value'), param('ns3::Time::Unit', 'timeUnit')], - is_static=True) - ## nstime.h (module 'core'): double ns3::Time::GetDouble() const [member function] - cls.add_method('GetDouble', - 'double', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetFemtoSeconds() const [member function] - cls.add_method('GetFemtoSeconds', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetInteger() const [member function] - cls.add_method('GetInteger', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetMicroSeconds() const [member function] - cls.add_method('GetMicroSeconds', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetMilliSeconds() const [member function] - cls.add_method('GetMilliSeconds', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetNanoSeconds() const [member function] - cls.add_method('GetNanoSeconds', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetPicoSeconds() const [member function] - cls.add_method('GetPicoSeconds', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): static ns3::Time::Unit ns3::Time::GetResolution() [member function] - cls.add_method('GetResolution', - 'ns3::Time::Unit', - [], - is_static=True) - ## nstime.h (module 'core'): double ns3::Time::GetSeconds() const [member function] - cls.add_method('GetSeconds', - 'double', - [], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::GetTimeStep() const [member function] - cls.add_method('GetTimeStep', - 'int64_t', - [], - is_const=True) - ## nstime.h (module 'core'): bool ns3::Time::IsNegative() const [member function] - cls.add_method('IsNegative', - 'bool', - [], - is_const=True) - ## nstime.h (module 'core'): bool ns3::Time::IsPositive() const [member function] - cls.add_method('IsPositive', - 'bool', - [], - is_const=True) - ## nstime.h (module 'core'): bool ns3::Time::IsStrictlyNegative() const [member function] - cls.add_method('IsStrictlyNegative', - 'bool', - [], - is_const=True) - ## nstime.h (module 'core'): bool ns3::Time::IsStrictlyPositive() const [member function] - cls.add_method('IsStrictlyPositive', - 'bool', - [], - is_const=True) - ## nstime.h (module 'core'): bool ns3::Time::IsZero() const [member function] - cls.add_method('IsZero', - 'bool', - [], - is_const=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::MAX() [member function] - cls.add_method('MAX', - 'ns3::Time', - [], - is_static=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::MIN() [member function] - cls.add_method('MIN', - 'ns3::Time', - [], - is_static=True) - ## nstime.h (module 'core'): static void ns3::Time::SetResolution(ns3::Time::Unit resolution) [member function] - cls.add_method('SetResolution', - 'void', - [param('ns3::Time::Unit', 'resolution')], - is_static=True) - ## nstime.h (module 'core'): ns3::int64x64_t ns3::Time::To(ns3::Time::Unit timeUnit) const [member function] - cls.add_method('To', - 'ns3::int64x64_t', - [param('ns3::Time::Unit', 'timeUnit')], - is_const=True) - ## nstime.h (module 'core'): double ns3::Time::ToDouble(ns3::Time::Unit timeUnit) const [member function] - cls.add_method('ToDouble', - 'double', - [param('ns3::Time::Unit', 'timeUnit')], - is_const=True) - ## nstime.h (module 'core'): int64_t ns3::Time::ToInteger(ns3::Time::Unit timeUnit) const [member function] - cls.add_method('ToInteger', - 'int64_t', - [param('ns3::Time::Unit', 'timeUnit')], - is_const=True) - return - -def register_Ns3TraceSourceAccessor_methods(root_module, cls): - ## trace-source-accessor.h (module 'core'): ns3::TraceSourceAccessor::TraceSourceAccessor(ns3::TraceSourceAccessor const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TraceSourceAccessor const &', 'arg0')]) - ## trace-source-accessor.h (module 'core'): ns3::TraceSourceAccessor::TraceSourceAccessor() [constructor] - cls.add_constructor([]) - ## trace-source-accessor.h (module 'core'): bool ns3::TraceSourceAccessor::Connect(ns3::ObjectBase * obj, std::string context, ns3::CallbackBase const & cb) const [member function] - cls.add_method('Connect', - 'bool', - [param('ns3::ObjectBase *', 'obj', transfer_ownership=False), param('std::string', 'context'), param('ns3::CallbackBase const &', 'cb')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## trace-source-accessor.h (module 'core'): bool ns3::TraceSourceAccessor::ConnectWithoutContext(ns3::ObjectBase * obj, ns3::CallbackBase const & cb) const [member function] - cls.add_method('ConnectWithoutContext', - 'bool', - [param('ns3::ObjectBase *', 'obj', transfer_ownership=False), param('ns3::CallbackBase const &', 'cb')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## trace-source-accessor.h (module 'core'): bool ns3::TraceSourceAccessor::Disconnect(ns3::ObjectBase * obj, std::string context, ns3::CallbackBase const & cb) const [member function] - cls.add_method('Disconnect', - 'bool', - [param('ns3::ObjectBase *', 'obj', transfer_ownership=False), param('std::string', 'context'), param('ns3::CallbackBase const &', 'cb')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## trace-source-accessor.h (module 'core'): bool ns3::TraceSourceAccessor::DisconnectWithoutContext(ns3::ObjectBase * obj, ns3::CallbackBase const & cb) const [member function] - cls.add_method('DisconnectWithoutContext', - 'bool', - [param('ns3::ObjectBase *', 'obj', transfer_ownership=False), param('ns3::CallbackBase const &', 'cb')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3Trailer_methods(root_module, cls): - cls.add_output_stream_operator() - ## trailer.h (module 'network'): ns3::Trailer::Trailer() [constructor] - cls.add_constructor([]) - ## trailer.h (module 'network'): ns3::Trailer::Trailer(ns3::Trailer const & arg0) [copy constructor] - cls.add_constructor([param('ns3::Trailer const &', 'arg0')]) - ## trailer.h (module 'network'): uint32_t ns3::Trailer::Deserialize(ns3::Buffer::Iterator end) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('ns3::Buffer::Iterator', 'end')], - is_pure_virtual=True, is_virtual=True) - ## trailer.h (module 'network'): uint32_t ns3::Trailer::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## trailer.h (module 'network'): static ns3::TypeId ns3::Trailer::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## trailer.h (module 'network'): void ns3::Trailer::Print(std::ostream & os) const [member function] - cls.add_method('Print', - 'void', - [param('std::ostream &', 'os')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## trailer.h (module 'network'): void ns3::Trailer::Serialize(ns3::Buffer::Iterator start) const [member function] - cls.add_method('Serialize', - 'void', - [param('ns3::Buffer::Iterator', 'start')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3AttributeAccessor_methods(root_module, cls): - ## attribute.h (module 'core'): ns3::AttributeAccessor::AttributeAccessor(ns3::AttributeAccessor const & arg0) [copy constructor] - cls.add_constructor([param('ns3::AttributeAccessor const &', 'arg0')]) - ## attribute.h (module 'core'): ns3::AttributeAccessor::AttributeAccessor() [constructor] - cls.add_constructor([]) - ## attribute.h (module 'core'): bool ns3::AttributeAccessor::Get(ns3::ObjectBase const * object, ns3::AttributeValue & attribute) const [member function] - cls.add_method('Get', - 'bool', - [param('ns3::ObjectBase const *', 'object'), param('ns3::AttributeValue &', 'attribute')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeAccessor::HasGetter() const [member function] - cls.add_method('HasGetter', - 'bool', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeAccessor::HasSetter() const [member function] - cls.add_method('HasSetter', - 'bool', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeAccessor::Set(ns3::ObjectBase * object, ns3::AttributeValue const & value) const [member function] - cls.add_method('Set', - 'bool', - [param('ns3::ObjectBase *', 'object', transfer_ownership=False), param('ns3::AttributeValue const &', 'value')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3AttributeChecker_methods(root_module, cls): - ## attribute.h (module 'core'): ns3::AttributeChecker::AttributeChecker(ns3::AttributeChecker const & arg0) [copy constructor] - cls.add_constructor([param('ns3::AttributeChecker const &', 'arg0')]) - ## attribute.h (module 'core'): ns3::AttributeChecker::AttributeChecker() [constructor] - cls.add_constructor([]) - ## attribute.h (module 'core'): bool ns3::AttributeChecker::Check(ns3::AttributeValue const & value) const [member function] - cls.add_method('Check', - 'bool', - [param('ns3::AttributeValue const &', 'value')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeChecker::Copy(ns3::AttributeValue const & source, ns3::AttributeValue & destination) const [member function] - cls.add_method('Copy', - 'bool', - [param('ns3::AttributeValue const &', 'source'), param('ns3::AttributeValue &', 'destination')], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): ns3::Ptr ns3::AttributeChecker::Create() const [member function] - cls.add_method('Create', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): ns3::Ptr ns3::AttributeChecker::CreateValidValue(ns3::AttributeValue const & value) const [member function] - cls.add_method('CreateValidValue', - 'ns3::Ptr< ns3::AttributeValue >', - [param('ns3::AttributeValue const &', 'value')], - is_const=True) - ## attribute.h (module 'core'): std::string ns3::AttributeChecker::GetUnderlyingTypeInformation() const [member function] - cls.add_method('GetUnderlyingTypeInformation', - 'std::string', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): std::string ns3::AttributeChecker::GetValueTypeName() const [member function] - cls.add_method('GetValueTypeName', - 'std::string', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeChecker::HasUnderlyingTypeInformation() const [member function] - cls.add_method('HasUnderlyingTypeInformation', - 'bool', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3AttributeValue_methods(root_module, cls): - ## attribute.h (module 'core'): ns3::AttributeValue::AttributeValue(ns3::AttributeValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::AttributeValue const &', 'arg0')]) - ## attribute.h (module 'core'): ns3::AttributeValue::AttributeValue() [constructor] - cls.add_constructor([]) - ## attribute.h (module 'core'): ns3::Ptr ns3::AttributeValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_pure_virtual=True, is_const=True, is_virtual=True) - ## attribute.h (module 'core'): bool ns3::AttributeValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_pure_virtual=True, is_virtual=True) - ## attribute.h (module 'core'): std::string ns3::AttributeValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3CallbackChecker_methods(root_module, cls): - ## callback.h (module 'core'): ns3::CallbackChecker::CallbackChecker() [constructor] - cls.add_constructor([]) - ## callback.h (module 'core'): ns3::CallbackChecker::CallbackChecker(ns3::CallbackChecker const & arg0) [copy constructor] - cls.add_constructor([param('ns3::CallbackChecker const &', 'arg0')]) - return - -def register_Ns3CallbackImplBase_methods(root_module, cls): - ## callback.h (module 'core'): ns3::CallbackImplBase::CallbackImplBase() [constructor] - cls.add_constructor([]) - ## callback.h (module 'core'): ns3::CallbackImplBase::CallbackImplBase(ns3::CallbackImplBase const & arg0) [copy constructor] - cls.add_constructor([param('ns3::CallbackImplBase const &', 'arg0')]) - ## callback.h (module 'core'): bool ns3::CallbackImplBase::IsEqual(ns3::Ptr other) const [member function] - cls.add_method('IsEqual', - 'bool', - [param('ns3::Ptr< ns3::CallbackImplBase const >', 'other')], - is_pure_virtual=True, is_const=True, is_virtual=True) - return - -def register_Ns3CallbackValue_methods(root_module, cls): - ## callback.h (module 'core'): ns3::CallbackValue::CallbackValue(ns3::CallbackValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::CallbackValue const &', 'arg0')]) - ## callback.h (module 'core'): ns3::CallbackValue::CallbackValue() [constructor] - cls.add_constructor([]) - ## callback.h (module 'core'): ns3::CallbackValue::CallbackValue(ns3::CallbackBase const & base) [constructor] - cls.add_constructor([param('ns3::CallbackBase const &', 'base')]) - ## callback.h (module 'core'): ns3::Ptr ns3::CallbackValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_const=True, is_virtual=True) - ## callback.h (module 'core'): bool ns3::CallbackValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_virtual=True) - ## callback.h (module 'core'): std::string ns3::CallbackValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True, is_virtual=True) - ## callback.h (module 'core'): void ns3::CallbackValue::Set(ns3::CallbackBase base) [member function] - cls.add_method('Set', - 'void', - [param('ns3::CallbackBase', 'base')]) - return - -def register_Ns3DistributedSimulatorImpl_methods(root_module, cls): - ## distributed-simulator-impl.h (module 'mpi'): ns3::DistributedSimulatorImpl::DistributedSimulatorImpl(ns3::DistributedSimulatorImpl const & arg0) [copy constructor] - cls.add_constructor([param('ns3::DistributedSimulatorImpl const &', 'arg0')]) - ## distributed-simulator-impl.h (module 'mpi'): ns3::DistributedSimulatorImpl::DistributedSimulatorImpl() [constructor] - cls.add_constructor([]) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Cancel(ns3::EventId const & ev) [member function] - cls.add_method('Cancel', - 'void', - [param('ns3::EventId const &', 'ev')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Destroy() [member function] - cls.add_method('Destroy', - 'void', - [], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::DistributedSimulatorImpl::GetContext() const [member function] - cls.add_method('GetContext', - 'uint32_t', - [], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::Time ns3::DistributedSimulatorImpl::GetDelayLeft(ns3::EventId const & id) const [member function] - cls.add_method('GetDelayLeft', - 'ns3::Time', - [param('ns3::EventId const &', 'id')], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::Time ns3::DistributedSimulatorImpl::GetMaximumSimulationTime() const [member function] - cls.add_method('GetMaximumSimulationTime', - 'ns3::Time', - [], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::DistributedSimulatorImpl::GetSystemId() const [member function] - cls.add_method('GetSystemId', - 'uint32_t', - [], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): static ns3::TypeId ns3::DistributedSimulatorImpl::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## distributed-simulator-impl.h (module 'mpi'): bool ns3::DistributedSimulatorImpl::IsExpired(ns3::EventId const & ev) const [member function] - cls.add_method('IsExpired', - 'bool', - [param('ns3::EventId const &', 'ev')], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): bool ns3::DistributedSimulatorImpl::IsFinished() const [member function] - cls.add_method('IsFinished', - 'bool', - [], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::Time ns3::DistributedSimulatorImpl::Now() const [member function] - cls.add_method('Now', - 'ns3::Time', - [], - is_const=True, is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Remove(ns3::EventId const & ev) [member function] - cls.add_method('Remove', - 'void', - [param('ns3::EventId const &', 'ev')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Run() [member function] - cls.add_method('Run', - 'void', - [], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::EventId ns3::DistributedSimulatorImpl::Schedule(ns3::Time const & time, ns3::EventImpl * event) [member function] - cls.add_method('Schedule', - 'ns3::EventId', - [param('ns3::Time const &', 'time'), param('ns3::EventImpl *', 'event')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::EventId ns3::DistributedSimulatorImpl::ScheduleDestroy(ns3::EventImpl * event) [member function] - cls.add_method('ScheduleDestroy', - 'ns3::EventId', - [param('ns3::EventImpl *', 'event')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): ns3::EventId ns3::DistributedSimulatorImpl::ScheduleNow(ns3::EventImpl * event) [member function] - cls.add_method('ScheduleNow', - 'ns3::EventId', - [param('ns3::EventImpl *', 'event')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::ScheduleWithContext(uint32_t context, ns3::Time const & time, ns3::EventImpl * event) [member function] - cls.add_method('ScheduleWithContext', - 'void', - [param('uint32_t', 'context'), param('ns3::Time const &', 'time'), param('ns3::EventImpl *', 'event')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::SetScheduler(ns3::ObjectFactory schedulerFactory) [member function] - cls.add_method('SetScheduler', - 'void', - [param('ns3::ObjectFactory', 'schedulerFactory')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Stop() [member function] - cls.add_method('Stop', - 'void', - [], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::Stop(ns3::Time const & time) [member function] - cls.add_method('Stop', - 'void', - [param('ns3::Time const &', 'time')], - is_virtual=True) - ## distributed-simulator-impl.h (module 'mpi'): void ns3::DistributedSimulatorImpl::DoDispose() [member function] - cls.add_method('DoDispose', - 'void', - [], - visibility='private', is_virtual=True) - return - -def register_Ns3EmptyAttributeValue_methods(root_module, cls): - ## attribute.h (module 'core'): ns3::EmptyAttributeValue::EmptyAttributeValue(ns3::EmptyAttributeValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::EmptyAttributeValue const &', 'arg0')]) - ## attribute.h (module 'core'): ns3::EmptyAttributeValue::EmptyAttributeValue() [constructor] - cls.add_constructor([]) - ## attribute.h (module 'core'): ns3::Ptr ns3::EmptyAttributeValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_const=True, visibility='private', is_virtual=True) - ## attribute.h (module 'core'): bool ns3::EmptyAttributeValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - visibility='private', is_virtual=True) - ## attribute.h (module 'core'): std::string ns3::EmptyAttributeValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True, visibility='private', is_virtual=True) - return - -def register_Ns3EventImpl_methods(root_module, cls): - ## event-impl.h (module 'core'): ns3::EventImpl::EventImpl(ns3::EventImpl const & arg0) [copy constructor] - cls.add_constructor([param('ns3::EventImpl const &', 'arg0')]) - ## event-impl.h (module 'core'): ns3::EventImpl::EventImpl() [constructor] - cls.add_constructor([]) - ## event-impl.h (module 'core'): void ns3::EventImpl::Cancel() [member function] - cls.add_method('Cancel', - 'void', - []) - ## event-impl.h (module 'core'): void ns3::EventImpl::Invoke() [member function] - cls.add_method('Invoke', - 'void', - []) - ## event-impl.h (module 'core'): bool ns3::EventImpl::IsCancelled() [member function] - cls.add_method('IsCancelled', - 'bool', - []) - ## event-impl.h (module 'core'): void ns3::EventImpl::Notify() [member function] - cls.add_method('Notify', - 'void', - [], - is_pure_virtual=True, visibility='protected', is_virtual=True) - return - -def register_Ns3MpiReceiver_methods(root_module, cls): - ## mpi-receiver.h (module 'mpi'): ns3::MpiReceiver::MpiReceiver() [constructor] - cls.add_constructor([]) - ## mpi-receiver.h (module 'mpi'): ns3::MpiReceiver::MpiReceiver(ns3::MpiReceiver const & arg0) [copy constructor] - cls.add_constructor([param('ns3::MpiReceiver const &', 'arg0')]) - ## mpi-receiver.h (module 'mpi'): static ns3::TypeId ns3::MpiReceiver::GetTypeId() [member function] - cls.add_method('GetTypeId', - 'ns3::TypeId', - [], - is_static=True) - ## mpi-receiver.h (module 'mpi'): void ns3::MpiReceiver::Receive(ns3::Ptr p) [member function] - cls.add_method('Receive', - 'void', - [param('ns3::Ptr< ns3::Packet >', 'p')]) - ## mpi-receiver.h (module 'mpi'): void ns3::MpiReceiver::SetReceiveCallback(ns3::Callback, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function] - cls.add_method('SetReceiveCallback', - 'void', - [param('ns3::Callback< void, ns3::Ptr< ns3::Packet >, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')]) - return - -def register_Ns3NixVector_methods(root_module, cls): - cls.add_output_stream_operator() - ## nix-vector.h (module 'network'): ns3::NixVector::NixVector() [constructor] - cls.add_constructor([]) - ## nix-vector.h (module 'network'): ns3::NixVector::NixVector(ns3::NixVector const & o) [copy constructor] - cls.add_constructor([param('ns3::NixVector const &', 'o')]) - ## nix-vector.h (module 'network'): void ns3::NixVector::AddNeighborIndex(uint32_t newBits, uint32_t numberOfBits) [member function] - cls.add_method('AddNeighborIndex', - 'void', - [param('uint32_t', 'newBits'), param('uint32_t', 'numberOfBits')]) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::BitCount(uint32_t numberOfNeighbors) const [member function] - cls.add_method('BitCount', - 'uint32_t', - [param('uint32_t', 'numberOfNeighbors')], - is_const=True) - ## nix-vector.h (module 'network'): ns3::Ptr ns3::NixVector::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::NixVector >', - [], - is_const=True) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::Deserialize(uint32_t const * buffer, uint32_t size) [member function] - cls.add_method('Deserialize', - 'uint32_t', - [param('uint32_t const *', 'buffer'), param('uint32_t', 'size')]) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::ExtractNeighborIndex(uint32_t numberOfBits) [member function] - cls.add_method('ExtractNeighborIndex', - 'uint32_t', - [param('uint32_t', 'numberOfBits')]) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::GetRemainingBits() [member function] - cls.add_method('GetRemainingBits', - 'uint32_t', - []) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_const=True) - ## nix-vector.h (module 'network'): uint32_t ns3::NixVector::Serialize(uint32_t * buffer, uint32_t maxSize) const [member function] - cls.add_method('Serialize', - 'uint32_t', - [param('uint32_t *', 'buffer'), param('uint32_t', 'maxSize')], - is_const=True) - return - -def register_Ns3ObjectFactoryChecker_methods(root_module, cls): - ## object-factory.h (module 'core'): ns3::ObjectFactoryChecker::ObjectFactoryChecker() [constructor] - cls.add_constructor([]) - ## object-factory.h (module 'core'): ns3::ObjectFactoryChecker::ObjectFactoryChecker(ns3::ObjectFactoryChecker const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ObjectFactoryChecker const &', 'arg0')]) - return - -def register_Ns3ObjectFactoryValue_methods(root_module, cls): - ## object-factory.h (module 'core'): ns3::ObjectFactoryValue::ObjectFactoryValue() [constructor] - cls.add_constructor([]) - ## object-factory.h (module 'core'): ns3::ObjectFactoryValue::ObjectFactoryValue(ns3::ObjectFactoryValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::ObjectFactoryValue const &', 'arg0')]) - ## object-factory.h (module 'core'): ns3::ObjectFactoryValue::ObjectFactoryValue(ns3::ObjectFactory const & value) [constructor] - cls.add_constructor([param('ns3::ObjectFactory const &', 'value')]) - ## object-factory.h (module 'core'): ns3::Ptr ns3::ObjectFactoryValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_const=True, is_virtual=True) - ## object-factory.h (module 'core'): bool ns3::ObjectFactoryValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_virtual=True) - ## object-factory.h (module 'core'): ns3::ObjectFactory ns3::ObjectFactoryValue::Get() const [member function] - cls.add_method('Get', - 'ns3::ObjectFactory', - [], - is_const=True) - ## object-factory.h (module 'core'): std::string ns3::ObjectFactoryValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True, is_virtual=True) - ## object-factory.h (module 'core'): void ns3::ObjectFactoryValue::Set(ns3::ObjectFactory const & value) [member function] - cls.add_method('Set', - 'void', - [param('ns3::ObjectFactory const &', 'value')]) - return - -def register_Ns3Packet_methods(root_module, cls): - cls.add_output_stream_operator() - ## packet.h (module 'network'): ns3::Packet::Packet() [constructor] - cls.add_constructor([]) - ## packet.h (module 'network'): ns3::Packet::Packet(ns3::Packet const & o) [copy constructor] - cls.add_constructor([param('ns3::Packet const &', 'o')]) - ## packet.h (module 'network'): ns3::Packet::Packet(uint32_t size) [constructor] - cls.add_constructor([param('uint32_t', 'size')]) - ## packet.h (module 'network'): ns3::Packet::Packet(uint8_t const * buffer, uint32_t size, bool magic) [constructor] - cls.add_constructor([param('uint8_t const *', 'buffer'), param('uint32_t', 'size'), param('bool', 'magic')]) - ## packet.h (module 'network'): ns3::Packet::Packet(uint8_t const * buffer, uint32_t size) [constructor] - cls.add_constructor([param('uint8_t const *', 'buffer'), param('uint32_t', 'size')]) - ## packet.h (module 'network'): void ns3::Packet::AddAtEnd(ns3::Ptr packet) [member function] - cls.add_method('AddAtEnd', - 'void', - [param('ns3::Ptr< ns3::Packet const >', 'packet')]) - ## packet.h (module 'network'): void ns3::Packet::AddByteTag(ns3::Tag const & tag) const [member function] - cls.add_method('AddByteTag', - 'void', - [param('ns3::Tag const &', 'tag')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::AddHeader(ns3::Header const & header) [member function] - cls.add_method('AddHeader', - 'void', - [param('ns3::Header const &', 'header')]) - ## packet.h (module 'network'): void ns3::Packet::AddPacketTag(ns3::Tag const & tag) const [member function] - cls.add_method('AddPacketTag', - 'void', - [param('ns3::Tag const &', 'tag')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::AddPaddingAtEnd(uint32_t size) [member function] - cls.add_method('AddPaddingAtEnd', - 'void', - [param('uint32_t', 'size')]) - ## packet.h (module 'network'): void ns3::Packet::AddTrailer(ns3::Trailer const & trailer) [member function] - cls.add_method('AddTrailer', - 'void', - [param('ns3::Trailer const &', 'trailer')]) - ## packet.h (module 'network'): ns3::PacketMetadata::ItemIterator ns3::Packet::BeginItem() const [member function] - cls.add_method('BeginItem', - 'ns3::PacketMetadata::ItemIterator', - [], - is_const=True) - ## packet.h (module 'network'): ns3::Ptr ns3::Packet::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::Packet >', - [], - is_const=True) - ## packet.h (module 'network'): uint32_t ns3::Packet::CopyData(uint8_t * buffer, uint32_t size) const [member function] - cls.add_method('CopyData', - 'uint32_t', - [param('uint8_t *', 'buffer'), param('uint32_t', 'size')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::CopyData(std::ostream * os, uint32_t size) const [member function] - cls.add_method('CopyData', - 'void', - [param('std::ostream *', 'os'), param('uint32_t', 'size')], - is_const=True) - ## packet.h (module 'network'): ns3::Ptr ns3::Packet::CreateFragment(uint32_t start, uint32_t length) const [member function] - cls.add_method('CreateFragment', - 'ns3::Ptr< ns3::Packet >', - [param('uint32_t', 'start'), param('uint32_t', 'length')], - is_const=True) - ## packet.h (module 'network'): static void ns3::Packet::EnableChecking() [member function] - cls.add_method('EnableChecking', - 'void', - [], - is_static=True) - ## packet.h (module 'network'): static void ns3::Packet::EnablePrinting() [member function] - cls.add_method('EnablePrinting', - 'void', - [], - is_static=True) - ## packet.h (module 'network'): bool ns3::Packet::FindFirstMatchingByteTag(ns3::Tag & tag) const [member function] - cls.add_method('FindFirstMatchingByteTag', - 'bool', - [param('ns3::Tag &', 'tag')], - is_const=True) - ## packet.h (module 'network'): ns3::ByteTagIterator ns3::Packet::GetByteTagIterator() const [member function] - cls.add_method('GetByteTagIterator', - 'ns3::ByteTagIterator', - [], - is_const=True) - ## packet.h (module 'network'): ns3::Ptr ns3::Packet::GetNixVector() const [member function] - cls.add_method('GetNixVector', - 'ns3::Ptr< ns3::NixVector >', - [], - is_const=True) - ## packet.h (module 'network'): ns3::PacketTagIterator ns3::Packet::GetPacketTagIterator() const [member function] - cls.add_method('GetPacketTagIterator', - 'ns3::PacketTagIterator', - [], - is_const=True) - ## packet.h (module 'network'): uint32_t ns3::Packet::GetSerializedSize() const [member function] - cls.add_method('GetSerializedSize', - 'uint32_t', - [], - is_const=True) - ## packet.h (module 'network'): uint32_t ns3::Packet::GetSize() const [member function] - cls.add_method('GetSize', - 'uint32_t', - [], - is_const=True) - ## packet.h (module 'network'): uint64_t ns3::Packet::GetUid() const [member function] - cls.add_method('GetUid', - 'uint64_t', - [], - is_const=True) - ## packet.h (module 'network'): uint8_t const * ns3::Packet::PeekData() const [member function] - cls.add_method('PeekData', - 'uint8_t const *', - [], - deprecated=True, is_const=True) - ## packet.h (module 'network'): uint32_t ns3::Packet::PeekHeader(ns3::Header & header) const [member function] - cls.add_method('PeekHeader', - 'uint32_t', - [param('ns3::Header &', 'header')], - is_const=True) - ## packet.h (module 'network'): bool ns3::Packet::PeekPacketTag(ns3::Tag & tag) const [member function] - cls.add_method('PeekPacketTag', - 'bool', - [param('ns3::Tag &', 'tag')], - is_const=True) - ## packet.h (module 'network'): uint32_t ns3::Packet::PeekTrailer(ns3::Trailer & trailer) [member function] - cls.add_method('PeekTrailer', - 'uint32_t', - [param('ns3::Trailer &', 'trailer')]) - ## packet.h (module 'network'): void ns3::Packet::Print(std::ostream & os) const [member function] - cls.add_method('Print', - 'void', - [param('std::ostream &', 'os')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::PrintByteTags(std::ostream & os) const [member function] - cls.add_method('PrintByteTags', - 'void', - [param('std::ostream &', 'os')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::PrintPacketTags(std::ostream & os) const [member function] - cls.add_method('PrintPacketTags', - 'void', - [param('std::ostream &', 'os')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::RemoveAllByteTags() [member function] - cls.add_method('RemoveAllByteTags', - 'void', - []) - ## packet.h (module 'network'): void ns3::Packet::RemoveAllPacketTags() [member function] - cls.add_method('RemoveAllPacketTags', - 'void', - []) - ## packet.h (module 'network'): void ns3::Packet::RemoveAtEnd(uint32_t size) [member function] - cls.add_method('RemoveAtEnd', - 'void', - [param('uint32_t', 'size')]) - ## packet.h (module 'network'): void ns3::Packet::RemoveAtStart(uint32_t size) [member function] - cls.add_method('RemoveAtStart', - 'void', - [param('uint32_t', 'size')]) - ## packet.h (module 'network'): uint32_t ns3::Packet::RemoveHeader(ns3::Header & header) [member function] - cls.add_method('RemoveHeader', - 'uint32_t', - [param('ns3::Header &', 'header')]) - ## packet.h (module 'network'): bool ns3::Packet::RemovePacketTag(ns3::Tag & tag) [member function] - cls.add_method('RemovePacketTag', - 'bool', - [param('ns3::Tag &', 'tag')]) - ## packet.h (module 'network'): uint32_t ns3::Packet::RemoveTrailer(ns3::Trailer & trailer) [member function] - cls.add_method('RemoveTrailer', - 'uint32_t', - [param('ns3::Trailer &', 'trailer')]) - ## packet.h (module 'network'): bool ns3::Packet::ReplacePacketTag(ns3::Tag & tag) [member function] - cls.add_method('ReplacePacketTag', - 'bool', - [param('ns3::Tag &', 'tag')]) - ## packet.h (module 'network'): uint32_t ns3::Packet::Serialize(uint8_t * buffer, uint32_t maxSize) const [member function] - cls.add_method('Serialize', - 'uint32_t', - [param('uint8_t *', 'buffer'), param('uint32_t', 'maxSize')], - is_const=True) - ## packet.h (module 'network'): void ns3::Packet::SetNixVector(ns3::Ptr arg0) [member function] - cls.add_method('SetNixVector', - 'void', - [param('ns3::Ptr< ns3::NixVector >', 'arg0')]) - return - -def register_Ns3TimeValue_methods(root_module, cls): - ## nstime.h (module 'core'): ns3::TimeValue::TimeValue() [constructor] - cls.add_constructor([]) - ## nstime.h (module 'core'): ns3::TimeValue::TimeValue(ns3::TimeValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TimeValue const &', 'arg0')]) - ## nstime.h (module 'core'): ns3::TimeValue::TimeValue(ns3::Time const & value) [constructor] - cls.add_constructor([param('ns3::Time const &', 'value')]) - ## nstime.h (module 'core'): ns3::Ptr ns3::TimeValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_const=True, is_virtual=True) - ## nstime.h (module 'core'): bool ns3::TimeValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_virtual=True) - ## nstime.h (module 'core'): ns3::Time ns3::TimeValue::Get() const [member function] - cls.add_method('Get', - 'ns3::Time', - [], - is_const=True) - ## nstime.h (module 'core'): std::string ns3::TimeValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True, is_virtual=True) - ## nstime.h (module 'core'): void ns3::TimeValue::Set(ns3::Time const & value) [member function] - cls.add_method('Set', - 'void', - [param('ns3::Time const &', 'value')]) - return - -def register_Ns3TypeIdChecker_methods(root_module, cls): - ## type-id.h (module 'core'): ns3::TypeIdChecker::TypeIdChecker() [constructor] - cls.add_constructor([]) - ## type-id.h (module 'core'): ns3::TypeIdChecker::TypeIdChecker(ns3::TypeIdChecker const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TypeIdChecker const &', 'arg0')]) - return - -def register_Ns3TypeIdValue_methods(root_module, cls): - ## type-id.h (module 'core'): ns3::TypeIdValue::TypeIdValue() [constructor] - cls.add_constructor([]) - ## type-id.h (module 'core'): ns3::TypeIdValue::TypeIdValue(ns3::TypeIdValue const & arg0) [copy constructor] - cls.add_constructor([param('ns3::TypeIdValue const &', 'arg0')]) - ## type-id.h (module 'core'): ns3::TypeIdValue::TypeIdValue(ns3::TypeId const & value) [constructor] - cls.add_constructor([param('ns3::TypeId const &', 'value')]) - ## type-id.h (module 'core'): ns3::Ptr ns3::TypeIdValue::Copy() const [member function] - cls.add_method('Copy', - 'ns3::Ptr< ns3::AttributeValue >', - [], - is_const=True, is_virtual=True) - ## type-id.h (module 'core'): bool ns3::TypeIdValue::DeserializeFromString(std::string value, ns3::Ptr checker) [member function] - cls.add_method('DeserializeFromString', - 'bool', - [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_virtual=True) - ## type-id.h (module 'core'): ns3::TypeId ns3::TypeIdValue::Get() const [member function] - cls.add_method('Get', - 'ns3::TypeId', - [], - is_const=True) - ## type-id.h (module 'core'): std::string ns3::TypeIdValue::SerializeToString(ns3::Ptr checker) const [member function] - cls.add_method('SerializeToString', - 'std::string', - [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], - is_const=True, is_virtual=True) - ## type-id.h (module 'core'): void ns3::TypeIdValue::Set(ns3::TypeId const & value) [member function] - cls.add_method('Set', - 'void', - [param('ns3::TypeId const &', 'value')]) - return - -def register_functions(root_module): - module = root_module - register_functions_ns3_FatalImpl(module.get_submodule('FatalImpl'), root_module) - return - -def register_functions_ns3_FatalImpl(module, root_module): - return - -def main(): - out = FileCodeSink(sys.stdout) - root_module = module_init() - register_types(root_module) - register_methods(root_module) - register_functions(root_module) - root_module.generate(out) - -if __name__ == '__main__': - main() - diff --git a/src/mpi/bindings/modulegen__gcc_LP64.py b/src/mpi/bindings/modulegen__gcc_LP64.py index c26676200..77ef06f92 100644 --- a/src/mpi/bindings/modulegen__gcc_LP64.py +++ b/src/mpi/bindings/modulegen__gcc_LP64.py @@ -42,6 +42,8 @@ def register_types(module): module.add_class('CallbackBase', import_from_module='ns.core') ## event-id.h (module 'core'): ns3::EventId [class] module.add_class('EventId', import_from_module='ns.core') + ## hash.h (module 'core'): ns3::Hasher [class] + module.add_class('Hasher', import_from_module='ns.core') ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage [class] module.add_class('LbtsMessage') ## mpi-interface.h (module 'mpi'): ns3::MpiInterface [class] @@ -114,6 +116,8 @@ def register_types(module): module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::CallbackImplBase', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::EventImpl', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) + ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] + module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::Hash::Implementation', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] module.add_class('SimpleRefCount', automatic_type_narrowing=True, import_from_module='ns.core', template_parameters=['ns3::NixVector', 'ns3::empty', 'ns3::DefaultDeleter'], parent=root_module['ns3::empty'], memory_policy=cppclass.ReferenceCountingMethodsPolicy(incref_method='Ref', decref_method='Unref', peekref_method='GetReferenceCount')) ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount > [class] @@ -172,11 +176,47 @@ def register_types(module): nested_module = module.add_cpp_namespace('FatalImpl') register_types_ns3_FatalImpl(nested_module) + + ## Register a nested module for the namespace Hash + + nested_module = module.add_cpp_namespace('Hash') + register_types_ns3_Hash(nested_module) + def register_types_ns3_FatalImpl(module): root_module = module.get_root() +def register_types_ns3_Hash(module): + root_module = module.get_root() + + ## hash-function.h (module 'core'): ns3::Hash::Implementation [class] + module.add_class('Implementation', import_from_module='ns.core', parent=root_module['ns3::SimpleRefCount< ns3::Hash::Implementation, ns3::empty, ns3::DefaultDeleter >']) + typehandlers.add_type_alias('uint32_t ( * ) ( char const *, size_t ) *', 'ns3::Hash::Hash32Function_ptr') + typehandlers.add_type_alias('uint32_t ( * ) ( char const *, size_t ) **', 'ns3::Hash::Hash32Function_ptr*') + typehandlers.add_type_alias('uint32_t ( * ) ( char const *, size_t ) *&', 'ns3::Hash::Hash32Function_ptr&') + typehandlers.add_type_alias('uint64_t ( * ) ( char const *, size_t ) *', 'ns3::Hash::Hash64Function_ptr') + typehandlers.add_type_alias('uint64_t ( * ) ( char const *, size_t ) **', 'ns3::Hash::Hash64Function_ptr*') + typehandlers.add_type_alias('uint64_t ( * ) ( char const *, size_t ) *&', 'ns3::Hash::Hash64Function_ptr&') + + ## Register a nested module for the namespace Function + + nested_module = module.add_cpp_namespace('Function') + register_types_ns3_Hash_Function(nested_module) + + +def register_types_ns3_Hash_Function(module): + root_module = module.get_root() + + ## hash-fnv.h (module 'core'): ns3::Hash::Function::Fnv1a [class] + module.add_class('Fnv1a', import_from_module='ns.core', parent=root_module['ns3::Hash::Implementation']) + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash32 [class] + module.add_class('Hash32', import_from_module='ns.core', parent=root_module['ns3::Hash::Implementation']) + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash64 [class] + module.add_class('Hash64', import_from_module='ns.core', parent=root_module['ns3::Hash::Implementation']) + ## hash-murmur3.h (module 'core'): ns3::Hash::Function::Murmur3 [class] + module.add_class('Murmur3', import_from_module='ns.core', parent=root_module['ns3::Hash::Implementation']) + def register_methods(root_module): register_Ns3AttributeConstructionList_methods(root_module, root_module['ns3::AttributeConstructionList']) register_Ns3AttributeConstructionListItem_methods(root_module, root_module['ns3::AttributeConstructionList::Item']) @@ -189,6 +229,7 @@ def register_methods(root_module): register_Ns3ByteTagListIteratorItem_methods(root_module, root_module['ns3::ByteTagList::Iterator::Item']) register_Ns3CallbackBase_methods(root_module, root_module['ns3::CallbackBase']) register_Ns3EventId_methods(root_module, root_module['ns3::EventId']) + register_Ns3Hasher_methods(root_module, root_module['ns3::Hasher']) register_Ns3LbtsMessage_methods(root_module, root_module['ns3::LbtsMessage']) register_Ns3MpiInterface_methods(root_module, root_module['ns3::MpiInterface']) register_Ns3ObjectBase_methods(root_module, root_module['ns3::ObjectBase']) @@ -222,6 +263,7 @@ def register_methods(root_module): register_Ns3SimpleRefCount__Ns3AttributeValue_Ns3Empty_Ns3DefaultDeleter__lt__ns3AttributeValue__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::AttributeValue, ns3::empty, ns3::DefaultDeleter >']) register_Ns3SimpleRefCount__Ns3CallbackImplBase_Ns3Empty_Ns3DefaultDeleter__lt__ns3CallbackImplBase__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::CallbackImplBase, ns3::empty, ns3::DefaultDeleter >']) register_Ns3SimpleRefCount__Ns3EventImpl_Ns3Empty_Ns3DefaultDeleter__lt__ns3EventImpl__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::EventImpl, ns3::empty, ns3::DefaultDeleter >']) + register_Ns3SimpleRefCount__Ns3HashImplementation_Ns3Empty_Ns3DefaultDeleter__lt__ns3HashImplementation__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::Hash::Implementation, ns3::empty, ns3::DefaultDeleter >']) register_Ns3SimpleRefCount__Ns3NixVector_Ns3Empty_Ns3DefaultDeleter__lt__ns3NixVector__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::NixVector, ns3::empty, ns3::DefaultDeleter >']) register_Ns3SimpleRefCount__Ns3Packet_Ns3Empty_Ns3DefaultDeleter__lt__ns3Packet__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::Packet, ns3::empty, ns3::DefaultDeleter >']) register_Ns3SimpleRefCount__Ns3TraceSourceAccessor_Ns3Empty_Ns3DefaultDeleter__lt__ns3TraceSourceAccessor__gt___methods(root_module, root_module['ns3::SimpleRefCount< ns3::TraceSourceAccessor, ns3::empty, ns3::DefaultDeleter >']) @@ -246,6 +288,11 @@ def register_methods(root_module): register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue']) register_Ns3TypeIdChecker_methods(root_module, root_module['ns3::TypeIdChecker']) register_Ns3TypeIdValue_methods(root_module, root_module['ns3::TypeIdValue']) + register_Ns3HashImplementation_methods(root_module, root_module['ns3::Hash::Implementation']) + register_Ns3HashFunctionFnv1a_methods(root_module, root_module['ns3::Hash::Function::Fnv1a']) + register_Ns3HashFunctionHash32_methods(root_module, root_module['ns3::Hash::Function::Hash32']) + register_Ns3HashFunctionHash64_methods(root_module, root_module['ns3::Hash::Function::Hash64']) + register_Ns3HashFunctionMurmur3_methods(root_module, root_module['ns3::Hash::Function::Murmur3']) return def register_Ns3AttributeConstructionList_methods(root_module, cls): @@ -701,13 +748,42 @@ def register_Ns3EventId_methods(root_module, cls): is_const=True) return +def register_Ns3Hasher_methods(root_module, cls): + ## hash.h (module 'core'): ns3::Hasher::Hasher(ns3::Hasher const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hasher const &', 'arg0')]) + ## hash.h (module 'core'): ns3::Hasher::Hasher() [constructor] + cls.add_constructor([]) + ## hash.h (module 'core'): ns3::Hasher::Hasher(ns3::Ptr hp) [constructor] + cls.add_constructor([param('ns3::Ptr< ns3::Hash::Implementation >', 'hp')]) + ## hash.h (module 'core'): uint32_t ns3::Hasher::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')]) + ## hash.h (module 'core'): uint32_t ns3::Hasher::GetHash32(std::string const s) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('std::string const', 's')]) + ## hash.h (module 'core'): uint64_t ns3::Hasher::GetHash64(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('char const *', 'buffer'), param('size_t const', 'size')]) + ## hash.h (module 'core'): uint64_t ns3::Hasher::GetHash64(std::string const s) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('std::string const', 's')]) + ## hash.h (module 'core'): ns3::Hasher & ns3::Hasher::clear() [member function] + cls.add_method('clear', + 'ns3::Hasher &', + []) + return + def register_Ns3LbtsMessage_methods(root_module, cls): ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage(ns3::LbtsMessage const & arg0) [copy constructor] cls.add_constructor([param('ns3::LbtsMessage const &', 'arg0')]) ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage() [constructor] cls.add_constructor([]) - ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage(uint32_t rxc, uint32_t txc, uint32_t id, ns3::Time const & t) [constructor] - cls.add_constructor([param('uint32_t', 'rxc'), param('uint32_t', 'txc'), param('uint32_t', 'id'), param('ns3::Time const &', 't')]) + ## distributed-simulator-impl.h (module 'mpi'): ns3::LbtsMessage::LbtsMessage(uint32_t rxc, uint32_t txc, uint32_t id, bool isFinished, ns3::Time const & t) [constructor] + cls.add_constructor([param('uint32_t', 'rxc'), param('uint32_t', 'txc'), param('uint32_t', 'id'), param('bool', 'isFinished'), param('ns3::Time const &', 't')]) ## distributed-simulator-impl.h (module 'mpi'): uint32_t ns3::LbtsMessage::GetMyId() [member function] cls.add_method('GetMyId', 'uint32_t', @@ -724,6 +800,10 @@ def register_Ns3LbtsMessage_methods(root_module, cls): cls.add_method('GetTxCount', 'uint32_t', []) + ## distributed-simulator-impl.h (module 'mpi'): bool ns3::LbtsMessage::IsFinished() [member function] + cls.add_method('IsFinished', + 'bool', + []) return def register_Ns3MpiInterface_methods(root_module, cls): @@ -1262,6 +1342,11 @@ def register_Ns3TypeId_methods(root_module, cls): 'std::string', [], is_const=True) + ## type-id.h (module 'core'): uint32_t ns3::TypeId::GetHash() const [member function] + cls.add_method('GetHash', + 'uint32_t', + [], + is_const=True) ## type-id.h (module 'core'): std::string ns3::TypeId::GetName() const [member function] cls.add_method('GetName', 'std::string', @@ -1321,6 +1406,16 @@ def register_Ns3TypeId_methods(root_module, cls): 'bool', [param('std::string', 'name'), param('ns3::TypeId::AttributeInformation *', 'info', transfer_ownership=False)], is_const=True) + ## type-id.h (module 'core'): static ns3::TypeId ns3::TypeId::LookupByHash(uint32_t hash) [member function] + cls.add_method('LookupByHash', + 'ns3::TypeId', + [param('uint32_t', 'hash')], + is_static=True) + ## type-id.h (module 'core'): static bool ns3::TypeId::LookupByHashFailSafe(uint32_t hash, ns3::TypeId * tid) [member function] + cls.add_method('LookupByHashFailSafe', + 'bool', + [param('uint32_t', 'hash'), param('ns3::TypeId *', 'tid')], + is_static=True) ## type-id.h (module 'core'): static ns3::TypeId ns3::TypeId::LookupByName(std::string name) [member function] cls.add_method('LookupByName', 'ns3::TypeId', @@ -1748,6 +1843,18 @@ def register_Ns3SimpleRefCount__Ns3EventImpl_Ns3Empty_Ns3DefaultDeleter__lt__ns3 is_static=True) return +def register_Ns3SimpleRefCount__Ns3HashImplementation_Ns3Empty_Ns3DefaultDeleter__lt__ns3HashImplementation__gt___methods(root_module, cls): + ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] + cls.add_constructor([]) + ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount(ns3::SimpleRefCount > const & o) [copy constructor] + cls.add_constructor([param('ns3::SimpleRefCount< ns3::Hash::Implementation, ns3::empty, ns3::DefaultDeleter< ns3::Hash::Implementation > > const &', 'o')]) + ## simple-ref-count.h (module 'core'): static void ns3::SimpleRefCount >::Cleanup() [member function] + cls.add_method('Cleanup', + 'void', + [], + is_static=True) + return + def register_Ns3SimpleRefCount__Ns3NixVector_Ns3Empty_Ns3DefaultDeleter__lt__ns3NixVector__gt___methods(root_module, cls): ## simple-ref-count.h (module 'core'): ns3::SimpleRefCount >::SimpleRefCount() [constructor] cls.add_constructor([]) @@ -2020,13 +2127,13 @@ def register_Ns3Time_methods(root_module, cls): 'bool', [], is_const=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::MAX() [member function] - cls.add_method('MAX', + ## nstime.h (module 'core'): static ns3::Time ns3::Time::Max() [member function] + cls.add_method('Max', 'ns3::Time', [], is_static=True) - ## nstime.h (module 'core'): static ns3::Time ns3::Time::MIN() [member function] - cls.add_method('MIN', + ## nstime.h (module 'core'): static ns3::Time ns3::Time::Min() [member function] + cls.add_method('Min', 'ns3::Time', [], is_static=True) @@ -2765,14 +2872,127 @@ def register_Ns3TypeIdValue_methods(root_module, cls): [param('ns3::TypeId const &', 'value')]) return +def register_Ns3HashImplementation_methods(root_module, cls): + ## hash-function.h (module 'core'): ns3::Hash::Implementation::Implementation(ns3::Hash::Implementation const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hash::Implementation const &', 'arg0')]) + ## hash-function.h (module 'core'): ns3::Hash::Implementation::Implementation() [constructor] + cls.add_constructor([]) + ## hash-function.h (module 'core'): uint32_t ns3::Hash::Implementation::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_pure_virtual=True, is_virtual=True) + ## hash-function.h (module 'core'): uint64_t ns3::Hash::Implementation::GetHash64(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-function.h (module 'core'): void ns3::Hash::Implementation::clear() [member function] + cls.add_method('clear', + 'void', + [], + is_pure_virtual=True, is_virtual=True) + return + +def register_Ns3HashFunctionFnv1a_methods(root_module, cls): + ## hash-fnv.h (module 'core'): ns3::Hash::Function::Fnv1a::Fnv1a(ns3::Hash::Function::Fnv1a const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hash::Function::Fnv1a const &', 'arg0')]) + ## hash-fnv.h (module 'core'): ns3::Hash::Function::Fnv1a::Fnv1a() [constructor] + cls.add_constructor([]) + ## hash-fnv.h (module 'core'): uint32_t ns3::Hash::Function::Fnv1a::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-fnv.h (module 'core'): uint64_t ns3::Hash::Function::Fnv1a::GetHash64(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-fnv.h (module 'core'): void ns3::Hash::Function::Fnv1a::clear() [member function] + cls.add_method('clear', + 'void', + [], + is_virtual=True) + return + +def register_Ns3HashFunctionHash32_methods(root_module, cls): + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash32::Hash32(ns3::Hash::Function::Hash32 const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hash::Function::Hash32 const &', 'arg0')]) + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash32::Hash32(ns3::Hash::Hash32Function_ptr hp) [constructor] + cls.add_constructor([param('ns3::Hash::Hash32Function_ptr', 'hp')]) + ## hash-function.h (module 'core'): uint32_t ns3::Hash::Function::Hash32::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-function.h (module 'core'): void ns3::Hash::Function::Hash32::clear() [member function] + cls.add_method('clear', + 'void', + [], + is_virtual=True) + return + +def register_Ns3HashFunctionHash64_methods(root_module, cls): + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash64::Hash64(ns3::Hash::Function::Hash64 const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hash::Function::Hash64 const &', 'arg0')]) + ## hash-function.h (module 'core'): ns3::Hash::Function::Hash64::Hash64(ns3::Hash::Hash64Function_ptr hp) [constructor] + cls.add_constructor([param('ns3::Hash::Hash64Function_ptr', 'hp')]) + ## hash-function.h (module 'core'): uint32_t ns3::Hash::Function::Hash64::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-function.h (module 'core'): uint64_t ns3::Hash::Function::Hash64::GetHash64(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-function.h (module 'core'): void ns3::Hash::Function::Hash64::clear() [member function] + cls.add_method('clear', + 'void', + [], + is_virtual=True) + return + +def register_Ns3HashFunctionMurmur3_methods(root_module, cls): + ## hash-murmur3.h (module 'core'): ns3::Hash::Function::Murmur3::Murmur3(ns3::Hash::Function::Murmur3 const & arg0) [copy constructor] + cls.add_constructor([param('ns3::Hash::Function::Murmur3 const &', 'arg0')]) + ## hash-murmur3.h (module 'core'): ns3::Hash::Function::Murmur3::Murmur3() [constructor] + cls.add_constructor([]) + ## hash-murmur3.h (module 'core'): uint32_t ns3::Hash::Function::Murmur3::GetHash32(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash32', + 'uint32_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-murmur3.h (module 'core'): uint64_t ns3::Hash::Function::Murmur3::GetHash64(char const * buffer, size_t const size) [member function] + cls.add_method('GetHash64', + 'uint64_t', + [param('char const *', 'buffer'), param('size_t const', 'size')], + is_virtual=True) + ## hash-murmur3.h (module 'core'): void ns3::Hash::Function::Murmur3::clear() [member function] + cls.add_method('clear', + 'void', + [], + is_virtual=True) + return + def register_functions(root_module): module = root_module register_functions_ns3_FatalImpl(module.get_submodule('FatalImpl'), root_module) + register_functions_ns3_Hash(module.get_submodule('Hash'), root_module) return def register_functions_ns3_FatalImpl(module, root_module): return +def register_functions_ns3_Hash(module, root_module): + register_functions_ns3_Hash_Function(module.get_submodule('Function'), root_module) + return + +def register_functions_ns3_Hash_Function(module, root_module): + return + def main(): out = FileCodeSink(sys.stdout) root_module = module_init() diff --git a/src/mpi/model/distributed-simulator-impl.cc b/src/mpi/model/distributed-simulator-impl.cc index e49444999..3f48530e5 100644 --- a/src/mpi/model/distributed-simulator-impl.cc +++ b/src/mpi/model/distributed-simulator-impl.cc @@ -14,6 +14,9 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Author: George Riley + * + * Some updates to this code were developed under a research contract + * sponsored by the Army Research Laboratory. (April 30, 2013) */ #include "distributed-simulator-impl.h" @@ -68,6 +71,12 @@ LbtsMessage::GetMyId () return m_myId; } +bool +LbtsMessage::IsFinished () +{ + return m_isFinished; +} + Time DistributedSimulatorImpl::m_lookAhead = Seconds (0); TypeId @@ -153,6 +162,9 @@ DistributedSimulatorImpl::CalculateLookAhead (void) } else { + DistributedSimulatorImpl::m_lookAhead = GetMaximumSimulationTime (); + m_grantedTime = GetMaximumSimulationTime (); + NodeContainer c = NodeContainer::GetGlobal (); for (NodeContainer::Iterator iter = c.Begin (); iter != c.End (); ++iter) { @@ -197,11 +209,7 @@ DistributedSimulatorImpl::CalculateLookAhead (void) // it the new lookAhead. TimeValue delay; channel->GetAttribute ("Delay", delay); - if (DistributedSimulatorImpl::m_lookAhead.IsZero ()) - { - DistributedSimulatorImpl::m_lookAhead = delay.Get (); - m_grantedTime = delay.Get (); - } + if (delay.Get ().GetSeconds () < DistributedSimulatorImpl::m_lookAhead.GetSeconds ()) { DistributedSimulatorImpl::m_lookAhead = delay.Get (); @@ -210,6 +218,49 @@ DistributedSimulatorImpl::CalculateLookAhead (void) } } } + + /* + * Compute the maximum inter-task latency and use that value + * for tasks with no inter-task links. + * + * Special processing for edge cases. For tasks that have no + * nodes need to determine a reasonable lookAhead value. Infinity + * would work correctly but introduces a performance issue; tasks + * with an infinite lookAhead would execute all their events + * before doing an AllGather resulting in very bad load balance + * during the first time window. Since all tasks participate in + * the AllGather it is desirable to have all the tasks advance in + * simulation time at a similar rate assuming roughly equal events + * per unit of simulation time in order to equalize the amount of + * work per time window. + */ + long sendbuf; + long recvbuf; + + /* Tasks with no inter-task links do not contribute to max */ + if (m_lookAhead == GetMaximumSimulationTime ()) + { + sendbuf = 0; + } + else + { + sendbuf = m_lookAhead.GetInteger (); + } + + MPI_Allreduce (&sendbuf, &recvbuf, 1, MPI_LONG, MPI_MAX, MPI_COMM_WORLD); + + /* For nodes that did not compute a lookahead use max from ranks + * that did compute a value. An edge case occurs if all nodes have + * no inter-task links (max will be 0 in this case). Use infinity so all tasks + * will proceed without synchronization until a single AllGather + * occurs when all tasks have finished. + */ + if (m_lookAhead == GetMaximumSimulationTime () && recvbuf != 0) + { + m_lookAhead = Time (recvbuf); + m_grantedTime = m_lookAhead; + } + #else NS_FATAL_ERROR ("Can't use distributed simulator without MPI compiled in"); #endif @@ -249,6 +300,12 @@ DistributedSimulatorImpl::ProcessOneEvent (void) bool DistributedSimulatorImpl::IsFinished (void) const +{ + return m_globalFinished; +} + +bool +DistributedSimulatorImpl::IsLocalFinished (void) const { return m_events->IsEmpty () || m_stop; } @@ -256,9 +313,14 @@ DistributedSimulatorImpl::IsFinished (void) const uint64_t DistributedSimulatorImpl::NextTs (void) const { - NS_ASSERT (!m_events->IsEmpty ()); - Scheduler::Event ev = m_events->PeekNext (); - return ev.key.m_ts; + // If local MPI task is has no more events or stop was called + // next event time is infinity. + if (IsLocalFinished ()) { + return GetMaximumSimulationTime ().GetTimeStep (); + } else { + Scheduler::Event ev = m_events->PeekNext (); + return ev.key.m_ts; + } } Time @@ -273,11 +335,19 @@ DistributedSimulatorImpl::Run (void) #ifdef NS3_MPI CalculateLookAhead (); m_stop = false; - while (!m_events->IsEmpty () && !m_stop) + while (!m_globalFinished) { Time nextTime = Next (); - if (nextTime > m_grantedTime) - { // Can't process, calculate a new LBTS + + // If local event is beyond grantedTime then need to synchronize + // with other tasks to determine new time window. If local task + // is finished then continue to participate in allgather + // synchronizations with other tasks until all tasks have + // completed. + if (nextTime > m_grantedTime || IsLocalFinished () ) + { + + // Can't process next event, calculate a new LBTS // First receive any pending messages MpiInterface::ReceiveMessages (); // reset next time @@ -285,7 +355,7 @@ DistributedSimulatorImpl::Run (void) // And check for send completes MpiInterface::TestSendComplete (); // Finally calculate the lbts - LbtsMessage lMsg (MpiInterface::GetRxCount (), MpiInterface::GetTxCount (), m_myId, nextTime); + LbtsMessage lMsg (MpiInterface::GetRxCount (), MpiInterface::GetTxCount (), m_myId, IsLocalFinished (), nextTime); m_pLBTS[m_myId] = lMsg; MPI_Allgather (&lMsg, sizeof (LbtsMessage), MPI_BYTE, m_pLBTS, sizeof (LbtsMessage), MPI_BYTE, MPI_COMM_WORLD); @@ -295,6 +365,7 @@ DistributedSimulatorImpl::Run (void) // so we don't update the granted time. uint32_t totRx = m_pLBTS[0].GetRxCount (); uint32_t totTx = m_pLBTS[0].GetTxCount (); + m_globalFinished = m_pLBTS[0].IsFinished (); for (uint32_t i = 1; i < m_systemCount; ++i) { @@ -304,15 +375,29 @@ DistributedSimulatorImpl::Run (void) } totRx += m_pLBTS[i].GetRxCount (); totTx += m_pLBTS[i].GetTxCount (); - + m_globalFinished &= m_pLBTS[i].IsFinished (); } if (totRx == totTx) { - m_grantedTime = smallestTime + DistributedSimulatorImpl::m_lookAhead; + // If lookahead is infinite then granted time should be as well. + // Covers the edge case if all the tasks have no inter tasks + // links, prevents overflow of granted time. + if (m_lookAhead == GetMaximumSimulationTime ()) + { + m_grantedTime = GetMaximumSimulationTime (); + } + else + { + // Overflow is possible here if near end of representable time. + m_grantedTime = smallestTime + m_lookAhead; + } } } - if (nextTime <= m_grantedTime) - { // Save to process + + // Execute next event if it is within the current time window. + // Local task may be completed. + if ( (nextTime <= m_grantedTime) && (!IsLocalFinished ()) ) + { // Safe to process ProcessOneEvent (); } } diff --git a/src/mpi/model/distributed-simulator-impl.h b/src/mpi/model/distributed-simulator-impl.h index 60d2fd48f..000ae4733 100644 --- a/src/mpi/model/distributed-simulator-impl.h +++ b/src/mpi/model/distributed-simulator-impl.h @@ -14,6 +14,9 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Author: George Riley + * + * Some updates to this code were developed under a research contract + * sponsored by the Army Research Laboratory. (April 30, 2013) */ #ifndef DISTRIBUTED_SIMULATOR_IMPL_H @@ -39,7 +42,8 @@ public: LbtsMessage () : m_txCount (0), m_rxCount (0), - m_myId (0) + m_myId (0), + m_isFinished (false) { } @@ -49,11 +53,12 @@ public: * \param id mpi rank * \param t smallest time */ - LbtsMessage (uint32_t rxc, uint32_t txc, uint32_t id, const Time& t) + LbtsMessage (uint32_t rxc, uint32_t txc, uint32_t id, bool isFinished, const Time& t) : m_txCount (txc), m_rxCount (rxc), m_myId (id), - m_smallestTime (t) + m_smallestTime (t), + m_isFinished (isFinished) { } @@ -76,11 +81,14 @@ public: */ uint32_t GetMyId (); + bool IsFinished (); + private: uint32_t m_txCount; uint32_t m_rxCount; uint32_t m_myId; Time m_smallestTime; + bool m_isFinished; }; /** @@ -120,6 +128,7 @@ public: private: virtual void DoDispose (void); void CalculateLookAhead (void); + bool IsLocalFinished (void) const; void ProcessOneEvent (void); uint64_t NextTs (void) const; @@ -128,6 +137,7 @@ private: DestroyEvents m_destroyEvents; bool m_stop; + bool m_globalFinished; // Are all parallel instances completed. Ptr m_events; uint32_t m_uid; uint32_t m_currentUid;