Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
authorGustavo J. A. M. Carneiro <gjc@inescporto.pt>
Sat, 08 Nov 2008 15:00:28 +0000
changeset 38557fdcbeea6c4f
parent 3853 f04e7f61b1ed
child 3856 7e9406b15666
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.

This commit will change a lot the scanned API definitions, once, but should allow much more stable scanning in the future, as right now only types were being sorted, but free functions can jump up or down when different people on different machines scan the API. Well, no more will that happen in the future, I hope.
bindings/python/callbacks_list.py
bindings/python/ns3_module_bridge.py
bindings/python/ns3_module_common.py
bindings/python/ns3_module_contrib.py
bindings/python/ns3_module_core.py
bindings/python/ns3_module_csma.py
bindings/python/ns3_module_emu.py
bindings/python/ns3_module_global_routing.py
bindings/python/ns3_module_helper.py
bindings/python/ns3_module_internet_stack.py
bindings/python/ns3_module_mobility.py
bindings/python/ns3_module_node.py
bindings/python/ns3_module_olsr.py
bindings/python/ns3_module_onoff.py
bindings/python/ns3_module_packet_sink.py
bindings/python/ns3_module_point_to_point.py
bindings/python/ns3_module_simulator.py
bindings/python/ns3_module_stats.py
bindings/python/ns3_module_udp_echo.py
bindings/python/ns3_module_v4ping.py
bindings/python/ns3_module_wifi.py
bindings/python/ns3modulegen_generated.py
bindings/python/wscript
     1.1 --- a/bindings/python/callbacks_list.py	Fri Nov 07 19:51:00 2008 +0000
     1.2 +++ b/bindings/python/callbacks_list.py	Sat Nov 08 15:00:28 2008 +0000
     1.3 @@ -1,10 +1,10 @@
     1.4  callback_classes = [
     1.5      ['void', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.6 +    ['void', 'ns3::Ptr<ns3::Packet>', 'ns3::Mac48Address', 'ns3::Mac48Address', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.7      ['void', 'ns3::Ptr<ns3::Socket>', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.8      ['void', 'ns3::Ptr<ns3::Socket>', 'unsigned int', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.9      ['void', 'ns3::Ptr<ns3::Socket>', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
    1.10      ['bool', 'ns3::Ptr<ns3::Socket>', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
    1.11 -    ['void', 'ns3::Ptr<ns3::Packet>', 'ns3::Mac48Address', 'ns3::Mac48Address', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
    1.12      ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
    1.13      ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty'],
    1.14      ['void', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
     2.1 --- a/bindings/python/ns3_module_bridge.py	Fri Nov 07 19:51:00 2008 +0000
     2.2 +++ b/bindings/python/ns3_module_bridge.py	Sat Nov 08 15:00:28 2008 +0000
     2.3 @@ -8,10 +8,10 @@
     2.4      ## bridge-net-device.h: ns3::BridgeNetDevice [class]
     2.5      module.add_class('BridgeNetDevice', parent=root_module['ns3::NetDevice'])
     2.6      
     2.7 -    ## Register a nested module for the namespace internal
     2.8 +    ## Register a nested module for the namespace Config
     2.9      
    2.10 -    nested_module = module.add_cpp_namespace('internal')
    2.11 -    register_types_ns3_internal(nested_module)
    2.12 +    nested_module = module.add_cpp_namespace('Config')
    2.13 +    register_types_ns3_Config(nested_module)
    2.14      
    2.15      
    2.16      ## Register a nested module for the namespace TimeStepPrecision
    2.17 @@ -20,10 +20,10 @@
    2.18      register_types_ns3_TimeStepPrecision(nested_module)
    2.19      
    2.20      
    2.21 -    ## Register a nested module for the namespace Config
    2.22 +    ## Register a nested module for the namespace internal
    2.23      
    2.24 -    nested_module = module.add_cpp_namespace('Config')
    2.25 -    register_types_ns3_Config(nested_module)
    2.26 +    nested_module = module.add_cpp_namespace('internal')
    2.27 +    register_types_ns3_internal(nested_module)
    2.28      
    2.29      
    2.30      ## Register a nested module for the namespace olsr
    2.31 @@ -32,7 +32,7 @@
    2.32      register_types_ns3_olsr(nested_module)
    2.33      
    2.34  
    2.35 -def register_types_ns3_internal(module):
    2.36 +def register_types_ns3_Config(module):
    2.37      root_module = module.get_root()
    2.38      
    2.39  
    2.40 @@ -40,7 +40,7 @@
    2.41      root_module = module.get_root()
    2.42      
    2.43  
    2.44 -def register_types_ns3_Config(module):
    2.45 +def register_types_ns3_internal(module):
    2.46      root_module = module.get_root()
    2.47      
    2.48  
    2.49 @@ -208,6 +208,11 @@
    2.50                     'bool', 
    2.51                     [], 
    2.52                     is_const=True, is_virtual=True)
    2.53 +    ## bridge-net-device.h: ns3::Address ns3::BridgeNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
    2.54 +    cls.add_method('GetMulticast', 
    2.55 +                   'ns3::Address', 
    2.56 +                   [param('ns3::Ipv6Address', 'addr')], 
    2.57 +                   is_const=True, is_virtual=True)
    2.58      ## bridge-net-device.h: void ns3::BridgeNetDevice::DoDispose() [member function]
    2.59      cls.add_method('DoDispose', 
    2.60                     'void', 
    2.61 @@ -242,21 +247,21 @@
    2.62  
    2.63  def register_functions(root_module):
    2.64      module = root_module
    2.65 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    2.66 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    2.67      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    2.68 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    2.69 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    2.70      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    2.71      return
    2.72  
    2.73 +def register_functions_ns3_Config(module, root_module):
    2.74 +    return
    2.75 +
    2.76 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    2.77 +    return
    2.78 +
    2.79  def register_functions_ns3_internal(module, root_module):
    2.80      return
    2.81  
    2.82 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    2.83 -    return
    2.84 -
    2.85 -def register_functions_ns3_Config(module, root_module):
    2.86 -    return
    2.87 -
    2.88  def register_functions_ns3_olsr(module, root_module):
    2.89      return
    2.90  
     3.1 --- a/bindings/python/ns3_module_common.py	Fri Nov 07 19:51:00 2008 +0000
     3.2 +++ b/bindings/python/ns3_module_common.py	Sat Nov 08 15:00:28 2008 +0000
     3.3 @@ -54,10 +54,10 @@
     3.4      ## error-model.h: ns3::RateErrorModel [class]
     3.5      module.add_class('RateErrorModel', parent=root_module['ns3::ErrorModel'])
     3.6      
     3.7 -    ## Register a nested module for the namespace internal
     3.8 +    ## Register a nested module for the namespace Config
     3.9      
    3.10 -    nested_module = module.add_cpp_namespace('internal')
    3.11 -    register_types_ns3_internal(nested_module)
    3.12 +    nested_module = module.add_cpp_namespace('Config')
    3.13 +    register_types_ns3_Config(nested_module)
    3.14      
    3.15      
    3.16      ## Register a nested module for the namespace TimeStepPrecision
    3.17 @@ -66,10 +66,10 @@
    3.18      register_types_ns3_TimeStepPrecision(nested_module)
    3.19      
    3.20      
    3.21 -    ## Register a nested module for the namespace Config
    3.22 +    ## Register a nested module for the namespace internal
    3.23      
    3.24 -    nested_module = module.add_cpp_namespace('Config')
    3.25 -    register_types_ns3_Config(nested_module)
    3.26 +    nested_module = module.add_cpp_namespace('internal')
    3.27 +    register_types_ns3_internal(nested_module)
    3.28      
    3.29      
    3.30      ## Register a nested module for the namespace olsr
    3.31 @@ -78,7 +78,7 @@
    3.32      register_types_ns3_olsr(nested_module)
    3.33      
    3.34  
    3.35 -def register_types_ns3_internal(module):
    3.36 +def register_types_ns3_Config(module):
    3.37      root_module = module.get_root()
    3.38      
    3.39  
    3.40 @@ -86,7 +86,7 @@
    3.41      root_module = module.get_root()
    3.42      
    3.43  
    3.44 -def register_types_ns3_Config(module):
    3.45 +def register_types_ns3_internal(module):
    3.46      root_module = module.get_root()
    3.47      
    3.48  
    3.49 @@ -1118,21 +1118,21 @@
    3.50      module.add_function('MakeDataRateChecker', 
    3.51                          'ns3::Ptr< ns3::AttributeChecker const >', 
    3.52                          [])
    3.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    3.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    3.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    3.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    3.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    3.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    3.59      return
    3.60  
    3.61 +def register_functions_ns3_Config(module, root_module):
    3.62 +    return
    3.63 +
    3.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    3.65 +    return
    3.66 +
    3.67  def register_functions_ns3_internal(module, root_module):
    3.68      return
    3.69  
    3.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    3.71 -    return
    3.72 -
    3.73 -def register_functions_ns3_Config(module, root_module):
    3.74 -    return
    3.75 -
    3.76  def register_functions_ns3_olsr(module, root_module):
    3.77      return
    3.78  
     4.1 --- a/bindings/python/ns3_module_contrib.py	Fri Nov 07 19:51:00 2008 +0000
     4.2 +++ b/bindings/python/ns3_module_contrib.py	Sat Nov 08 15:00:28 2008 +0000
     4.3 @@ -20,10 +20,10 @@
     4.4      ## config-store.h: ns3::ConfigStore [class]
     4.5      module.add_class('ConfigStore', parent=root_module['ns3::ObjectBase'])
     4.6      
     4.7 -    ## Register a nested module for the namespace internal
     4.8 +    ## Register a nested module for the namespace Config
     4.9      
    4.10 -    nested_module = module.add_cpp_namespace('internal')
    4.11 -    register_types_ns3_internal(nested_module)
    4.12 +    nested_module = module.add_cpp_namespace('Config')
    4.13 +    register_types_ns3_Config(nested_module)
    4.14      
    4.15      
    4.16      ## Register a nested module for the namespace TimeStepPrecision
    4.17 @@ -32,10 +32,10 @@
    4.18      register_types_ns3_TimeStepPrecision(nested_module)
    4.19      
    4.20      
    4.21 -    ## Register a nested module for the namespace Config
    4.22 +    ## Register a nested module for the namespace internal
    4.23      
    4.24 -    nested_module = module.add_cpp_namespace('Config')
    4.25 -    register_types_ns3_Config(nested_module)
    4.26 +    nested_module = module.add_cpp_namespace('internal')
    4.27 +    register_types_ns3_internal(nested_module)
    4.28      
    4.29      
    4.30      ## Register a nested module for the namespace olsr
    4.31 @@ -44,7 +44,7 @@
    4.32      register_types_ns3_olsr(nested_module)
    4.33      
    4.34  
    4.35 -def register_types_ns3_internal(module):
    4.36 +def register_types_ns3_Config(module):
    4.37      root_module = module.get_root()
    4.38      
    4.39  
    4.40 @@ -52,7 +52,7 @@
    4.41      root_module = module.get_root()
    4.42      
    4.43  
    4.44 -def register_types_ns3_Config(module):
    4.45 +def register_types_ns3_internal(module):
    4.46      root_module = module.get_root()
    4.47      
    4.48  
    4.49 @@ -184,21 +184,21 @@
    4.50  
    4.51  def register_functions(root_module):
    4.52      module = root_module
    4.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    4.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    4.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    4.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    4.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    4.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    4.59      return
    4.60  
    4.61 +def register_functions_ns3_Config(module, root_module):
    4.62 +    return
    4.63 +
    4.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    4.65 +    return
    4.66 +
    4.67  def register_functions_ns3_internal(module, root_module):
    4.68      return
    4.69  
    4.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    4.71 -    return
    4.72 -
    4.73 -def register_functions_ns3_Config(module, root_module):
    4.74 -    return
    4.75 -
    4.76  def register_functions_ns3_olsr(module, root_module):
    4.77      return
    4.78  
     5.1 --- a/bindings/python/ns3_module_core.py	Fri Nov 07 19:51:00 2008 +0000
     5.2 +++ b/bindings/python/ns3_module_core.py	Sat Nov 08 15:00:28 2008 +0000
     5.3 @@ -164,10 +164,10 @@
     5.4      ## traced-value.h: ns3::TracedValue<unsigned int> [class]
     5.5      root_module['ns3::TracedValue< unsigned int >'].implicitly_converts_to(root_module['ns3::EnumValue'])
     5.6      
     5.7 -    ## Register a nested module for the namespace internal
     5.8 +    ## Register a nested module for the namespace Config
     5.9      
    5.10 -    nested_module = module.add_cpp_namespace('internal')
    5.11 -    register_types_ns3_internal(nested_module)
    5.12 +    nested_module = module.add_cpp_namespace('Config')
    5.13 +    register_types_ns3_Config(nested_module)
    5.14      
    5.15      
    5.16      ## Register a nested module for the namespace TimeStepPrecision
    5.17 @@ -176,10 +176,10 @@
    5.18      register_types_ns3_TimeStepPrecision(nested_module)
    5.19      
    5.20      
    5.21 -    ## Register a nested module for the namespace Config
    5.22 +    ## Register a nested module for the namespace internal
    5.23      
    5.24 -    nested_module = module.add_cpp_namespace('Config')
    5.25 -    register_types_ns3_Config(nested_module)
    5.26 +    nested_module = module.add_cpp_namespace('internal')
    5.27 +    register_types_ns3_internal(nested_module)
    5.28      
    5.29      
    5.30      ## Register a nested module for the namespace olsr
    5.31 @@ -188,14 +188,6 @@
    5.32      register_types_ns3_olsr(nested_module)
    5.33      
    5.34  
    5.35 -def register_types_ns3_internal(module):
    5.36 -    root_module = module.get_root()
    5.37 -    
    5.38 -
    5.39 -def register_types_ns3_TimeStepPrecision(module):
    5.40 -    root_module = module.get_root()
    5.41 -    
    5.42 -
    5.43  def register_types_ns3_Config(module):
    5.44      root_module = module.get_root()
    5.45      
    5.46 @@ -203,6 +195,14 @@
    5.47      module.add_class('MatchContainer')
    5.48      module.add_container('std::vector< ns3::Ptr< ns3::Object > >', 'ns3::Ptr< ns3::Object >', container_type='vector')
    5.49  
    5.50 +def register_types_ns3_TimeStepPrecision(module):
    5.51 +    root_module = module.get_root()
    5.52 +    
    5.53 +
    5.54 +def register_types_ns3_internal(module):
    5.55 +    root_module = module.get_root()
    5.56 +    
    5.57 +
    5.58  def register_types_ns3_olsr(module):
    5.59      root_module = module.get_root()
    5.60      
    5.61 @@ -1879,7 +1879,7 @@
    5.62      cls.add_method('ConnectWithoutContext', 
    5.63                     'void', 
    5.64                     [param('ns3::CallbackBase const &', 'cb')])
    5.65 -    ## traced-value.h: void ns3::TracedValue<unsigned int>::Connect(ns3::CallbackBase const & cb, std::basic_string<char,std::char_traits<char>,std::allocator<char> > path) [member function]
    5.66 +    ## traced-value.h: void ns3::TracedValue<unsigned int>::Connect(ns3::CallbackBase const & cb, std::string path) [member function]
    5.67      cls.add_method('Connect', 
    5.68                     'void', 
    5.69                     [param('ns3::CallbackBase const &', 'cb'), param('std::string', 'path')])
    5.70 @@ -1887,7 +1887,7 @@
    5.71      cls.add_method('DisconnectWithoutContext', 
    5.72                     'void', 
    5.73                     [param('ns3::CallbackBase const &', 'cb')])
    5.74 -    ## traced-value.h: void ns3::TracedValue<unsigned int>::Disconnect(ns3::CallbackBase const & cb, std::basic_string<char,std::char_traits<char>,std::allocator<char> > path) [member function]
    5.75 +    ## traced-value.h: void ns3::TracedValue<unsigned int>::Disconnect(ns3::CallbackBase const & cb, std::string path) [member function]
    5.76      cls.add_method('Disconnect', 
    5.77                     'void', 
    5.78                     [param('ns3::CallbackBase const &', 'cb'), param('std::string', 'path')])
    5.79 @@ -1963,10 +1963,64 @@
    5.80  
    5.81  def register_functions(root_module):
    5.82      module = root_module
    5.83 +    ## breakpoint.h: extern void ns3::BreakpointFallback() [free function]
    5.84 +    module.add_function('BreakpointFallback', 
    5.85 +                        'void', 
    5.86 +                        [])
    5.87 +    ## ptr.h: extern ns3::Ptr<ns3::ObjectVectorValue> ns3::Create() [free function]
    5.88 +    module.add_function('Create', 
    5.89 +                        'ns3::Ptr< ns3::ObjectVectorValue >', 
    5.90 +                        [], 
    5.91 +                        template_parameters=['ns3::ObjectVectorValue'])
    5.92 +    ## ptr.h: extern ns3::Ptr<ns3::PointerValue> ns3::Create() [free function]
    5.93 +    module.add_function('Create', 
    5.94 +                        'ns3::Ptr< ns3::PointerValue >', 
    5.95 +                        [], 
    5.96 +                        template_parameters=['ns3::PointerValue'])
    5.97 +    ## log.h: extern void ns3::LogComponentDisable(char const * name, ns3::LogLevel level) [free function]
    5.98 +    module.add_function('LogComponentDisable', 
    5.99 +                        'void', 
   5.100 +                        [param('char const *', 'name'), param('ns3::LogLevel', 'level')])
   5.101 +    ## log.h: extern void ns3::LogComponentDisableAll(ns3::LogLevel level) [free function]
   5.102 +    module.add_function('LogComponentDisableAll', 
   5.103 +                        'void', 
   5.104 +                        [param('ns3::LogLevel', 'level')])
   5.105 +    ## log.h: extern void ns3::LogComponentEnable(char const * name, ns3::LogLevel level) [free function]
   5.106 +    module.add_function('LogComponentEnable', 
   5.107 +                        'void', 
   5.108 +                        [param('char const *', 'name'), param('ns3::LogLevel', 'level')])
   5.109 +    ## log.h: extern void ns3::LogComponentEnableAll(ns3::LogLevel level) [free function]
   5.110 +    module.add_function('LogComponentEnableAll', 
   5.111 +                        'void', 
   5.112 +                        [param('ns3::LogLevel', 'level')])
   5.113      ## boolean.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeBooleanChecker() [free function]
   5.114      module.add_function('MakeBooleanChecker', 
   5.115                          'ns3::Ptr< ns3::AttributeChecker const >', 
   5.116                          [])
   5.117 +    ## callback.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeCallbackChecker() [free function]
   5.118 +    module.add_function('MakeCallbackChecker', 
   5.119 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.120 +                        [])
   5.121 +    ## enum.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeEnumChecker(int v1, std::string n1, int v2=0, std::string n2="", int v3=0, std::string n3="", int v4=0, std::string n4="", int v5=0, std::string n5="", int v6=0, std::string n6="", int v7=0, std::string n7="", int v8=0, std::string n8="", int v9=0, std::string n9="", int v10=0, std::string n10="", int v11=0, std::string n11="", int v12=0, std::string n12="") [free function]
   5.122 +    module.add_function('MakeEnumChecker', 
   5.123 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.124 +                        [param('int', 'v1'), param('std::string', 'n1'), param('int', 'v2', default_value='0'), param('std::string', 'n2', default_value='""'), param('int', 'v3', default_value='0'), param('std::string', 'n3', default_value='""'), param('int', 'v4', default_value='0'), param('std::string', 'n4', default_value='""'), param('int', 'v5', default_value='0'), param('std::string', 'n5', default_value='""'), param('int', 'v6', default_value='0'), param('std::string', 'n6', default_value='""'), param('int', 'v7', default_value='0'), param('std::string', 'n7', default_value='""'), param('int', 'v8', default_value='0'), param('std::string', 'n8', default_value='""'), param('int', 'v9', default_value='0'), param('std::string', 'n9', default_value='""'), param('int', 'v10', default_value='0'), param('std::string', 'n10', default_value='""'), param('int', 'v11', default_value='0'), param('std::string', 'n11', default_value='""'), param('int', 'v12', default_value='0'), param('std::string', 'n12', default_value='""')])
   5.125 +    ## object-factory.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeObjectFactoryChecker() [free function]
   5.126 +    module.add_function('MakeObjectFactoryChecker', 
   5.127 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.128 +                        [])
   5.129 +    ## random-variable.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeRandomVariableChecker() [free function]
   5.130 +    module.add_function('MakeRandomVariableChecker', 
   5.131 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.132 +                        [])
   5.133 +    ## string.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeStringChecker() [free function]
   5.134 +    module.add_function('MakeStringChecker', 
   5.135 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.136 +                        [])
   5.137 +    ## type-id.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeTypeIdChecker() [free function]
   5.138 +    module.add_function('MakeTypeIdChecker', 
   5.139 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.140 +                        [])
   5.141      ## type-name.h: extern std::string ns3::TypeNameGet() [free function]
   5.142      module.add_function('TypeNameGet', 
   5.143                          'std::string', 
   5.144 @@ -2017,141 +2071,87 @@
   5.145                          'std::string', 
   5.146                          [], 
   5.147                          template_parameters=['unsigned char'])
   5.148 -    ## string.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeStringChecker() [free function]
   5.149 -    module.add_function('MakeStringChecker', 
   5.150 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.151 -                        [])
   5.152 -    ## enum.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeEnumChecker(int v1, std::string n1, int v2=0, std::string n2="", int v3=0, std::string n3="", int v4=0, std::string n4="", int v5=0, std::string n5="", int v6=0, std::string n6="", int v7=0, std::string n7="", int v8=0, std::string n8="", int v9=0, std::string n9="", int v10=0, std::string n10="", int v11=0, std::string n11="", int v12=0, std::string n12="") [free function]
   5.153 -    module.add_function('MakeEnumChecker', 
   5.154 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.155 -                        [param('int', 'v1'), param('std::string', 'n1'), param('int', 'v2', default_value='0'), param('std::string', 'n2', default_value='""'), param('int', 'v3', default_value='0'), param('std::string', 'n3', default_value='""'), param('int', 'v4', default_value='0'), param('std::string', 'n4', default_value='""'), param('int', 'v5', default_value='0'), param('std::string', 'n5', default_value='""'), param('int', 'v6', default_value='0'), param('std::string', 'n6', default_value='""'), param('int', 'v7', default_value='0'), param('std::string', 'n7', default_value='""'), param('int', 'v8', default_value='0'), param('std::string', 'n8', default_value='""'), param('int', 'v9', default_value='0'), param('std::string', 'n9', default_value='""'), param('int', 'v10', default_value='0'), param('std::string', 'n10', default_value='""'), param('int', 'v11', default_value='0'), param('std::string', 'n11', default_value='""'), param('int', 'v12', default_value='0'), param('std::string', 'n12', default_value='""')])
   5.156 -    ## type-id.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeTypeIdChecker() [free function]
   5.157 -    module.add_function('MakeTypeIdChecker', 
   5.158 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.159 -                        [])
   5.160 -    ## log.h: extern void ns3::LogComponentEnableAll(ns3::LogLevel level) [free function]
   5.161 -    module.add_function('LogComponentEnableAll', 
   5.162 -                        'void', 
   5.163 -                        [param('ns3::LogLevel', 'level')])
   5.164 -    ## ptr.h: extern ns3::Ptr<ns3::PointerValue> ns3::Create() [free function]
   5.165 -    module.add_function('Create', 
   5.166 -                        'ns3::Ptr< ns3::PointerValue >', 
   5.167 -                        [], 
   5.168 -                        template_parameters=['ns3::PointerValue'])
   5.169 -    ## ptr.h: extern ns3::Ptr<ns3::ObjectVectorValue> ns3::Create() [free function]
   5.170 -    module.add_function('Create', 
   5.171 -                        'ns3::Ptr< ns3::ObjectVectorValue >', 
   5.172 -                        [], 
   5.173 -                        template_parameters=['ns3::ObjectVectorValue'])
   5.174 -    ## object-factory.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeObjectFactoryChecker() [free function]
   5.175 -    module.add_function('MakeObjectFactoryChecker', 
   5.176 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.177 -                        [])
   5.178 -    ## log.h: extern void ns3::LogComponentDisableAll(ns3::LogLevel level) [free function]
   5.179 -    module.add_function('LogComponentDisableAll', 
   5.180 -                        'void', 
   5.181 -                        [param('ns3::LogLevel', 'level')])
   5.182 -    ## callback.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeCallbackChecker() [free function]
   5.183 -    module.add_function('MakeCallbackChecker', 
   5.184 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.185 -                        [])
   5.186 -    ## breakpoint.h: extern void ns3::BreakpointFallback() [free function]
   5.187 -    module.add_function('BreakpointFallback', 
   5.188 -                        'void', 
   5.189 -                        [])
   5.190 -    ## random-variable.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeRandomVariableChecker() [free function]
   5.191 -    module.add_function('MakeRandomVariableChecker', 
   5.192 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.193 -                        [])
   5.194 -    ## log.h: extern void ns3::LogComponentDisable(char const * name, ns3::LogLevel level) [free function]
   5.195 -    module.add_function('LogComponentDisable', 
   5.196 -                        'void', 
   5.197 -                        [param('char const *', 'name'), param('ns3::LogLevel', 'level')])
   5.198 -    ## log.h: extern void ns3::LogComponentEnable(char const * name, ns3::LogLevel level) [free function]
   5.199 -    module.add_function('LogComponentEnable', 
   5.200 -                        'void', 
   5.201 -                        [param('char const *', 'name'), param('ns3::LogLevel', 'level')])
   5.202 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   5.203 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   5.204      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   5.205 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   5.206 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   5.207      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   5.208      return
   5.209  
   5.210 -def register_functions_ns3_internal(module, root_module):
   5.211 -    ## uinteger.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeUintegerChecker(uint64_t min, uint64_t max, std::string name) [free function]
   5.212 -    module.add_function('MakeUintegerChecker', 
   5.213 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.214 -                        [param('uint64_t', 'min'), param('uint64_t', 'max'), param('std::string', 'name')])
   5.215 -    ## integer.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeIntegerChecker(int64_t min, int64_t max, std::string name) [free function]
   5.216 -    module.add_function('MakeIntegerChecker', 
   5.217 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.218 -                        [param('int64_t', 'min'), param('int64_t', 'max'), param('std::string', 'name')])
   5.219 -    ## double.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeDoubleChecker(double min, double max, std::string name) [free function]
   5.220 -    module.add_function('MakeDoubleChecker', 
   5.221 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.222 -                        [param('double', 'min'), param('double', 'max'), param('std::string', 'name')])
   5.223 -    return
   5.224 -
   5.225 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   5.226 -    return
   5.227 -
   5.228  def register_functions_ns3_Config(module, root_module):
   5.229 -    ## config.h: extern bool ns3::Config::SetDefaultFailSafe(std::string name, ns3::AttributeValue const & value) [free function]
   5.230 -    module.add_function('SetDefaultFailSafe', 
   5.231 -                        'bool', 
   5.232 -                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.233 +    ## config.h: extern void ns3::Config::Connect(std::string path, ns3::CallbackBase const & cb) [free function]
   5.234 +    module.add_function('Connect', 
   5.235 +                        'void', 
   5.236 +                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.237 +    ## config.h: extern void ns3::Config::ConnectWithoutContext(std::string path, ns3::CallbackBase const & cb) [free function]
   5.238 +    module.add_function('ConnectWithoutContext', 
   5.239 +                        'void', 
   5.240 +                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.241 +    ## config.h: extern void ns3::Config::Disconnect(std::string path, ns3::CallbackBase const & cb) [free function]
   5.242 +    module.add_function('Disconnect', 
   5.243 +                        'void', 
   5.244 +                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.245      ## config.h: extern void ns3::Config::DisconnectWithoutContext(std::string path, ns3::CallbackBase const & cb) [free function]
   5.246      module.add_function('DisconnectWithoutContext', 
   5.247                          'void', 
   5.248                          [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.249 -    ## config.h: extern void ns3::Config::SetDefault(std::string name, ns3::AttributeValue const & value) [free function]
   5.250 -    module.add_function('SetDefault', 
   5.251 -                        'void', 
   5.252 -                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.253 -    ## config.h: extern ns3::Config::MatchContainer ns3::Config::LookupMatches(std::string path) [free function]
   5.254 -    module.add_function('LookupMatches', 
   5.255 -                        'ns3::Config::MatchContainer', 
   5.256 -                        [param('std::string', 'path')])
   5.257 -    ## config.h: extern void ns3::Config::Connect(std::string path, ns3::CallbackBase const & cb) [free function]
   5.258 -    module.add_function('Connect', 
   5.259 -                        'void', 
   5.260 -                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.261      ## config.h: extern ns3::Ptr<ns3::Object> ns3::Config::GetRootNamespaceObject(uint32_t i) [free function]
   5.262      module.add_function('GetRootNamespaceObject', 
   5.263                          'ns3::Ptr< ns3::Object >', 
   5.264                          [param('uint32_t', 'i')])
   5.265 -    ## config.h: extern void ns3::Config::ConnectWithoutContext(std::string path, ns3::CallbackBase const & cb) [free function]
   5.266 -    module.add_function('ConnectWithoutContext', 
   5.267 +    ## config.h: extern uint32_t ns3::Config::GetRootNamespaceObjectN() [free function]
   5.268 +    module.add_function('GetRootNamespaceObjectN', 
   5.269 +                        'uint32_t', 
   5.270 +                        [])
   5.271 +    ## config.h: extern ns3::Config::MatchContainer ns3::Config::LookupMatches(std::string path) [free function]
   5.272 +    module.add_function('LookupMatches', 
   5.273 +                        'ns3::Config::MatchContainer', 
   5.274 +                        [param('std::string', 'path')])
   5.275 +    ## config.h: extern void ns3::Config::RegisterRootNamespaceObject(ns3::Ptr<ns3::Object> obj) [free function]
   5.276 +    module.add_function('RegisterRootNamespaceObject', 
   5.277                          'void', 
   5.278 -                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.279 +                        [param('ns3::Ptr< ns3::Object >', 'obj')])
   5.280 +    ## config.h: extern void ns3::Config::Set(std::string path, ns3::AttributeValue const & value) [free function]
   5.281 +    module.add_function('Set', 
   5.282 +                        'void', 
   5.283 +                        [param('std::string', 'path'), param('ns3::AttributeValue const &', 'value')])
   5.284 +    ## config.h: extern void ns3::Config::SetDefault(std::string name, ns3::AttributeValue const & value) [free function]
   5.285 +    module.add_function('SetDefault', 
   5.286 +                        'void', 
   5.287 +                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.288 +    ## config.h: extern bool ns3::Config::SetDefaultFailSafe(std::string name, ns3::AttributeValue const & value) [free function]
   5.289 +    module.add_function('SetDefaultFailSafe', 
   5.290 +                        'bool', 
   5.291 +                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.292 +    ## config.h: extern void ns3::Config::SetGlobal(std::string name, ns3::AttributeValue const & value) [free function]
   5.293 +    module.add_function('SetGlobal', 
   5.294 +                        'void', 
   5.295 +                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.296 +    ## config.h: extern bool ns3::Config::SetGlobalFailSafe(std::string name, ns3::AttributeValue const & value) [free function]
   5.297 +    module.add_function('SetGlobalFailSafe', 
   5.298 +                        'bool', 
   5.299 +                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.300      ## config.h: extern void ns3::Config::UnregisterRootNamespaceObject(ns3::Ptr<ns3::Object> obj) [free function]
   5.301      module.add_function('UnregisterRootNamespaceObject', 
   5.302                          'void', 
   5.303                          [param('ns3::Ptr< ns3::Object >', 'obj')])
   5.304 -    ## config.h: extern bool ns3::Config::SetGlobalFailSafe(std::string name, ns3::AttributeValue const & value) [free function]
   5.305 -    module.add_function('SetGlobalFailSafe', 
   5.306 -                        'bool', 
   5.307 -                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.308 -    ## config.h: extern uint32_t ns3::Config::GetRootNamespaceObjectN() [free function]
   5.309 -    module.add_function('GetRootNamespaceObjectN', 
   5.310 -                        'uint32_t', 
   5.311 -                        [])
   5.312 -    ## config.h: extern void ns3::Config::Set(std::string path, ns3::AttributeValue const & value) [free function]
   5.313 -    module.add_function('Set', 
   5.314 -                        'void', 
   5.315 -                        [param('std::string', 'path'), param('ns3::AttributeValue const &', 'value')])
   5.316 -    ## config.h: extern void ns3::Config::SetGlobal(std::string name, ns3::AttributeValue const & value) [free function]
   5.317 -    module.add_function('SetGlobal', 
   5.318 -                        'void', 
   5.319 -                        [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   5.320 -    ## config.h: extern void ns3::Config::RegisterRootNamespaceObject(ns3::Ptr<ns3::Object> obj) [free function]
   5.321 -    module.add_function('RegisterRootNamespaceObject', 
   5.322 -                        'void', 
   5.323 -                        [param('ns3::Ptr< ns3::Object >', 'obj')])
   5.324 -    ## config.h: extern void ns3::Config::Disconnect(std::string path, ns3::CallbackBase const & cb) [free function]
   5.325 -    module.add_function('Disconnect', 
   5.326 -                        'void', 
   5.327 -                        [param('std::string', 'path'), param('ns3::CallbackBase const &', 'cb')])
   5.328 +    return
   5.329 +
   5.330 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   5.331 +    return
   5.332 +
   5.333 +def register_functions_ns3_internal(module, root_module):
   5.334 +    ## double.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeDoubleChecker(double min, double max, std::string name) [free function]
   5.335 +    module.add_function('MakeDoubleChecker', 
   5.336 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.337 +                        [param('double', 'min'), param('double', 'max'), param('std::string', 'name')])
   5.338 +    ## integer.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeIntegerChecker(int64_t min, int64_t max, std::string name) [free function]
   5.339 +    module.add_function('MakeIntegerChecker', 
   5.340 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.341 +                        [param('int64_t', 'min'), param('int64_t', 'max'), param('std::string', 'name')])
   5.342 +    ## uinteger.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::internal::MakeUintegerChecker(uint64_t min, uint64_t max, std::string name) [free function]
   5.343 +    module.add_function('MakeUintegerChecker', 
   5.344 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   5.345 +                        [param('uint64_t', 'min'), param('uint64_t', 'max'), param('std::string', 'name')])
   5.346      return
   5.347  
   5.348  def register_functions_ns3_olsr(module, root_module):
     6.1 --- a/bindings/python/ns3_module_csma.py	Fri Nov 07 19:51:00 2008 +0000
     6.2 +++ b/bindings/python/ns3_module_csma.py	Sat Nov 08 15:00:28 2008 +0000
     6.3 @@ -16,10 +16,10 @@
     6.4      ## csma-net-device.h: ns3::CsmaNetDevice::EncapsulationMode [enumeration]
     6.5      module.add_enum('EncapsulationMode', ['ILLEGAL', 'DIX', 'LLC'], outer_class=root_module['ns3::CsmaNetDevice'])
     6.6      
     6.7 -    ## Register a nested module for the namespace internal
     6.8 +    ## Register a nested module for the namespace Config
     6.9      
    6.10 -    nested_module = module.add_cpp_namespace('internal')
    6.11 -    register_types_ns3_internal(nested_module)
    6.12 +    nested_module = module.add_cpp_namespace('Config')
    6.13 +    register_types_ns3_Config(nested_module)
    6.14      
    6.15      
    6.16      ## Register a nested module for the namespace TimeStepPrecision
    6.17 @@ -28,10 +28,10 @@
    6.18      register_types_ns3_TimeStepPrecision(nested_module)
    6.19      
    6.20      
    6.21 -    ## Register a nested module for the namespace Config
    6.22 +    ## Register a nested module for the namespace internal
    6.23      
    6.24 -    nested_module = module.add_cpp_namespace('Config')
    6.25 -    register_types_ns3_Config(nested_module)
    6.26 +    nested_module = module.add_cpp_namespace('internal')
    6.27 +    register_types_ns3_internal(nested_module)
    6.28      
    6.29      
    6.30      ## Register a nested module for the namespace olsr
    6.31 @@ -40,7 +40,7 @@
    6.32      register_types_ns3_olsr(nested_module)
    6.33      
    6.34  
    6.35 -def register_types_ns3_internal(module):
    6.36 +def register_types_ns3_Config(module):
    6.37      root_module = module.get_root()
    6.38      
    6.39  
    6.40 @@ -48,7 +48,7 @@
    6.41      root_module = module.get_root()
    6.42      
    6.43  
    6.44 -def register_types_ns3_Config(module):
    6.45 +def register_types_ns3_internal(module):
    6.46      root_module = module.get_root()
    6.47      
    6.48  
    6.49 @@ -378,6 +378,11 @@
    6.50                     'void', 
    6.51                     [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const &, ns3::empty, ns3::empty >', 'cb')], 
    6.52                     is_virtual=True)
    6.53 +    ## csma-net-device.h: ns3::Address ns3::CsmaNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
    6.54 +    cls.add_method('GetMulticast', 
    6.55 +                   'ns3::Address', 
    6.56 +                   [param('ns3::Ipv6Address', 'addr')], 
    6.57 +                   is_const=True, is_virtual=True)
    6.58      ## csma-net-device.h: void ns3::CsmaNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
    6.59      cls.add_method('SetPromiscReceiveCallback', 
    6.60                     'void', 
    6.61 @@ -412,21 +417,21 @@
    6.62  
    6.63  def register_functions(root_module):
    6.64      module = root_module
    6.65 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    6.66 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    6.67      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    6.68 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    6.69 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    6.70      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    6.71      return
    6.72  
    6.73 +def register_functions_ns3_Config(module, root_module):
    6.74 +    return
    6.75 +
    6.76 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    6.77 +    return
    6.78 +
    6.79  def register_functions_ns3_internal(module, root_module):
    6.80      return
    6.81  
    6.82 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    6.83 -    return
    6.84 -
    6.85 -def register_functions_ns3_Config(module, root_module):
    6.86 -    return
    6.87 -
    6.88  def register_functions_ns3_olsr(module, root_module):
    6.89      return
    6.90  
     7.1 --- a/bindings/python/ns3_module_emu.py	Fri Nov 07 19:51:00 2008 +0000
     7.2 +++ b/bindings/python/ns3_module_emu.py	Sat Nov 08 15:00:28 2008 +0000
     7.3 @@ -6,10 +6,10 @@
     7.4      ## emu-net-device.h: ns3::EmuNetDevice [class]
     7.5      module.add_class('EmuNetDevice', parent=root_module['ns3::NetDevice'])
     7.6      
     7.7 -    ## Register a nested module for the namespace internal
     7.8 +    ## Register a nested module for the namespace Config
     7.9      
    7.10 -    nested_module = module.add_cpp_namespace('internal')
    7.11 -    register_types_ns3_internal(nested_module)
    7.12 +    nested_module = module.add_cpp_namespace('Config')
    7.13 +    register_types_ns3_Config(nested_module)
    7.14      
    7.15      
    7.16      ## Register a nested module for the namespace TimeStepPrecision
    7.17 @@ -18,10 +18,10 @@
    7.18      register_types_ns3_TimeStepPrecision(nested_module)
    7.19      
    7.20      
    7.21 -    ## Register a nested module for the namespace Config
    7.22 +    ## Register a nested module for the namespace internal
    7.23      
    7.24 -    nested_module = module.add_cpp_namespace('Config')
    7.25 -    register_types_ns3_Config(nested_module)
    7.26 +    nested_module = module.add_cpp_namespace('internal')
    7.27 +    register_types_ns3_internal(nested_module)
    7.28      
    7.29      
    7.30      ## Register a nested module for the namespace olsr
    7.31 @@ -30,7 +30,7 @@
    7.32      register_types_ns3_olsr(nested_module)
    7.33      
    7.34  
    7.35 -def register_types_ns3_internal(module):
    7.36 +def register_types_ns3_Config(module):
    7.37      root_module = module.get_root()
    7.38      
    7.39  
    7.40 @@ -38,7 +38,7 @@
    7.41      root_module = module.get_root()
    7.42      
    7.43  
    7.44 -def register_types_ns3_Config(module):
    7.45 +def register_types_ns3_internal(module):
    7.46      root_module = module.get_root()
    7.47      
    7.48  
    7.49 @@ -150,6 +150,11 @@
    7.50                     'ns3::Address', 
    7.51                     [param('ns3::Ipv4Address', 'multicastGroup')], 
    7.52                     is_const=True, is_virtual=True)
    7.53 +    ## emu-net-device.h: ns3::Address ns3::EmuNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
    7.54 +    cls.add_method('GetMulticast', 
    7.55 +                   'ns3::Address', 
    7.56 +                   [param('ns3::Ipv6Address', 'addr')], 
    7.57 +                   is_const=True, is_virtual=True)
    7.58      ## emu-net-device.h: bool ns3::EmuNetDevice::IsPointToPoint() const [member function]
    7.59      cls.add_method('IsPointToPoint', 
    7.60                     'bool', 
    7.61 @@ -204,21 +209,21 @@
    7.62  
    7.63  def register_functions(root_module):
    7.64      module = root_module
    7.65 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    7.66 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    7.67      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    7.68 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    7.69 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    7.70      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    7.71      return
    7.72  
    7.73 +def register_functions_ns3_Config(module, root_module):
    7.74 +    return
    7.75 +
    7.76 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    7.77 +    return
    7.78 +
    7.79  def register_functions_ns3_internal(module, root_module):
    7.80      return
    7.81  
    7.82 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    7.83 -    return
    7.84 -
    7.85 -def register_functions_ns3_Config(module, root_module):
    7.86 -    return
    7.87 -
    7.88  def register_functions_ns3_olsr(module, root_module):
    7.89      return
    7.90  
     8.1 --- a/bindings/python/ns3_module_global_routing.py	Fri Nov 07 19:51:00 2008 +0000
     8.2 +++ b/bindings/python/ns3_module_global_routing.py	Sat Nov 08 15:00:28 2008 +0000
     8.3 @@ -18,10 +18,10 @@
     8.4      ## global-router-interface.h: ns3::GlobalRouter [class]
     8.5      module.add_class('GlobalRouter', is_singleton=True, parent=root_module['ns3::Object'])
     8.6      
     8.7 -    ## Register a nested module for the namespace internal
     8.8 +    ## Register a nested module for the namespace Config
     8.9      
    8.10 -    nested_module = module.add_cpp_namespace('internal')
    8.11 -    register_types_ns3_internal(nested_module)
    8.12 +    nested_module = module.add_cpp_namespace('Config')
    8.13 +    register_types_ns3_Config(nested_module)
    8.14      
    8.15      
    8.16      ## Register a nested module for the namespace TimeStepPrecision
    8.17 @@ -30,10 +30,10 @@
    8.18      register_types_ns3_TimeStepPrecision(nested_module)
    8.19      
    8.20      
    8.21 -    ## Register a nested module for the namespace Config
    8.22 +    ## Register a nested module for the namespace internal
    8.23      
    8.24 -    nested_module = module.add_cpp_namespace('Config')
    8.25 -    register_types_ns3_Config(nested_module)
    8.26 +    nested_module = module.add_cpp_namespace('internal')
    8.27 +    register_types_ns3_internal(nested_module)
    8.28      
    8.29      
    8.30      ## Register a nested module for the namespace olsr
    8.31 @@ -42,7 +42,7 @@
    8.32      register_types_ns3_olsr(nested_module)
    8.33      
    8.34  
    8.35 -def register_types_ns3_internal(module):
    8.36 +def register_types_ns3_Config(module):
    8.37      root_module = module.get_root()
    8.38      
    8.39  
    8.40 @@ -50,7 +50,7 @@
    8.41      root_module = module.get_root()
    8.42      
    8.43  
    8.44 -def register_types_ns3_Config(module):
    8.45 +def register_types_ns3_internal(module):
    8.46      root_module = module.get_root()
    8.47      
    8.48  
    8.49 @@ -260,21 +260,21 @@
    8.50  
    8.51  def register_functions(root_module):
    8.52      module = root_module
    8.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    8.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    8.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
    8.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
    8.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
    8.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
    8.59      return
    8.60  
    8.61 +def register_functions_ns3_Config(module, root_module):
    8.62 +    return
    8.63 +
    8.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
    8.65 +    return
    8.66 +
    8.67  def register_functions_ns3_internal(module, root_module):
    8.68      return
    8.69  
    8.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
    8.71 -    return
    8.72 -
    8.73 -def register_functions_ns3_Config(module, root_module):
    8.74 -    return
    8.75 -
    8.76  def register_functions_ns3_olsr(module, root_module):
    8.77      return
    8.78  
     9.1 --- a/bindings/python/ns3_module_helper.py	Fri Nov 07 19:51:00 2008 +0000
     9.2 +++ b/bindings/python/ns3_module_helper.py	Sat Nov 08 15:00:28 2008 +0000
     9.3 @@ -46,10 +46,10 @@
     9.4      ## wifi-helper.h: ns3::WifiHelper [class]
     9.5      module.add_class('WifiHelper', allow_subclassing=False)
     9.6      
     9.7 -    ## Register a nested module for the namespace internal
     9.8 +    ## Register a nested module for the namespace Config
     9.9      
    9.10 -    nested_module = module.add_cpp_namespace('internal')
    9.11 -    register_types_ns3_internal(nested_module)
    9.12 +    nested_module = module.add_cpp_namespace('Config')
    9.13 +    register_types_ns3_Config(nested_module)
    9.14      
    9.15      
    9.16      ## Register a nested module for the namespace TimeStepPrecision
    9.17 @@ -58,10 +58,10 @@
    9.18      register_types_ns3_TimeStepPrecision(nested_module)
    9.19      
    9.20      
    9.21 -    ## Register a nested module for the namespace Config
    9.22 +    ## Register a nested module for the namespace internal
    9.23      
    9.24 -    nested_module = module.add_cpp_namespace('Config')
    9.25 -    register_types_ns3_Config(nested_module)
    9.26 +    nested_module = module.add_cpp_namespace('internal')
    9.27 +    register_types_ns3_internal(nested_module)
    9.28      
    9.29      
    9.30      ## Register a nested module for the namespace olsr
    9.31 @@ -70,7 +70,7 @@
    9.32      register_types_ns3_olsr(nested_module)
    9.33      
    9.34  
    9.35 -def register_types_ns3_internal(module):
    9.36 +def register_types_ns3_Config(module):
    9.37      root_module = module.get_root()
    9.38      
    9.39  
    9.40 @@ -78,7 +78,7 @@
    9.41      root_module = module.get_root()
    9.42      
    9.43  
    9.44 -def register_types_ns3_Config(module):
    9.45 +def register_types_ns3_internal(module):
    9.46      root_module = module.get_root()
    9.47      
    9.48  
    9.49 @@ -115,6 +115,8 @@
    9.50      cls.add_constructor([param('ns3::ApplicationContainer const &', 'arg0')])
    9.51      ## application-container.h: ns3::ApplicationContainer::ApplicationContainer() [constructor]
    9.52      cls.add_constructor([])
    9.53 +    ## application-container.h: ns3::ApplicationContainer::ApplicationContainer(ns3::Ptr<ns3::Application> application) [constructor]
    9.54 +    cls.add_constructor([param('ns3::Ptr< ns3::Application >', 'application')])
    9.55      ## application-container.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Application>*,std::vector<ns3::Ptr<ns3::Application>, std::allocator<ns3::Ptr<ns3::Application> > > > ns3::ApplicationContainer::Begin() const [member function]
    9.56      cls.add_method('Begin', 
    9.57                     '__gnu_cxx::__normal_iterator< ns3::Ptr< ns3::Application > const, std::vector< ns3::Ptr< ns3::Application > > >', 
    9.58 @@ -235,14 +237,26 @@
    9.59                     'void', 
    9.60                     [param('std::ostream &', 'os')], 
    9.61                     is_static=True)
    9.62 -    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::NodeContainer const & c) [member function]
    9.63 +    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
    9.64      cls.add_method('Install', 
    9.65                     'ns3::NetDeviceContainer', 
    9.66 -                   [param('ns3::NodeContainer const &', 'c')])
    9.67 -    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::NodeContainer const & c, ns3::Ptr<ns3::CsmaChannel> channel) [member function]
    9.68 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
    9.69 +                   is_const=True)
    9.70 +    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::Ptr<ns3::Node> node, ns3::Ptr<ns3::CsmaChannel> channel) const [member function]
    9.71      cls.add_method('Install', 
    9.72                     'ns3::NetDeviceContainer', 
    9.73 -                   [param('ns3::NodeContainer const &', 'c'), param('ns3::Ptr< ns3::CsmaChannel >', 'channel')])
    9.74 +                   [param('ns3::Ptr< ns3::Node >', 'node'), param('ns3::Ptr< ns3::CsmaChannel >', 'channel')], 
    9.75 +                   is_const=True)
    9.76 +    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::NodeContainer const & c) const [member function]
    9.77 +    cls.add_method('Install', 
    9.78 +                   'ns3::NetDeviceContainer', 
    9.79 +                   [param('ns3::NodeContainer const &', 'c')], 
    9.80 +                   is_const=True)
    9.81 +    ## csma-helper.h: ns3::NetDeviceContainer ns3::CsmaHelper::Install(ns3::NodeContainer const & c, ns3::Ptr<ns3::CsmaChannel> channel) const [member function]
    9.82 +    cls.add_method('Install', 
    9.83 +                   'ns3::NetDeviceContainer', 
    9.84 +                   [param('ns3::NodeContainer const &', 'c'), param('ns3::Ptr< ns3::CsmaChannel >', 'channel')], 
    9.85 +                   is_const=True)
    9.86      ## csma-helper.h: void ns3::CsmaHelper::InstallStar(ns3::Ptr<ns3::Node> hub, ns3::NodeContainer spokes, ns3::NetDeviceContainer & hubDevices, ns3::NetDeviceContainer & spokeDevices) [member function]
    9.87      cls.add_method('InstallStar', 
    9.88                     'void', 
    9.89 @@ -302,10 +316,16 @@
    9.90                     'void', 
    9.91                     [param('std::ostream &', 'os')], 
    9.92                     is_static=True)
    9.93 -    ## emu-helper.h: ns3::NetDeviceContainer ns3::EmuHelper::Install(ns3::NodeContainer const & c) [member function]
    9.94 +    ## emu-helper.h: ns3::NetDeviceContainer ns3::EmuHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
    9.95      cls.add_method('Install', 
    9.96                     'ns3::NetDeviceContainer', 
    9.97 -                   [param('ns3::NodeContainer const &', 'c')])
    9.98 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
    9.99 +                   is_const=True)
   9.100 +    ## emu-helper.h: ns3::NetDeviceContainer ns3::EmuHelper::Install(ns3::NodeContainer const & c) const [member function]
   9.101 +    cls.add_method('Install', 
   9.102 +                   'ns3::NetDeviceContainer', 
   9.103 +                   [param('ns3::NodeContainer const &', 'c')], 
   9.104 +                   is_const=True)
   9.105      return
   9.106  
   9.107  def register_Ns3InternetStackHelper_methods(root_module, cls):
   9.108 @@ -313,10 +333,16 @@
   9.109      cls.add_constructor([param('ns3::InternetStackHelper const &', 'arg0')])
   9.110      ## internet-stack-helper.h: ns3::InternetStackHelper::InternetStackHelper() [constructor]
   9.111      cls.add_constructor([])
   9.112 -    ## internet-stack-helper.h: void ns3::InternetStackHelper::Install(ns3::NodeContainer c) [member function]
   9.113 +    ## internet-stack-helper.h: void ns3::InternetStackHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.114      cls.add_method('Install', 
   9.115                     'void', 
   9.116 -                   [param('ns3::NodeContainer', 'c')])
   9.117 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.118 +                   is_const=True)
   9.119 +    ## internet-stack-helper.h: void ns3::InternetStackHelper::Install(ns3::NodeContainer c) const [member function]
   9.120 +    cls.add_method('Install', 
   9.121 +                   'void', 
   9.122 +                   [param('ns3::NodeContainer', 'c')], 
   9.123 +                   is_const=True)
   9.124      ## internet-stack-helper.h: void ns3::InternetStackHelper::SetNscStack(std::string soname) [member function]
   9.125      cls.add_method('SetNscStack', 
   9.126                     'void', 
   9.127 @@ -410,10 +436,16 @@
   9.128                     'std::string', 
   9.129                     [], 
   9.130                     is_const=True)
   9.131 -    ## mobility-helper.h: void ns3::MobilityHelper::Install(ns3::NodeContainer container) [member function]
   9.132 +    ## mobility-helper.h: void ns3::MobilityHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.133      cls.add_method('Install', 
   9.134                     'void', 
   9.135 -                   [param('ns3::NodeContainer', 'container')])
   9.136 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.137 +                   is_const=True)
   9.138 +    ## mobility-helper.h: void ns3::MobilityHelper::Install(ns3::NodeContainer container) const [member function]
   9.139 +    cls.add_method('Install', 
   9.140 +                   'void', 
   9.141 +                   [param('ns3::NodeContainer', 'container')], 
   9.142 +                   is_const=True)
   9.143      ## mobility-helper.h: void ns3::MobilityHelper::InstallAll() [member function]
   9.144      cls.add_method('InstallAll', 
   9.145                     'void', 
   9.146 @@ -570,10 +602,16 @@
   9.147      cls.add_method('SetAttribute', 
   9.148                     'void', 
   9.149                     [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   9.150 -    ## on-off-helper.h: ns3::ApplicationContainer ns3::OnOffHelper::Install(ns3::NodeContainer c) [member function]
   9.151 +    ## on-off-helper.h: ns3::ApplicationContainer ns3::OnOffHelper::Install(ns3::NodeContainer c) const [member function]
   9.152      cls.add_method('Install', 
   9.153                     'ns3::ApplicationContainer', 
   9.154 -                   [param('ns3::NodeContainer', 'c')])
   9.155 +                   [param('ns3::NodeContainer', 'c')], 
   9.156 +                   is_const=True)
   9.157 +    ## on-off-helper.h: ns3::ApplicationContainer ns3::OnOffHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.158 +    cls.add_method('Install', 
   9.159 +                   'ns3::ApplicationContainer', 
   9.160 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.161 +                   is_const=True)
   9.162      return
   9.163  
   9.164  def register_Ns3PacketSinkHelper_methods(root_module, cls):
   9.165 @@ -585,10 +623,16 @@
   9.166      cls.add_method('SetAttribute', 
   9.167                     'void', 
   9.168                     [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   9.169 -    ## packet-sink-helper.h: ns3::ApplicationContainer ns3::PacketSinkHelper::Install(ns3::NodeContainer c) [member function]
   9.170 +    ## packet-sink-helper.h: ns3::ApplicationContainer ns3::PacketSinkHelper::Install(ns3::NodeContainer c) const [member function]
   9.171      cls.add_method('Install', 
   9.172                     'ns3::ApplicationContainer', 
   9.173 -                   [param('ns3::NodeContainer', 'c')])
   9.174 +                   [param('ns3::NodeContainer', 'c')], 
   9.175 +                   is_const=True)
   9.176 +    ## packet-sink-helper.h: ns3::ApplicationContainer ns3::PacketSinkHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.177 +    cls.add_method('Install', 
   9.178 +                   'ns3::ApplicationContainer', 
   9.179 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.180 +                   is_const=True)
   9.181      return
   9.182  
   9.183  def register_Ns3PacketSocketHelper_methods(root_module, cls):
   9.184 @@ -596,10 +640,16 @@
   9.185      cls.add_constructor([param('ns3::PacketSocketHelper const &', 'arg0')])
   9.186      ## packet-socket-helper.h: ns3::PacketSocketHelper::PacketSocketHelper() [constructor]
   9.187      cls.add_constructor([])
   9.188 -    ## packet-socket-helper.h: void ns3::PacketSocketHelper::Install(ns3::NodeContainer c) [member function]
   9.189 +    ## packet-socket-helper.h: void ns3::PacketSocketHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.190      cls.add_method('Install', 
   9.191                     'void', 
   9.192 -                   [param('ns3::NodeContainer', 'c')])
   9.193 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.194 +                   is_const=True)
   9.195 +    ## packet-socket-helper.h: void ns3::PacketSocketHelper::Install(ns3::NodeContainer c) const [member function]
   9.196 +    cls.add_method('Install', 
   9.197 +                   'void', 
   9.198 +                   [param('ns3::NodeContainer', 'c')], 
   9.199 +                   is_const=True)
   9.200      return
   9.201  
   9.202  def register_Ns3PointToPointHelper_methods(root_module, cls):
   9.203 @@ -711,10 +761,16 @@
   9.204      cls.add_method('SetAttribute', 
   9.205                     'void', 
   9.206                     [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   9.207 -    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoClientHelper::Install(ns3::NodeContainer c) [member function]
   9.208 +    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoClientHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.209      cls.add_method('Install', 
   9.210                     'ns3::ApplicationContainer', 
   9.211 -                   [param('ns3::NodeContainer', 'c')])
   9.212 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.213 +                   is_const=True)
   9.214 +    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoClientHelper::Install(ns3::NodeContainer c) const [member function]
   9.215 +    cls.add_method('Install', 
   9.216 +                   'ns3::ApplicationContainer', 
   9.217 +                   [param('ns3::NodeContainer', 'c')], 
   9.218 +                   is_const=True)
   9.219      return
   9.220  
   9.221  def register_Ns3UdpEchoServerHelper_methods(root_module, cls):
   9.222 @@ -726,10 +782,16 @@
   9.223      cls.add_method('SetAttribute', 
   9.224                     'void', 
   9.225                     [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   9.226 -    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoServerHelper::Install(ns3::NodeContainer c) [member function]
   9.227 +    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoServerHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.228      cls.add_method('Install', 
   9.229                     'ns3::ApplicationContainer', 
   9.230 -                   [param('ns3::NodeContainer', 'c')])
   9.231 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.232 +                   is_const=True)
   9.233 +    ## udp-echo-helper.h: ns3::ApplicationContainer ns3::UdpEchoServerHelper::Install(ns3::NodeContainer c) const [member function]
   9.234 +    cls.add_method('Install', 
   9.235 +                   'ns3::ApplicationContainer', 
   9.236 +                   [param('ns3::NodeContainer', 'c')], 
   9.237 +                   is_const=True)
   9.238      return
   9.239  
   9.240  def register_Ns3V4PingHelper_methods(root_module, cls):
   9.241 @@ -741,10 +803,16 @@
   9.242      cls.add_method('SetAttribute', 
   9.243                     'void', 
   9.244                     [param('std::string', 'name'), param('ns3::AttributeValue const &', 'value')])
   9.245 -    ## v4ping-helper.h: ns3::ApplicationContainer ns3::V4PingHelper::Install(ns3::NodeContainer nodes) [member function]
   9.246 +    ## v4ping-helper.h: ns3::ApplicationContainer ns3::V4PingHelper::Install(ns3::NodeContainer nodes) const [member function]
   9.247      cls.add_method('Install', 
   9.248                     'ns3::ApplicationContainer', 
   9.249 -                   [param('ns3::NodeContainer', 'nodes')])
   9.250 +                   [param('ns3::NodeContainer', 'nodes')], 
   9.251 +                   is_const=True)
   9.252 +    ## v4ping-helper.h: ns3::ApplicationContainer ns3::V4PingHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.253 +    cls.add_method('Install', 
   9.254 +                   'ns3::ApplicationContainer', 
   9.255 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.256 +                   is_const=True)
   9.257      return
   9.258  
   9.259  def register_Ns3WifiHelper_methods(root_module, cls):
   9.260 @@ -804,35 +872,45 @@
   9.261                     'void', 
   9.262                     [param('std::ostream &', 'os')], 
   9.263                     is_static=True)
   9.264 -    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::NodeContainer c) const [member function]
   9.265 +    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::Ptr<ns3::Node> node) const [member function]
   9.266      cls.add_method('Install', 
   9.267                     'ns3::NetDeviceContainer', 
   9.268 -                   [param('ns3::NodeContainer', 'c')], 
   9.269 +                   [param('ns3::Ptr< ns3::Node >', 'node')], 
   9.270                     is_const=True)
   9.271 -    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::NodeContainer c, ns3::Ptr<ns3::WifiChannel> channel) const [member function]
   9.272 +    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::Ptr<ns3::Node> node, ns3::Ptr<ns3::WifiChannel> channel) const [member function]
   9.273      cls.add_method('Install', 
   9.274                     'ns3::NetDeviceContainer', 
   9.275 -                   [param('ns3::NodeContainer', 'c'), param('ns3::Ptr< ns3::WifiChannel >', 'channel')], 
   9.276 +                   [param('ns3::Ptr< ns3::Node >', 'node'), param('ns3::Ptr< ns3::WifiChannel >', 'channel')], 
   9.277 +                   is_const=True)
   9.278 +    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::NodeContainer const & c) const [member function]
   9.279 +    cls.add_method('Install', 
   9.280 +                   'ns3::NetDeviceContainer', 
   9.281 +                   [param('ns3::NodeContainer const &', 'c')], 
   9.282 +                   is_const=True)
   9.283 +    ## wifi-helper.h: ns3::NetDeviceContainer ns3::WifiHelper::Install(ns3::NodeContainer const & c, ns3::Ptr<ns3::WifiChannel> channel) const [member function]
   9.284 +    cls.add_method('Install', 
   9.285 +                   'ns3::NetDeviceContainer', 
   9.286 +                   [param('ns3::NodeContainer const &', 'c'), param('ns3::Ptr< ns3::WifiChannel >', 'channel')], 
   9.287                     is_const=True)
   9.288      return
   9.289  
   9.290  def register_functions(root_module):
   9.291      module = root_module
   9.292 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   9.293 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   9.294      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   9.295 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   9.296 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   9.297      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   9.298      return
   9.299  
   9.300 +def register_functions_ns3_Config(module, root_module):
   9.301 +    return
   9.302 +
   9.303 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   9.304 +    return
   9.305 +
   9.306  def register_functions_ns3_internal(module, root_module):
   9.307      return
   9.308  
   9.309 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   9.310 -    return
   9.311 -
   9.312 -def register_functions_ns3_Config(module, root_module):
   9.313 -    return
   9.314 -
   9.315  def register_functions_ns3_olsr(module, root_module):
   9.316      return
   9.317  
    10.1 --- a/bindings/python/ns3_module_internet_stack.py	Fri Nov 07 19:51:00 2008 +0000
    10.2 +++ b/bindings/python/ns3_module_internet_stack.py	Sat Nov 08 15:00:28 2008 +0000
    10.3 @@ -30,10 +30,10 @@
    10.4      ## ipv4-static-routing.h: ns3::Ipv4StaticRouting [class]
    10.5      module.add_class('Ipv4StaticRouting', parent=root_module['ns3::Ipv4RoutingProtocol'])
    10.6      
    10.7 -    ## Register a nested module for the namespace internal
    10.8 +    ## Register a nested module for the namespace Config
    10.9      
   10.10 -    nested_module = module.add_cpp_namespace('internal')
   10.11 -    register_types_ns3_internal(nested_module)
   10.12 +    nested_module = module.add_cpp_namespace('Config')
   10.13 +    register_types_ns3_Config(nested_module)
   10.14      
   10.15      
   10.16      ## Register a nested module for the namespace TimeStepPrecision
   10.17 @@ -42,10 +42,10 @@
   10.18      register_types_ns3_TimeStepPrecision(nested_module)
   10.19      
   10.20      
   10.21 -    ## Register a nested module for the namespace Config
   10.22 +    ## Register a nested module for the namespace internal
   10.23      
   10.24 -    nested_module = module.add_cpp_namespace('Config')
   10.25 -    register_types_ns3_Config(nested_module)
   10.26 +    nested_module = module.add_cpp_namespace('internal')
   10.27 +    register_types_ns3_internal(nested_module)
   10.28      
   10.29      
   10.30      ## Register a nested module for the namespace olsr
   10.31 @@ -54,7 +54,7 @@
   10.32      register_types_ns3_olsr(nested_module)
   10.33      
   10.34  
   10.35 -def register_types_ns3_internal(module):
   10.36 +def register_types_ns3_Config(module):
   10.37      root_module = module.get_root()
   10.38      
   10.39  
   10.40 @@ -62,7 +62,7 @@
   10.41      root_module = module.get_root()
   10.42      
   10.43  
   10.44 -def register_types_ns3_Config(module):
   10.45 +def register_types_ns3_internal(module):
   10.46      root_module = module.get_root()
   10.47      
   10.48  
   10.49 @@ -910,21 +910,21 @@
   10.50      module.add_function('AddNscInternetStack', 
   10.51                          'void', 
   10.52                          [param('ns3::Ptr< ns3::Node >', 'node'), param('std::string const &', 'soname')])
   10.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   10.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   10.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   10.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   10.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   10.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   10.59      return
   10.60  
   10.61 +def register_functions_ns3_Config(module, root_module):
   10.62 +    return
   10.63 +
   10.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   10.65 +    return
   10.66 +
   10.67  def register_functions_ns3_internal(module, root_module):
   10.68      return
   10.69  
   10.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   10.71 -    return
   10.72 -
   10.73 -def register_functions_ns3_Config(module, root_module):
   10.74 -    return
   10.75 -
   10.76  def register_functions_ns3_olsr(module, root_module):
   10.77      return
   10.78  
    11.1 --- a/bindings/python/ns3_module_mobility.py	Fri Nov 07 19:51:00 2008 +0000
    11.2 +++ b/bindings/python/ns3_module_mobility.py	Sat Nov 08 15:00:28 2008 +0000
    11.3 @@ -48,10 +48,10 @@
    11.4      ## hierarchical-mobility-model.h: ns3::HierarchicalMobilityModel [class]
    11.5      module.add_class('HierarchicalMobilityModel', parent=root_module['ns3::MobilityModel'])
    11.6      
    11.7 -    ## Register a nested module for the namespace internal
    11.8 +    ## Register a nested module for the namespace Config
    11.9      
   11.10 -    nested_module = module.add_cpp_namespace('internal')
   11.11 -    register_types_ns3_internal(nested_module)
   11.12 +    nested_module = module.add_cpp_namespace('Config')
   11.13 +    register_types_ns3_Config(nested_module)
   11.14      
   11.15      
   11.16      ## Register a nested module for the namespace TimeStepPrecision
   11.17 @@ -60,10 +60,10 @@
   11.18      register_types_ns3_TimeStepPrecision(nested_module)
   11.19      
   11.20      
   11.21 -    ## Register a nested module for the namespace Config
   11.22 +    ## Register a nested module for the namespace internal
   11.23      
   11.24 -    nested_module = module.add_cpp_namespace('Config')
   11.25 -    register_types_ns3_Config(nested_module)
   11.26 +    nested_module = module.add_cpp_namespace('internal')
   11.27 +    register_types_ns3_internal(nested_module)
   11.28      
   11.29      
   11.30      ## Register a nested module for the namespace olsr
   11.31 @@ -72,7 +72,7 @@
   11.32      register_types_ns3_olsr(nested_module)
   11.33      
   11.34  
   11.35 -def register_types_ns3_internal(module):
   11.36 +def register_types_ns3_Config(module):
   11.37      root_module = module.get_root()
   11.38      
   11.39  
   11.40 @@ -80,7 +80,7 @@
   11.41      root_module = module.get_root()
   11.42      
   11.43  
   11.44 -def register_types_ns3_Config(module):
   11.45 +def register_types_ns3_internal(module):
   11.46      root_module = module.get_root()
   11.47      
   11.48  
   11.49 @@ -692,33 +692,33 @@
   11.50  
   11.51  def register_functions(root_module):
   11.52      module = root_module
   11.53 +    ## vector.h: extern double ns3::CalculateDistance(ns3::Vector const & a, ns3::Vector const & b) [free function]
   11.54 +    module.add_function('CalculateDistance', 
   11.55 +                        'double', 
   11.56 +                        [param('ns3::Vector const &', 'a'), param('ns3::Vector const &', 'b')])
   11.57      ## rectangle.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeRectangleChecker() [free function]
   11.58      module.add_function('MakeRectangleChecker', 
   11.59                          'ns3::Ptr< ns3::AttributeChecker const >', 
   11.60                          [])
   11.61 -    ## vector.h: extern double ns3::CalculateDistance(ns3::Vector const & a, ns3::Vector const & b) [free function]
   11.62 -    module.add_function('CalculateDistance', 
   11.63 -                        'double', 
   11.64 -                        [param('ns3::Vector const &', 'a'), param('ns3::Vector const &', 'b')])
   11.65      ## vector.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeVectorChecker() [free function]
   11.66      module.add_function('MakeVectorChecker', 
   11.67                          'ns3::Ptr< ns3::AttributeChecker const >', 
   11.68                          [])
   11.69 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   11.70 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   11.71      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   11.72 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   11.73 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   11.74      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   11.75      return
   11.76  
   11.77 +def register_functions_ns3_Config(module, root_module):
   11.78 +    return
   11.79 +
   11.80 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   11.81 +    return
   11.82 +
   11.83  def register_functions_ns3_internal(module, root_module):
   11.84      return
   11.85  
   11.86 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   11.87 -    return
   11.88 -
   11.89 -def register_functions_ns3_Config(module, root_module):
   11.90 -    return
   11.91 -
   11.92  def register_functions_ns3_olsr(module, root_module):
   11.93      return
   11.94  
    12.1 --- a/bindings/python/ns3_module_node.py	Fri Nov 07 19:51:00 2008 +0000
    12.2 +++ b/bindings/python/ns3_module_node.py	Sat Nov 08 15:00:28 2008 +0000
    12.3 @@ -9,6 +9,10 @@
    12.4      module.add_class('Address')
    12.5      ## address.h: ns3::Address::MaxSize_e [enumeration]
    12.6      module.add_enum('MaxSize_e', ['MAX_SIZE'], outer_class=root_module['ns3::Address'])
    12.7 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress [class]
    12.8 +    module.add_class('Inet6SocketAddress')
    12.9 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress [class]
   12.10 +    root_module['ns3::Inet6SocketAddress'].implicitly_converts_to(root_module['ns3::Address'])
   12.11      ## inet-socket-address.h: ns3::InetSocketAddress [class]
   12.12      module.add_class('InetSocketAddress')
   12.13      ## inet-socket-address.h: ns3::InetSocketAddress [class]
   12.14 @@ -25,6 +29,12 @@
   12.15      module.add_class('Ipv4MulticastRoute')
   12.16      ## ipv4-route.h: ns3::Ipv4Route [class]
   12.17      module.add_class('Ipv4Route')
   12.18 +    ## ipv6-address.h: ns3::Ipv6Address [class]
   12.19 +    module.add_class('Ipv6Address')
   12.20 +    ## ipv6-address.h: ns3::Ipv6Address [class]
   12.21 +    root_module['ns3::Ipv6Address'].implicitly_converts_to(root_module['ns3::Address'])
   12.22 +    ## ipv6-address.h: ns3::Ipv6Prefix [class]
   12.23 +    module.add_class('Ipv6Prefix')
   12.24      ## mac48-address.h: ns3::Mac48Address [class]
   12.25      module.add_class('Mac48Address')
   12.26      ## mac48-address.h: ns3::Mac48Address [class]
   12.27 @@ -49,6 +59,18 @@
   12.28      module.add_class('Ipv4MaskChecker', parent=root_module['ns3::AttributeChecker'])
   12.29      ## ipv4-address.h: ns3::Ipv4MaskValue [class]
   12.30      module.add_class('Ipv4MaskValue', parent=root_module['ns3::AttributeValue'])
   12.31 +    ## ipv6-address.h: ns3::Ipv6AddressChecker [class]
   12.32 +    module.add_class('Ipv6AddressChecker', parent=root_module['ns3::AttributeChecker'])
   12.33 +    ## ipv6-address.h: ns3::Ipv6AddressValue [class]
   12.34 +    module.add_class('Ipv6AddressValue', parent=root_module['ns3::AttributeValue'])
   12.35 +    ## ipv6-header.h: ns3::Ipv6Header [class]
   12.36 +    module.add_class('Ipv6Header', parent=root_module['ns3::Header'])
   12.37 +    ## ipv6-header.h: ns3::Ipv6Header::NextHeader_e [enumeration]
   12.38 +    module.add_enum('NextHeader_e', ['IPV6_EXT_HOP_BY_HOP', 'IPV6_IPV4', 'IPV6_TCP', 'IPV6_UDP', 'IPV6_IPV6', 'IPV6_EXT_ROUTING', 'IPV6_EXT_FRAGMENTATION', 'IPV6_EXT_CONFIDENTIALITY', 'IPV6_EXT_AUTHENTIFICATION', 'IPV6_ICMPV6', 'IPV6_EXT_END', 'IPV6_EXT_DESTINATION', 'IPV6_SCTP', 'IPV6_EXT_MOBILITY', 'IPV6_UDP_LITE'], outer_class=root_module['ns3::Ipv6Header'])
   12.39 +    ## ipv6-address.h: ns3::Ipv6PrefixChecker [class]
   12.40 +    module.add_class('Ipv6PrefixChecker', parent=root_module['ns3::AttributeChecker'])
   12.41 +    ## ipv6-address.h: ns3::Ipv6PrefixValue [class]
   12.42 +    module.add_class('Ipv6PrefixValue', parent=root_module['ns3::AttributeValue'])
   12.43      ## llc-snap-header.h: ns3::LlcSnapHeader [class]
   12.44      module.add_class('LlcSnapHeader', parent=root_module['ns3::Header'])
   12.45      ## mac48-address.h: ns3::Mac48AddressChecker [class]
   12.46 @@ -91,6 +113,8 @@
   12.47      module.add_class('EthernetHeader', parent=root_module['ns3::Header'])
   12.48      ## ethernet-trailer.h: ns3::EthernetTrailer [class]
   12.49      module.add_class('EthernetTrailer', parent=root_module['ns3::Trailer'])
   12.50 +    ## icmp-socket.h: ns3::IcmpSocket [class]
   12.51 +    module.add_class('IcmpSocket', parent=root_module['ns3::Socket'])
   12.52      ## ipv4.h: ns3::Ipv4 [class]
   12.53      module.add_class('Ipv4', parent=root_module['ns3::Object'])
   12.54      ## ipv4-raw-socket-factory.h: ns3::Ipv4RawSocketFactory [class]
   12.55 @@ -110,10 +134,10 @@
   12.56      ## simple-net-device.h: ns3::SimpleNetDevice [class]
   12.57      module.add_class('SimpleNetDevice', parent=root_module['ns3::NetDevice'])
   12.58      
   12.59 -    ## Register a nested module for the namespace internal
   12.60 +    ## Register a nested module for the namespace Config
   12.61      
   12.62 -    nested_module = module.add_cpp_namespace('internal')
   12.63 -    register_types_ns3_internal(nested_module)
   12.64 +    nested_module = module.add_cpp_namespace('Config')
   12.65 +    register_types_ns3_Config(nested_module)
   12.66      
   12.67      
   12.68      ## Register a nested module for the namespace TimeStepPrecision
   12.69 @@ -122,10 +146,10 @@
   12.70      register_types_ns3_TimeStepPrecision(nested_module)
   12.71      
   12.72      
   12.73 -    ## Register a nested module for the namespace Config
   12.74 +    ## Register a nested module for the namespace internal
   12.75      
   12.76 -    nested_module = module.add_cpp_namespace('Config')
   12.77 -    register_types_ns3_Config(nested_module)
   12.78 +    nested_module = module.add_cpp_namespace('internal')
   12.79 +    register_types_ns3_internal(nested_module)
   12.80      
   12.81      
   12.82      ## Register a nested module for the namespace olsr
   12.83 @@ -134,7 +158,7 @@
   12.84      register_types_ns3_olsr(nested_module)
   12.85      
   12.86  
   12.87 -def register_types_ns3_internal(module):
   12.88 +def register_types_ns3_Config(module):
   12.89      root_module = module.get_root()
   12.90      
   12.91  
   12.92 @@ -142,7 +166,7 @@
   12.93      root_module = module.get_root()
   12.94      
   12.95  
   12.96 -def register_types_ns3_Config(module):
   12.97 +def register_types_ns3_internal(module):
   12.98      root_module = module.get_root()
   12.99      
  12.100  
  12.101 @@ -153,12 +177,15 @@
  12.102  
  12.103  def register_methods(root_module):
  12.104      register_Ns3Address_methods(root_module, root_module['ns3::Address'])
  12.105 +    register_Ns3Inet6SocketAddress_methods(root_module, root_module['ns3::Inet6SocketAddress'])
  12.106      register_Ns3InetSocketAddress_methods(root_module, root_module['ns3::InetSocketAddress'])
  12.107      register_Ns3Ipv4Address_methods(root_module, root_module['ns3::Ipv4Address'])
  12.108      register_Ns3Ipv4AddressGenerator_methods(root_module, root_module['ns3::Ipv4AddressGenerator'])
  12.109      register_Ns3Ipv4Mask_methods(root_module, root_module['ns3::Ipv4Mask'])
  12.110      register_Ns3Ipv4MulticastRoute_methods(root_module, root_module['ns3::Ipv4MulticastRoute'])
  12.111      register_Ns3Ipv4Route_methods(root_module, root_module['ns3::Ipv4Route'])
  12.112 +    register_Ns3Ipv6Address_methods(root_module, root_module['ns3::Ipv6Address'])
  12.113 +    register_Ns3Ipv6Prefix_methods(root_module, root_module['ns3::Ipv6Prefix'])
  12.114      register_Ns3Mac48Address_methods(root_module, root_module['ns3::Mac48Address'])
  12.115      register_Ns3Mac64Address_methods(root_module, root_module['ns3::Mac64Address'])
  12.116      register_Ns3NodeList_methods(root_module, root_module['ns3::NodeList'])
  12.117 @@ -168,6 +195,11 @@
  12.118      register_Ns3Ipv4Header_methods(root_module, root_module['ns3::Ipv4Header'])
  12.119      register_Ns3Ipv4MaskChecker_methods(root_module, root_module['ns3::Ipv4MaskChecker'])
  12.120      register_Ns3Ipv4MaskValue_methods(root_module, root_module['ns3::Ipv4MaskValue'])
  12.121 +    register_Ns3Ipv6AddressChecker_methods(root_module, root_module['ns3::Ipv6AddressChecker'])
  12.122 +    register_Ns3Ipv6AddressValue_methods(root_module, root_module['ns3::Ipv6AddressValue'])
  12.123 +    register_Ns3Ipv6Header_methods(root_module, root_module['ns3::Ipv6Header'])
  12.124 +    register_Ns3Ipv6PrefixChecker_methods(root_module, root_module['ns3::Ipv6PrefixChecker'])
  12.125 +    register_Ns3Ipv6PrefixValue_methods(root_module, root_module['ns3::Ipv6PrefixValue'])
  12.126      register_Ns3LlcSnapHeader_methods(root_module, root_module['ns3::LlcSnapHeader'])
  12.127      register_Ns3Mac48AddressChecker_methods(root_module, root_module['ns3::Mac48AddressChecker'])
  12.128      register_Ns3Mac48AddressValue_methods(root_module, root_module['ns3::Mac48AddressValue'])
  12.129 @@ -188,6 +220,7 @@
  12.130      register_Ns3DropTailQueue_methods(root_module, root_module['ns3::DropTailQueue'])
  12.131      register_Ns3EthernetHeader_methods(root_module, root_module['ns3::EthernetHeader'])
  12.132      register_Ns3EthernetTrailer_methods(root_module, root_module['ns3::EthernetTrailer'])
  12.133 +    register_Ns3IcmpSocket_methods(root_module, root_module['ns3::IcmpSocket'])
  12.134      register_Ns3Ipv4_methods(root_module, root_module['ns3::Ipv4'])
  12.135      register_Ns3Ipv4RawSocketFactory_methods(root_module, root_module['ns3::Ipv4RawSocketFactory'])
  12.136      register_Ns3Ipv4RoutingProtocol_methods(root_module, root_module['ns3::Ipv4RoutingProtocol'])
  12.137 @@ -268,6 +301,49 @@
  12.138                     is_const=True)
  12.139      return
  12.140  
  12.141 +def register_Ns3Inet6SocketAddress_methods(root_module, cls):
  12.142 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(ns3::Inet6SocketAddress const & arg0) [copy constructor]
  12.143 +    cls.add_constructor([param('ns3::Inet6SocketAddress const &', 'arg0')])
  12.144 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(ns3::Ipv6Address ipv6, uint16_t port) [constructor]
  12.145 +    cls.add_constructor([param('ns3::Ipv6Address', 'ipv6'), param('uint16_t', 'port')])
  12.146 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(ns3::Ipv6Address ipv6) [constructor]
  12.147 +    cls.add_constructor([param('ns3::Ipv6Address', 'ipv6')])
  12.148 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(uint16_t port) [constructor]
  12.149 +    cls.add_constructor([param('uint16_t', 'port')])
  12.150 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(char const * ipv6, uint16_t port) [constructor]
  12.151 +    cls.add_constructor([param('char const *', 'ipv6'), param('uint16_t', 'port')])
  12.152 +    ## inet6-socket-address.h: ns3::Inet6SocketAddress::Inet6SocketAddress(char const * ipv6) [constructor]
  12.153 +    cls.add_constructor([param('char const *', 'ipv6')])
  12.154 +    ## inet6-socket-address.h: uint16_t ns3::Inet6SocketAddress::GetPort() const [member function]
  12.155 +    cls.add_method('GetPort', 
  12.156 +                   'uint16_t', 
  12.157 +                   [], 
  12.158 +                   is_const=True)
  12.159 +    ## inet6-socket-address.h: void ns3::Inet6SocketAddress::SetPort(uint16_t port) [member function]
  12.160 +    cls.add_method('SetPort', 
  12.161 +                   'void', 
  12.162 +                   [param('uint16_t', 'port')])
  12.163 +    ## inet6-socket-address.h: ns3::Ipv6Address ns3::Inet6SocketAddress::GetIpv6() const [member function]
  12.164 +    cls.add_method('GetIpv6', 
  12.165 +                   'ns3::Ipv6Address', 
  12.166 +                   [], 
  12.167 +                   is_const=True)
  12.168 +    ## inet6-socket-address.h: void ns3::Inet6SocketAddress::SetIpv6(ns3::Ipv6Address ipv6) [member function]
  12.169 +    cls.add_method('SetIpv6', 
  12.170 +                   'void', 
  12.171 +                   [param('ns3::Ipv6Address', 'ipv6')])
  12.172 +    ## inet6-socket-address.h: static bool ns3::Inet6SocketAddress::IsMatchingType(ns3::Address const & addr) [member function]
  12.173 +    cls.add_method('IsMatchingType', 
  12.174 +                   'bool', 
  12.175 +                   [param('ns3::Address const &', 'addr')], 
  12.176 +                   is_static=True)
  12.177 +    ## inet6-socket-address.h: static ns3::Inet6SocketAddress ns3::Inet6SocketAddress::ConvertFrom(ns3::Address const & addr) [member function]
  12.178 +    cls.add_method('ConvertFrom', 
  12.179 +                   'ns3::Inet6SocketAddress', 
  12.180 +                   [param('ns3::Address const &', 'addr')], 
  12.181 +                   is_static=True)
  12.182 +    return
  12.183 +
  12.184  def register_Ns3InetSocketAddress_methods(root_module, cls):
  12.185      ## inet-socket-address.h: ns3::InetSocketAddress::InetSocketAddress(ns3::InetSocketAddress const & arg0) [copy constructor]
  12.186      cls.add_constructor([param('ns3::InetSocketAddress const &', 'arg0')])
  12.187 @@ -644,6 +720,203 @@
  12.188                     is_const=True)
  12.189      return
  12.190  
  12.191 +def register_Ns3Ipv6Address_methods(root_module, cls):
  12.192 +    cls.add_binary_comparison_operator('!=')
  12.193 +    cls.add_binary_comparison_operator('<')
  12.194 +    cls.add_output_stream_operator()
  12.195 +    cls.add_binary_comparison_operator('==')
  12.196 +    ## ipv6-address.h: ns3::Ipv6Address::Ipv6Address() [constructor]
  12.197 +    cls.add_constructor([])
  12.198 +    ## ipv6-address.h: ns3::Ipv6Address::Ipv6Address(char const * address) [constructor]
  12.199 +    cls.add_constructor([param('char const *', 'address')])
  12.200 +    ## ipv6-address.h: ns3::Ipv6Address::Ipv6Address(uint8_t * address) [constructor]
  12.201 +    cls.add_constructor([param('uint8_t *', 'address')])
  12.202 +    ## ipv6-address.h: ns3::Ipv6Address::Ipv6Address(ns3::Ipv6Address const & addr) [copy constructor]
  12.203 +    cls.add_constructor([param('ns3::Ipv6Address const &', 'addr')])
  12.204 +    ## ipv6-address.h: ns3::Ipv6Address::Ipv6Address(ns3::Ipv6Address const * addr) [constructor]
  12.205 +    cls.add_constructor([param('ns3::Ipv6Address const *', 'addr')])
  12.206 +    ## ipv6-address.h: ns3::Ipv6Address ns3::Ipv6Address::CombinePrefix(ns3::Ipv6Prefix const & prefix) [member function]
  12.207 +    cls.add_method('CombinePrefix', 
  12.208 +                   'ns3::Ipv6Address', 
  12.209 +                   [param('ns3::Ipv6Prefix const &', 'prefix')])
  12.210 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::ConvertFrom(ns3::Address const & address) [member function]
  12.211 +    cls.add_method('ConvertFrom', 
  12.212 +                   'ns3::Ipv6Address', 
  12.213 +                   [param('ns3::Address const &', 'address')], 
  12.214 +                   is_static=True)
  12.215 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::Deserialize(uint8_t const * buf) [member function]
  12.216 +    cls.add_method('Deserialize', 
  12.217 +                   'ns3::Ipv6Address', 
  12.218 +                   [param('uint8_t const *', 'buf')], 
  12.219 +                   is_static=True)
  12.220 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetAllHostsMulticast() [member function]
  12.221 +    cls.add_method('GetAllHostsMulticast', 
  12.222 +                   'ns3::Ipv6Address', 
  12.223 +                   [], 
  12.224 +                   is_static=True)
  12.225 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetAllNodesMulticast() [member function]
  12.226 +    cls.add_method('GetAllNodesMulticast', 
  12.227 +                   'ns3::Ipv6Address', 
  12.228 +                   [], 
  12.229 +                   is_static=True)
  12.230 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetAllRoutersMulticast() [member function]
  12.231 +    cls.add_method('GetAllRoutersMulticast', 
  12.232 +                   'ns3::Ipv6Address', 
  12.233 +                   [], 
  12.234 +                   is_static=True)
  12.235 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetAny() [member function]
  12.236 +    cls.add_method('GetAny', 
  12.237 +                   'ns3::Ipv6Address', 
  12.238 +                   [], 
  12.239 +                   is_static=True)
  12.240 +    ## ipv6-address.h: void ns3::Ipv6Address::GetBytes(uint8_t * buf) const [member function]
  12.241 +    cls.add_method('GetBytes', 
  12.242 +                   'void', 
  12.243 +                   [param('uint8_t *', 'buf')], 
  12.244 +                   is_const=True)
  12.245 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetLoopback() [member function]
  12.246 +    cls.add_method('GetLoopback', 
  12.247 +                   'ns3::Ipv6Address', 
  12.248 +                   [], 
  12.249 +                   is_static=True)
  12.250 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::GetZero() [member function]
  12.251 +    cls.add_method('GetZero', 
  12.252 +                   'ns3::Ipv6Address', 
  12.253 +                   [], 
  12.254 +                   is_static=True)
  12.255 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsAllHostsMulticast() const [member function]
  12.256 +    cls.add_method('IsAllHostsMulticast', 
  12.257 +                   'bool', 
  12.258 +                   [], 
  12.259 +                   is_const=True)
  12.260 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsAllNodesMulticast() const [member function]
  12.261 +    cls.add_method('IsAllNodesMulticast', 
  12.262 +                   'bool', 
  12.263 +                   [], 
  12.264 +                   is_const=True)
  12.265 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsAllRoutersMulticast() const [member function]
  12.266 +    cls.add_method('IsAllRoutersMulticast', 
  12.267 +                   'bool', 
  12.268 +                   [], 
  12.269 +                   is_const=True)
  12.270 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsAny() const [member function]
  12.271 +    cls.add_method('IsAny', 
  12.272 +                   'bool', 
  12.273 +                   [], 
  12.274 +                   is_const=True)
  12.275 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsEqual(ns3::Ipv6Address const & other) const [member function]
  12.276 +    cls.add_method('IsEqual', 
  12.277 +                   'bool', 
  12.278 +                   [param('ns3::Ipv6Address const &', 'other')], 
  12.279 +                   is_const=True)
  12.280 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsLinkLocal() const [member function]
  12.281 +    cls.add_method('IsLinkLocal', 
  12.282 +                   'bool', 
  12.283 +                   [], 
  12.284 +                   is_const=True)
  12.285 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsLocalhost() const [member function]
  12.286 +    cls.add_method('IsLocalhost', 
  12.287 +                   'bool', 
  12.288 +                   [], 
  12.289 +                   is_const=True)
  12.290 +    ## ipv6-address.h: static bool ns3::Ipv6Address::IsMatchingType(ns3::Address const & address) [member function]
  12.291 +    cls.add_method('IsMatchingType', 
  12.292 +                   'bool', 
  12.293 +                   [param('ns3::Address const &', 'address')], 
  12.294 +                   is_static=True)
  12.295 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsMulticast() const [member function]
  12.296 +    cls.add_method('IsMulticast', 
  12.297 +                   'bool', 
  12.298 +                   [], 
  12.299 +                   is_const=True)
  12.300 +    ## ipv6-address.h: bool ns3::Ipv6Address::IsSolicitedMulticast() const [member function]
  12.301 +    cls.add_method('IsSolicitedMulticast', 
  12.302 +                   'bool', 
  12.303 +                   [], 
  12.304 +                   is_const=True)
  12.305 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::MakeAutoconfiguredAddress(ns3::Mac48Address addr, ns3::Ipv6Address prefix) [member function]
  12.306 +    cls.add_method('MakeAutoconfiguredAddress', 
  12.307 +                   'ns3::Ipv6Address', 
  12.308 +                   [param('ns3::Mac48Address', 'addr'), param('ns3::Ipv6Address', 'prefix')], 
  12.309 +                   is_static=True)
  12.310 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::MakeAutoconfiguredLinkLocalAddress(ns3::Mac48Address mac) [member function]
  12.311 +    cls.add_method('MakeAutoconfiguredLinkLocalAddress', 
  12.312 +                   'ns3::Ipv6Address', 
  12.313 +                   [param('ns3::Mac48Address', 'mac')], 
  12.314 +                   is_static=True)
  12.315 +    ## ipv6-address.h: static ns3::Ipv6Address ns3::Ipv6Address::MakeSolicitedAddress(ns3::Ipv6Address addr) [member function]
  12.316 +    cls.add_method('MakeSolicitedAddress', 
  12.317 +                   'ns3::Ipv6Address', 
  12.318 +                   [param('ns3::Ipv6Address', 'addr')], 
  12.319 +                   is_static=True)
  12.320 +    ## ipv6-address.h: void ns3::Ipv6Address::Print(std::ostream & os) const [member function]
  12.321 +    cls.add_method('Print', 
  12.322 +                   'void', 
  12.323 +                   [param('std::ostream &', 'os')], 
  12.324 +                   is_const=True)
  12.325 +    ## ipv6-address.h: void ns3::Ipv6Address::Serialize(uint8_t * buf) const [member function]
  12.326 +    cls.add_method('Serialize', 
  12.327 +                   'void', 
  12.328 +                   [param('uint8_t *', 'buf')], 
  12.329 +                   is_const=True)
  12.330 +    ## ipv6-address.h: void ns3::Ipv6Address::Set(char const * address) [member function]
  12.331 +    cls.add_method('Set', 
  12.332 +                   'void', 
  12.333 +                   [param('char const *', 'address')])
  12.334 +    ## ipv6-address.h: void ns3::Ipv6Address::Set(uint8_t * address) [member function]
  12.335 +    cls.add_method('Set', 
  12.336 +                   'void', 
  12.337 +                   [param('uint8_t *', 'address')])
  12.338 +    return
  12.339 +
  12.340 +def register_Ns3Ipv6Prefix_methods(root_module, cls):
  12.341 +    cls.add_binary_comparison_operator('!=')
  12.342 +    cls.add_output_stream_operator()
  12.343 +    cls.add_binary_comparison_operator('==')
  12.344 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix() [constructor]
  12.345 +    cls.add_constructor([])
  12.346 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix(uint8_t * prefix) [constructor]
  12.347 +    cls.add_constructor([param('uint8_t *', 'prefix')])
  12.348 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix(char const * prefix) [constructor]
  12.349 +    cls.add_constructor([param('char const *', 'prefix')])
  12.350 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix(uint8_t prefix) [constructor]
  12.351 +    cls.add_constructor([param('uint8_t', 'prefix')])
  12.352 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix(ns3::Ipv6Prefix const & prefix) [copy constructor]
  12.353 +    cls.add_constructor([param('ns3::Ipv6Prefix const &', 'prefix')])
  12.354 +    ## ipv6-address.h: ns3::Ipv6Prefix::Ipv6Prefix(ns3::Ipv6Prefix const * prefix) [constructor]
  12.355 +    cls.add_constructor([param('ns3::Ipv6Prefix const *', 'prefix')])
  12.356 +    ## ipv6-address.h: void ns3::Ipv6Prefix::GetBytes(uint8_t * buf) const [member function]
  12.357 +    cls.add_method('GetBytes', 
  12.358 +                   'void', 
  12.359 +                   [param('uint8_t *', 'buf')], 
  12.360 +                   is_const=True)
  12.361 +    ## ipv6-address.h: static ns3::Ipv6Prefix ns3::Ipv6Prefix::GetLoopback() [member function]
  12.362 +    cls.add_method('GetLoopback', 
  12.363 +                   'ns3::Ipv6Prefix', 
  12.364 +                   [], 
  12.365 +                   is_static=True)
  12.366 +    ## ipv6-address.h: static ns3::Ipv6Prefix ns3::Ipv6Prefix::GetZero() [member function]
  12.367 +    cls.add_method('GetZero', 
  12.368 +                   'ns3::Ipv6Prefix', 
  12.369 +                   [], 
  12.370 +                   is_static=True)
  12.371 +    ## ipv6-address.h: bool ns3::Ipv6Prefix::IsEqual(ns3::Ipv6Prefix const & other) const [member function]
  12.372 +    cls.add_method('IsEqual', 
  12.373 +                   'bool', 
  12.374 +                   [param('ns3::Ipv6Prefix const &', 'other')], 
  12.375 +                   is_const=True)
  12.376 +    ## ipv6-address.h: bool ns3::Ipv6Prefix::IsMatch(ns3::Ipv6Address a, ns3::Ipv6Address b) const [member function]
  12.377 +    cls.add_method('IsMatch', 
  12.378 +                   'bool', 
  12.379 +                   [param('ns3::Ipv6Address', 'a'), param('ns3::Ipv6Address', 'b')], 
  12.380 +                   is_const=True)
  12.381 +    ## ipv6-address.h: void ns3::Ipv6Prefix::Print(std::ostream & os) const [member function]
  12.382 +    cls.add_method('Print', 
  12.383 +                   'void', 
  12.384 +                   [param('std::ostream &', 'os')], 
  12.385 +                   is_const=True)
  12.386 +    return
  12.387 +
  12.388  def register_Ns3Mac48Address_methods(root_module, cls):
  12.389      cls.add_binary_comparison_operator('!=')
  12.390      cls.add_binary_comparison_operator('<')
  12.391 @@ -684,6 +957,16 @@
  12.392                     'ns3::Mac48Address', 
  12.393                     [param('ns3::Ipv4Address', 'address')], 
  12.394                     is_static=True)
  12.395 +    ## mac48-address.h: static ns3::Mac48Address ns3::Mac48Address::GetMulticast(ns3::Ipv6Address address) [member function]
  12.396 +    cls.add_method('GetMulticast', 
  12.397 +                   'ns3::Mac48Address', 
  12.398 +                   [param('ns3::Ipv6Address', 'address')], 
  12.399 +                   is_static=True)
  12.400 +    ## mac48-address.h: static ns3::Mac48Address ns3::Mac48Address::GetMulticast6Prefix() [member function]
  12.401 +    cls.add_method('GetMulticast6Prefix', 
  12.402 +                   'ns3::Mac48Address', 
  12.403 +                   [], 
  12.404 +                   is_static=True)
  12.405      ## mac48-address.h: static ns3::Mac48Address ns3::Mac48Address::GetMulticastPrefix() [member function]
  12.406      cls.add_method('GetMulticastPrefix', 
  12.407                     'ns3::Mac48Address', 
  12.408 @@ -1056,6 +1339,191 @@
  12.409                     is_virtual=True)
  12.410      return
  12.411  
  12.412 +def register_Ns3Ipv6AddressChecker_methods(root_module, cls):
  12.413 +    ## ipv6-address.h: ns3::Ipv6AddressChecker::Ipv6AddressChecker(ns3::Ipv6AddressChecker const & arg0) [copy constructor]
  12.414 +    cls.add_constructor([param('ns3::Ipv6AddressChecker const &', 'arg0')])
  12.415 +    ## ipv6-address.h: ns3::Ipv6AddressChecker::Ipv6AddressChecker() [constructor]
  12.416 +    cls.add_constructor([])
  12.417 +    return
  12.418 +
  12.419 +def register_Ns3Ipv6AddressValue_methods(root_module, cls):
  12.420 +    ## ipv6-address.h: ns3::Ipv6AddressValue::Ipv6AddressValue(ns3::Ipv6AddressValue const & arg0) [copy constructor]
  12.421 +    cls.add_constructor([param('ns3::Ipv6AddressValue const &', 'arg0')])
  12.422 +    ## ipv6-address.h: ns3::Ipv6AddressValue::Ipv6AddressValue() [constructor]
  12.423 +    cls.add_constructor([])
  12.424 +    ## ipv6-address.h: ns3::Ipv6AddressValue::Ipv6AddressValue(ns3::Ipv6Address const & value) [constructor]
  12.425 +    cls.add_constructor([param('ns3::Ipv6Address const &', 'value')])
  12.426 +    ## ipv6-address.h: void ns3::Ipv6AddressValue::Set(ns3::Ipv6Address const & value) [member function]
  12.427 +    cls.add_method('Set', 
  12.428 +                   'void', 
  12.429 +                   [param('ns3::Ipv6Address const &', 'value')])
  12.430 +    ## ipv6-address.h: ns3::Ipv6Address ns3::Ipv6AddressValue::Get() const [member function]
  12.431 +    cls.add_method('Get', 
  12.432 +                   'ns3::Ipv6Address', 
  12.433 +                   [], 
  12.434 +                   is_const=True)
  12.435 +    ## ipv6-address.h: ns3::Ptr<ns3::AttributeValue> ns3::Ipv6AddressValue::Copy() const [member function]
  12.436 +    cls.add_method('Copy', 
  12.437 +                   'ns3::Ptr< ns3::AttributeValue >', 
  12.438 +                   [], 
  12.439 +                   is_const=True, is_virtual=True)
  12.440 +    ## ipv6-address.h: std::string ns3::Ipv6AddressValue::SerializeToString(ns3::Ptr<ns3::AttributeChecker const> checker) const [member function]
  12.441 +    cls.add_method('SerializeToString', 
  12.442 +                   'std::string', 
  12.443 +                   [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  12.444 +                   is_const=True, is_virtual=True)
  12.445 +    ## ipv6-address.h: bool ns3::Ipv6AddressValue::DeserializeFromString(std::string value, ns3::Ptr<ns3::AttributeChecker const> checker) [member function]
  12.446 +    cls.add_method('DeserializeFromString', 
  12.447 +                   'bool', 
  12.448 +                   [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  12.449 +                   is_virtual=True)
  12.450 +    return
  12.451 +
  12.452 +def register_Ns3Ipv6Header_methods(root_module, cls):
  12.453 +    ## ipv6-header.h: ns3::Ipv6Header::Ipv6Header(ns3::Ipv6Header const & arg0) [copy constructor]
  12.454 +    cls.add_constructor([param('ns3::Ipv6Header const &', 'arg0')])
  12.455 +    ## ipv6-header.h: static ns3::TypeId ns3::Ipv6Header::GetTypeId() [member function]
  12.456 +    cls.add_method('GetTypeId', 
  12.457 +                   'ns3::TypeId', 
  12.458 +                   [], 
  12.459 +                   is_static=True)
  12.460 +    ## ipv6-header.h: ns3::TypeId ns3::Ipv6Header::GetInstanceTypeId() const [member function]
  12.461 +    cls.add_method('GetInstanceTypeId', 
  12.462 +                   'ns3::TypeId', 
  12.463 +                   [], 
  12.464 +                   is_const=True, is_virtual=True)
  12.465 +    ## ipv6-header.h: ns3::Ipv6Header::Ipv6Header() [constructor]
  12.466 +    cls.add_constructor([])
  12.467 +    ## ipv6-header.h: void ns3::Ipv6Header::SetTrafficClass(uint8_t traffic) [member function]
  12.468 +    cls.add_method('SetTrafficClass', 
  12.469 +                   'void', 
  12.470 +                   [param('uint8_t', 'traffic')])
  12.471 +    ## ipv6-header.h: uint8_t ns3::Ipv6Header::GetTrafficClass() const [member function]
  12.472 +    cls.add_method('GetTrafficClass', 
  12.473 +                   'uint8_t', 
  12.474 +                   [], 
  12.475 +                   is_const=True)
  12.476 +    ## ipv6-header.h: void ns3::Ipv6Header::SetFlowLabel(uint32_t flow) [member function]
  12.477 +    cls.add_method('SetFlowLabel', 
  12.478 +                   'void', 
  12.479 +                   [param('uint32_t', 'flow')])
  12.480 +    ## ipv6-header.h: uint32_t ns3::Ipv6Header::GetFlowLabel() const [member function]
  12.481 +    cls.add_method('GetFlowLabel', 
  12.482 +                   'uint32_t', 
  12.483 +                   [], 
  12.484 +                   is_const=True)
  12.485 +    ## ipv6-header.h: void ns3::Ipv6Header::SetPayloadLength(uint16_t len) [member function]
  12.486 +    cls.add_method('SetPayloadLength', 
  12.487 +                   'void', 
  12.488 +                   [param('uint16_t', 'len')])
  12.489 +    ## ipv6-header.h: uint16_t ns3::Ipv6Header::GetPayloadLength() const [member function]
  12.490 +    cls.add_method('GetPayloadLength', 
  12.491 +                   'uint16_t', 
  12.492 +                   [], 
  12.493 +                   is_const=True)
  12.494 +    ## ipv6-header.h: void ns3::Ipv6Header::SetNextHeader(uint8_t next) [member function]
  12.495 +    cls.add_method('SetNextHeader', 
  12.496 +                   'void', 
  12.497 +                   [param('uint8_t', 'next')])
  12.498 +    ## ipv6-header.h: uint8_t ns3::Ipv6Header::GetNextHeader() const [member function]
  12.499 +    cls.add_method('GetNextHeader', 
  12.500 +                   'uint8_t', 
  12.501 +                   [], 
  12.502 +                   is_const=True)
  12.503 +    ## ipv6-header.h: void ns3::Ipv6Header::SetHopLimit(uint8_t limit) [member function]
  12.504 +    cls.add_method('SetHopLimit', 
  12.505 +                   'void', 
  12.506 +                   [param('uint8_t', 'limit')])
  12.507 +    ## ipv6-header.h: uint8_t ns3::Ipv6Header::GetHopLimit() const [member function]
  12.508 +    cls.add_method('GetHopLimit', 
  12.509 +                   'uint8_t', 
  12.510 +                   [], 
  12.511 +                   is_const=True)
  12.512 +    ## ipv6-header.h: void ns3::Ipv6Header::SetSourceAddress(ns3::Ipv6Address src) [member function]
  12.513 +    cls.add_method('SetSourceAddress', 
  12.514 +                   'void', 
  12.515 +                   [param('ns3::Ipv6Address', 'src')])
  12.516 +    ## ipv6-header.h: ns3::Ipv6Address ns3::Ipv6Header::GetSourceAddress() const [member function]
  12.517 +    cls.add_method('GetSourceAddress', 
  12.518 +                   'ns3::Ipv6Address', 
  12.519 +                   [], 
  12.520 +                   is_const=True)
  12.521 +    ## ipv6-header.h: void ns3::Ipv6Header::SetDestinationAddress(ns3::Ipv6Address dst) [member function]
  12.522 +    cls.add_method('SetDestinationAddress', 
  12.523 +                   'void', 
  12.524 +                   [param('ns3::Ipv6Address', 'dst')])
  12.525 +    ## ipv6-header.h: ns3::Ipv6Address ns3::Ipv6Header::GetDestinationAddress() const [member function]
  12.526 +    cls.add_method('GetDestinationAddress', 
  12.527 +                   'ns3::Ipv6Address', 
  12.528 +                   [], 
  12.529 +                   is_const=True)
  12.530 +    ## ipv6-header.h: std::string ns3::Ipv6Header::GetName() const [member function]
  12.531 +    cls.add_method('GetName', 
  12.532 +                   'std::string', 
  12.533 +                   [], 
  12.534 +                   is_const=True)
  12.535 +    ## ipv6-header.h: void ns3::Ipv6Header::Print(std::ostream & os) const [member function]
  12.536 +    cls.add_method('Print', 
  12.537 +                   'void', 
  12.538 +                   [param('std::ostream &', 'os')], 
  12.539 +                   is_const=True, is_virtual=True)
  12.540 +    ## ipv6-header.h: uint32_t ns3::Ipv6Header::GetSerializedSize() const [member function]
  12.541 +    cls.add_method('GetSerializedSize', 
  12.542 +                   'uint32_t', 
  12.543 +                   [], 
  12.544 +                   is_const=True, is_virtual=True)
  12.545 +    ## ipv6-header.h: void ns3::Ipv6Header::Serialize(ns3::Buffer::Iterator start) const [member function]
  12.546 +    cls.add_method('Serialize', 
  12.547 +                   'void', 
  12.548 +                   [param('ns3::Buffer::Iterator', 'start')], 
  12.549 +                   is_const=True, is_virtual=True)
  12.550 +    ## ipv6-header.h: uint32_t ns3::Ipv6Header::Deserialize(ns3::Buffer::Iterator start) [member function]
  12.551 +    cls.add_method('Deserialize', 
  12.552 +                   'uint32_t', 
  12.553 +                   [param('ns3::Buffer::Iterator', 'start')], 
  12.554 +                   is_virtual=True)
  12.555 +    return
  12.556 +
  12.557 +def register_Ns3Ipv6PrefixChecker_methods(root_module, cls):
  12.558 +    ## ipv6-address.h: ns3::Ipv6PrefixChecker::Ipv6PrefixChecker(ns3::Ipv6PrefixChecker const & arg0) [copy constructor]
  12.559 +    cls.add_constructor([param('ns3::Ipv6PrefixChecker const &', 'arg0')])
  12.560 +    ## ipv6-address.h: ns3::Ipv6PrefixChecker::Ipv6PrefixChecker() [constructor]
  12.561 +    cls.add_constructor([])
  12.562 +    return
  12.563 +
  12.564 +def register_Ns3Ipv6PrefixValue_methods(root_module, cls):
  12.565 +    ## ipv6-address.h: ns3::Ipv6PrefixValue::Ipv6PrefixValue(ns3::Ipv6PrefixValue const & arg0) [copy constructor]
  12.566 +    cls.add_constructor([param('ns3::Ipv6PrefixValue const &', 'arg0')])
  12.567 +    ## ipv6-address.h: ns3::Ipv6PrefixValue::Ipv6PrefixValue() [constructor]
  12.568 +    cls.add_constructor([])
  12.569 +    ## ipv6-address.h: ns3::Ipv6PrefixValue::Ipv6PrefixValue(ns3::Ipv6Prefix const & value) [constructor]
  12.570 +    cls.add_constructor([param('ns3::Ipv6Prefix const &', 'value')])
  12.571 +    ## ipv6-address.h: void ns3::Ipv6PrefixValue::Set(ns3::Ipv6Prefix const & value) [member function]
  12.572 +    cls.add_method('Set', 
  12.573 +                   'void', 
  12.574 +                   [param('ns3::Ipv6Prefix const &', 'value')])
  12.575 +    ## ipv6-address.h: ns3::Ipv6Prefix ns3::Ipv6PrefixValue::Get() const [member function]
  12.576 +    cls.add_method('Get', 
  12.577 +                   'ns3::Ipv6Prefix', 
  12.578 +                   [], 
  12.579 +                   is_const=True)
  12.580 +    ## ipv6-address.h: ns3::Ptr<ns3::AttributeValue> ns3::Ipv6PrefixValue::Copy() const [member function]
  12.581 +    cls.add_method('Copy', 
  12.582 +                   'ns3::Ptr< ns3::AttributeValue >', 
  12.583 +                   [], 
  12.584 +                   is_const=True, is_virtual=True)
  12.585 +    ## ipv6-address.h: std::string ns3::Ipv6PrefixValue::SerializeToString(ns3::Ptr<ns3::AttributeChecker const> checker) const [member function]
  12.586 +    cls.add_method('SerializeToString', 
  12.587 +                   'std::string', 
  12.588 +                   [param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  12.589 +                   is_const=True, is_virtual=True)
  12.590 +    ## ipv6-address.h: bool ns3::Ipv6PrefixValue::DeserializeFromString(std::string value, ns3::Ptr<ns3::AttributeChecker const> checker) [member function]
  12.591 +    cls.add_method('DeserializeFromString', 
  12.592 +                   'bool', 
  12.593 +                   [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  12.594 +                   is_virtual=True)
  12.595 +    return
  12.596 +
  12.597  def register_Ns3LlcSnapHeader_methods(root_module, cls):
  12.598      ## llc-snap-header.h: ns3::LlcSnapHeader::LlcSnapHeader(ns3::LlcSnapHeader const & arg0) [copy constructor]
  12.599      cls.add_constructor([param('ns3::LlcSnapHeader const &', 'arg0')])
  12.600 @@ -2041,6 +2509,98 @@
  12.601                     is_virtual=True)
  12.602      return
  12.603  
  12.604 +def register_Ns3IcmpSocket_methods(root_module, cls):
  12.605 +    ## icmp-socket.h: ns3::IcmpSocket::IcmpSocket(ns3::IcmpSocket const & arg0) [copy constructor]
  12.606 +    cls.add_constructor([param('ns3::IcmpSocket const &', 'arg0')])
  12.607 +    ## icmp-socket.h: static ns3::TypeId ns3::IcmpSocket::GetTypeId() [member function]
  12.608 +    cls.add_method('GetTypeId', 
  12.609 +                   'ns3::TypeId', 
  12.610 +                   [], 
  12.611 +                   is_static=True)
  12.612 +    ## icmp-socket.h: ns3::IcmpSocket::IcmpSocket() [constructor]
  12.613 +    cls.add_constructor([])
  12.614 +    ## icmp-socket.h: ns3::Socket::SocketErrno ns3::IcmpSocket::GetErrno() const [member function]
  12.615 +    cls.add_method('GetErrno', 
  12.616 +                   'ns3::Socket::SocketErrno', 
  12.617 +                   [], 
  12.618 +                   is_pure_virtual=True, is_const=True, is_virtual=True)
  12.619 +    ## icmp-socket.h: ns3::Ptr<ns3::Node> ns3::IcmpSocket::GetNode() const [member function]
  12.620 +    cls.add_method('GetNode', 
  12.621 +                   'ns3::Ptr< ns3::Node >', 
  12.622 +                   [], 
  12.623 +                   is_pure_virtual=True, is_const=True, is_virtual=True)
  12.624 +    ## icmp-socket.h: int ns3::IcmpSocket::Bind() [member function]
  12.625 +    cls.add_method('Bind', 
  12.626 +                   'int', 
  12.627 +                   [], 
  12.628 +                   is_pure_virtual=True, is_virtual=True)
  12.629 +    ## icmp-socket.h: int ns3::IcmpSocket::Bind(ns3::Address const & addr) [member function]
  12.630 +    cls.add_method('Bind', 
  12.631 +                   'int', 
  12.632 +                   [param('ns3::Address const &', 'addr')], 
  12.633 +                   is_pure_virtual=True, is_virtual=True)
  12.634 +    ## icmp-socket.h: int ns3::IcmpSocket::Close() [member function]
  12.635 +    cls.add_method('Close', 
  12.636 +                   'int', 
  12.637 +                   [], 
  12.638 +                   is_pure_virtual=True, is_virtual=True)
  12.639 +    ## icmp-socket.h: int ns3::IcmpSocket::ShutdownSend() [member function]
  12.640 +    cls.add_method('ShutdownSend', 
  12.641 +                   'int', 
  12.642 +                   [], 
  12.643 +                   is_pure_virtual=True, is_virtual=True)
  12.644 +    ## icmp-socket.h: int ns3::IcmpSocket::ShutdownRecv() [member function]
  12.645 +    cls.add_method('ShutdownRecv', 
  12.646 +                   'int', 
  12.647 +                   [], 
  12.648 +                   is_pure_virtual=True, is_virtual=True)
  12.649 +    ## icmp-socket.h: int ns3::IcmpSocket::Connect(ns3::Address const & addr) [member function]
  12.650 +    cls.add_method('Connect', 
  12.651 +                   'int', 
  12.652 +                   [param('ns3::Address const &', 'addr')], 
  12.653 +                   is_pure_virtual=True, is_virtual=True)
  12.654 +    ## icmp-socket.h: int ns3::IcmpSocket::Send(ns3::Ptr<ns3::Packet> p, uint32_t flags) [member function]
  12.655 +    cls.add_method('Send', 
  12.656 +                   'int', 
  12.657 +                   [param('ns3::Ptr< ns3::Packet >', 'p'), param('uint32_t', 'flags')], 
  12.658 +                   is_pure_virtual=True, is_virtual=True)
  12.659 +    ## icmp-socket.h: uint32_t ns3::IcmpSocket::GetTxAvailable() const [member function]
  12.660 +    cls.add_method('GetTxAvailable', 
  12.661 +                   'uint32_t', 
  12.662 +                   [], 
  12.663 +                   is_pure_virtual=True, is_const=True, is_virtual=True)
  12.664 +    ## icmp-socket.h: int ns3::IcmpSocket::SendTo(ns3::Ptr<ns3::Packet> p, uint32_t flags, ns3::Address const & addr) [member function]
  12.665 +    cls.add_method('SendTo', 
  12.666 +                   'int', 
  12.667 +                   [param('ns3::Ptr< ns3::Packet >', 'p'), param('uint32_t', 'flags'), param('ns3::Address const &', 'addr')], 
  12.668 +                   is_pure_virtual=True, is_virtual=True)
  12.669 +    ## icmp-socket.h: ns3::Ptr<ns3::Packet> ns3::IcmpSocket::Recv(uint32_t maxSize, uint32_t flags) [member function]
  12.670 +    cls.add_method('Recv', 
  12.671 +                   'ns3::Ptr< ns3::Packet >', 
  12.672 +                   [param('uint32_t', 'maxSize'), param('uint32_t', 'flags')], 
  12.673 +                   is_pure_virtual=True, is_virtual=True)
  12.674 +    ## icmp-socket.h: ns3::Ptr<ns3::Packet> ns3::IcmpSocket::RecvFrom(uint32_t maxSize, uint32_t flags, ns3::Address & fromAddress) [member function]
  12.675 +    cls.add_method('RecvFrom', 
  12.676 +                   'ns3::Ptr< ns3::Packet >', 
  12.677 +                   [param('uint32_t', 'maxSize'), param('uint32_t', 'flags'), param('ns3::Address &', 'fromAddress')], 
  12.678 +                   is_pure_virtual=True, is_virtual=True)
  12.679 +    ## icmp-socket.h: uint32_t ns3::IcmpSocket::GetRxAvailable() const [member function]
  12.680 +    cls.add_method('GetRxAvailable', 
  12.681 +                   'uint32_t', 
  12.682 +                   [], 
  12.683 +                   is_pure_virtual=True, is_const=True, is_virtual=True)
  12.684 +    ## icmp-socket.h: uint32_t ns3::IcmpSocket::GetRcvBufSize() const [member function]
  12.685 +    cls.add_method('GetRcvBufSize', 
  12.686 +                   'uint32_t', 
  12.687 +                   [], 
  12.688 +                   is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
  12.689 +    ## icmp-socket.h: void ns3::IcmpSocket::SetRcvBufSize(uint32_t rcvBufSize) [member function]
  12.690 +    cls.add_method('SetRcvBufSize', 
  12.691 +                   'void', 
  12.692 +                   [param('uint32_t', 'rcvBufSize')], 
  12.693 +                   is_pure_virtual=True, visibility='private', is_virtual=True)
  12.694 +    return
  12.695 +
  12.696  def register_Ns3Ipv4_methods(root_module, cls):
  12.697      ## ipv4.h: ns3::Ipv4::Ipv4(ns3::Ipv4 const & arg0) [copy constructor]
  12.698      cls.add_constructor([param('ns3::Ipv4 const &', 'arg0')])
  12.699 @@ -2344,6 +2904,11 @@
  12.700                     'ns3::Address', 
  12.701                     [param('ns3::Ipv4Address', 'multicastGroup')], 
  12.702                     is_pure_virtual=True, is_const=True, is_virtual=True)
  12.703 +    ## net-device.h: ns3::Address ns3::NetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
  12.704 +    cls.add_method('GetMulticast', 
  12.705 +                   'ns3::Address', 
  12.706 +                   [param('ns3::Ipv6Address', 'addr')], 
  12.707 +                   is_pure_virtual=True, is_const=True, is_virtual=True)
  12.708      ## net-device.h: bool ns3::NetDevice::IsPointToPoint() const [member function]
  12.709      cls.add_method('IsPointToPoint', 
  12.710                     'bool', 
  12.711 @@ -2635,6 +3200,11 @@
  12.712                     'void', 
  12.713                     [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const &, ns3::empty, ns3::empty >', 'cb')], 
  12.714                     is_virtual=True)
  12.715 +    ## simple-net-device.h: ns3::Address ns3::SimpleNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
  12.716 +    cls.add_method('GetMulticast', 
  12.717 +                   'ns3::Address', 
  12.718 +                   [param('ns3::Ipv6Address', 'addr')], 
  12.719 +                   is_const=True, is_virtual=True)
  12.720      ## simple-net-device.h: void ns3::SimpleNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
  12.721      cls.add_method('SetPromiscReceiveCallback', 
  12.722                     'void', 
  12.723 @@ -2654,18 +3224,46 @@
  12.724  
  12.725  def register_functions(root_module):
  12.726      module = root_module
  12.727 -    ## mac48-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeMac48AddressChecker() [free function]
  12.728 -    module.add_function('MakeMac48AddressChecker', 
  12.729 +    ## address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeAddressChecker() [free function]
  12.730 +    module.add_function('MakeAddressChecker', 
  12.731                          'ns3::Ptr< ns3::AttributeChecker const >', 
  12.732                          [])
  12.733      ## ipv4-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeIpv4AddressChecker() [free function]
  12.734      module.add_function('MakeIpv4AddressChecker', 
  12.735                          'ns3::Ptr< ns3::AttributeChecker const >', 
  12.736                          [])
  12.737 -    ## address-utils.h: extern void ns3::WriteTo(ns3::Buffer::Iterator & i, ns3::Mac48Address ad) [free function]
  12.738 -    module.add_function('WriteTo', 
  12.739 +    ## ipv4-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeIpv4MaskChecker() [free function]
  12.740 +    module.add_function('MakeIpv4MaskChecker', 
  12.741 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.742 +                        [])
  12.743 +    ## ipv6-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeIpv6AddressChecker() [free function]
  12.744 +    module.add_function('MakeIpv6AddressChecker', 
  12.745 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.746 +                        [])
  12.747 +    ## ipv6-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeIpv6PrefixChecker() [free function]
  12.748 +    module.add_function('MakeIpv6PrefixChecker', 
  12.749 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.750 +                        [])
  12.751 +    ## mac48-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeMac48AddressChecker() [free function]
  12.752 +    module.add_function('MakeMac48AddressChecker', 
  12.753 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.754 +                        [])
  12.755 +    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Address & ad, uint32_t len) [free function]
  12.756 +    module.add_function('ReadFrom', 
  12.757                          'void', 
  12.758 -                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Mac48Address', 'ad')])
  12.759 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Address &', 'ad'), param('uint32_t', 'len')])
  12.760 +    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Ipv4Address & ad) [free function]
  12.761 +    module.add_function('ReadFrom', 
  12.762 +                        'void', 
  12.763 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Ipv4Address &', 'ad')])
  12.764 +    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Ipv6Address & ad) [free function]
  12.765 +    module.add_function('ReadFrom', 
  12.766 +                        'void', 
  12.767 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Ipv6Address &', 'ad')])
  12.768 +    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Mac48Address & ad) [free function]
  12.769 +    module.add_function('ReadFrom', 
  12.770 +                        'void', 
  12.771 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Mac48Address &', 'ad')])
  12.772      ## address-utils.h: extern void ns3::WriteTo(ns3::Buffer::Iterator & i, ns3::Address const & ad) [free function]
  12.773      module.add_function('WriteTo', 
  12.774                          'void', 
  12.775 @@ -2674,41 +3272,29 @@
  12.776      module.add_function('WriteTo', 
  12.777                          'void', 
  12.778                          [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Ipv4Address', 'ad')])
  12.779 -    ## address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeAddressChecker() [free function]
  12.780 -    module.add_function('MakeAddressChecker', 
  12.781 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.782 -                        [])
  12.783 -    ## ipv4-address.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeIpv4MaskChecker() [free function]
  12.784 -    module.add_function('MakeIpv4MaskChecker', 
  12.785 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
  12.786 -                        [])
  12.787 -    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Mac48Address & ad) [free function]
  12.788 -    module.add_function('ReadFrom', 
  12.789 +    ## address-utils.h: extern void ns3::WriteTo(ns3::Buffer::Iterator & i, ns3::Ipv6Address ad) [free function]
  12.790 +    module.add_function('WriteTo', 
  12.791                          'void', 
  12.792 -                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Mac48Address &', 'ad')])
  12.793 -    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Address & ad, uint32_t len) [free function]
  12.794 -    module.add_function('ReadFrom', 
  12.795 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Ipv6Address', 'ad')])
  12.796 +    ## address-utils.h: extern void ns3::WriteTo(ns3::Buffer::Iterator & i, ns3::Mac48Address ad) [free function]
  12.797 +    module.add_function('WriteTo', 
  12.798                          'void', 
  12.799 -                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Address &', 'ad'), param('uint32_t', 'len')])
  12.800 -    ## address-utils.h: extern void ns3::ReadFrom(ns3::Buffer::Iterator & i, ns3::Ipv4Address & ad) [free function]
  12.801 -    module.add_function('ReadFrom', 
  12.802 -                        'void', 
  12.803 -                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Ipv4Address &', 'ad')])
  12.804 +                        [param('ns3::Buffer::Iterator &', 'i'), param('ns3::Mac48Address', 'ad')])
  12.805 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
  12.806 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
  12.807      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
  12.808 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
  12.809 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
  12.810      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
  12.811      return
  12.812  
  12.813 +def register_functions_ns3_Config(module, root_module):
  12.814 +    return
  12.815 +
  12.816 +def register_functions_ns3_TimeStepPrecision(module, root_module):
  12.817 +    return
  12.818 +
  12.819  def register_functions_ns3_internal(module, root_module):
  12.820      return
  12.821  
  12.822 -def register_functions_ns3_TimeStepPrecision(module, root_module):
  12.823 -    return
  12.824 -
  12.825 -def register_functions_ns3_Config(module, root_module):
  12.826 -    return
  12.827 -
  12.828  def register_functions_ns3_olsr(module, root_module):
  12.829      return
  12.830  
    13.1 --- a/bindings/python/ns3_module_olsr.py	Fri Nov 07 19:51:00 2008 +0000
    13.2 +++ b/bindings/python/ns3_module_olsr.py	Sat Nov 08 15:00:28 2008 +0000
    13.3 @@ -4,10 +4,10 @@
    13.4      root_module = module.get_root()
    13.5      
    13.6      
    13.7 -    ## Register a nested module for the namespace internal
    13.8 +    ## Register a nested module for the namespace Config
    13.9      
   13.10 -    nested_module = module.add_cpp_namespace('internal')
   13.11 -    register_types_ns3_internal(nested_module)
   13.12 +    nested_module = module.add_cpp_namespace('Config')
   13.13 +    register_types_ns3_Config(nested_module)
   13.14      
   13.15      
   13.16      ## Register a nested module for the namespace TimeStepPrecision
   13.17 @@ -16,10 +16,10 @@
   13.18      register_types_ns3_TimeStepPrecision(nested_module)
   13.19      
   13.20      
   13.21 -    ## Register a nested module for the namespace Config
   13.22 +    ## Register a nested module for the namespace internal
   13.23      
   13.24 -    nested_module = module.add_cpp_namespace('Config')
   13.25 -    register_types_ns3_Config(nested_module)
   13.26 +    nested_module = module.add_cpp_namespace('internal')
   13.27 +    register_types_ns3_internal(nested_module)
   13.28      
   13.29      
   13.30      ## Register a nested module for the namespace olsr
   13.31 @@ -28,7 +28,7 @@
   13.32      register_types_ns3_olsr(nested_module)
   13.33      
   13.34  
   13.35 -def register_types_ns3_internal(module):
   13.36 +def register_types_ns3_Config(module):
   13.37      root_module = module.get_root()
   13.38      
   13.39  
   13.40 @@ -36,7 +36,7 @@
   13.41      root_module = module.get_root()
   13.42      
   13.43  
   13.44 -def register_types_ns3_Config(module):
   13.45 +def register_types_ns3_internal(module):
   13.46      root_module = module.get_root()
   13.47      
   13.48  
   13.49 @@ -533,19 +533,19 @@
   13.50  
   13.51  def register_functions(root_module):
   13.52      module = root_module
   13.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   13.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   13.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   13.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   13.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   13.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   13.59      return
   13.60  
   13.61 -def register_functions_ns3_internal(module, root_module):
   13.62 +def register_functions_ns3_Config(module, root_module):
   13.63      return
   13.64  
   13.65  def register_functions_ns3_TimeStepPrecision(module, root_module):
   13.66      return
   13.67  
   13.68 -def register_functions_ns3_Config(module, root_module):
   13.69 +def register_functions_ns3_internal(module, root_module):
   13.70      return
   13.71  
   13.72  def register_functions_ns3_olsr(module, root_module):
    14.1 --- a/bindings/python/ns3_module_onoff.py	Fri Nov 07 19:51:00 2008 +0000
    14.2 +++ b/bindings/python/ns3_module_onoff.py	Sat Nov 08 15:00:28 2008 +0000
    14.3 @@ -6,10 +6,10 @@
    14.4      ## onoff-application.h: ns3::OnOffApplication [class]
    14.5      module.add_class('OnOffApplication', parent=root_module['ns3::Application'])
    14.6      
    14.7 -    ## Register a nested module for the namespace internal
    14.8 +    ## Register a nested module for the namespace Config
    14.9      
   14.10 -    nested_module = module.add_cpp_namespace('internal')
   14.11 -    register_types_ns3_internal(nested_module)
   14.12 +    nested_module = module.add_cpp_namespace('Config')
   14.13 +    register_types_ns3_Config(nested_module)
   14.14      
   14.15      
   14.16      ## Register a nested module for the namespace TimeStepPrecision
   14.17 @@ -18,10 +18,10 @@
   14.18      register_types_ns3_TimeStepPrecision(nested_module)
   14.19      
   14.20      
   14.21 -    ## Register a nested module for the namespace Config
   14.22 +    ## Register a nested module for the namespace internal
   14.23      
   14.24 -    nested_module = module.add_cpp_namespace('Config')
   14.25 -    register_types_ns3_Config(nested_module)
   14.26 +    nested_module = module.add_cpp_namespace('internal')
   14.27 +    register_types_ns3_internal(nested_module)
   14.28      
   14.29      
   14.30      ## Register a nested module for the namespace olsr
   14.31 @@ -30,7 +30,7 @@
   14.32      register_types_ns3_olsr(nested_module)
   14.33      
   14.34  
   14.35 -def register_types_ns3_internal(module):
   14.36 +def register_types_ns3_Config(module):
   14.37      root_module = module.get_root()
   14.38      
   14.39  
   14.40 @@ -38,7 +38,7 @@
   14.41      root_module = module.get_root()
   14.42      
   14.43  
   14.44 -def register_types_ns3_Config(module):
   14.45 +def register_types_ns3_internal(module):
   14.46      root_module = module.get_root()
   14.47      
   14.48  
   14.49 @@ -83,21 +83,21 @@
   14.50  
   14.51  def register_functions(root_module):
   14.52      module = root_module
   14.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   14.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   14.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   14.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   14.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   14.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   14.59      return
   14.60  
   14.61 +def register_functions_ns3_Config(module, root_module):
   14.62 +    return
   14.63 +
   14.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   14.65 +    return
   14.66 +
   14.67  def register_functions_ns3_internal(module, root_module):
   14.68      return
   14.69  
   14.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   14.71 -    return
   14.72 -
   14.73 -def register_functions_ns3_Config(module, root_module):
   14.74 -    return
   14.75 -
   14.76  def register_functions_ns3_olsr(module, root_module):
   14.77      return
   14.78  
    15.1 --- a/bindings/python/ns3_module_packet_sink.py	Fri Nov 07 19:51:00 2008 +0000
    15.2 +++ b/bindings/python/ns3_module_packet_sink.py	Sat Nov 08 15:00:28 2008 +0000
    15.3 @@ -6,10 +6,10 @@
    15.4      ## packet-sink.h: ns3::PacketSink [class]
    15.5      module.add_class('PacketSink', parent=root_module['ns3::Application'])
    15.6      
    15.7 -    ## Register a nested module for the namespace internal
    15.8 +    ## Register a nested module for the namespace Config
    15.9      
   15.10 -    nested_module = module.add_cpp_namespace('internal')
   15.11 -    register_types_ns3_internal(nested_module)
   15.12 +    nested_module = module.add_cpp_namespace('Config')
   15.13 +    register_types_ns3_Config(nested_module)
   15.14      
   15.15      
   15.16      ## Register a nested module for the namespace TimeStepPrecision
   15.17 @@ -18,10 +18,10 @@
   15.18      register_types_ns3_TimeStepPrecision(nested_module)
   15.19      
   15.20      
   15.21 -    ## Register a nested module for the namespace Config
   15.22 +    ## Register a nested module for the namespace internal
   15.23      
   15.24 -    nested_module = module.add_cpp_namespace('Config')
   15.25 -    register_types_ns3_Config(nested_module)
   15.26 +    nested_module = module.add_cpp_namespace('internal')
   15.27 +    register_types_ns3_internal(nested_module)
   15.28      
   15.29      
   15.30      ## Register a nested module for the namespace olsr
   15.31 @@ -30,7 +30,7 @@
   15.32      register_types_ns3_olsr(nested_module)
   15.33      
   15.34  
   15.35 -def register_types_ns3_internal(module):
   15.36 +def register_types_ns3_Config(module):
   15.37      root_module = module.get_root()
   15.38      
   15.39  
   15.40 @@ -38,7 +38,7 @@
   15.41      root_module = module.get_root()
   15.42      
   15.43  
   15.44 -def register_types_ns3_Config(module):
   15.45 +def register_types_ns3_internal(module):
   15.46      root_module = module.get_root()
   15.47      
   15.48  
   15.49 @@ -79,21 +79,21 @@
   15.50  
   15.51  def register_functions(root_module):
   15.52      module = root_module
   15.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   15.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   15.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   15.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   15.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   15.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   15.59      return
   15.60  
   15.61 +def register_functions_ns3_Config(module, root_module):
   15.62 +    return
   15.63 +
   15.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   15.65 +    return
   15.66 +
   15.67  def register_functions_ns3_internal(module, root_module):
   15.68      return
   15.69  
   15.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   15.71 -    return
   15.72 -
   15.73 -def register_functions_ns3_Config(module, root_module):
   15.74 -    return
   15.75 -
   15.76  def register_functions_ns3_olsr(module, root_module):
   15.77      return
   15.78  
    16.1 --- a/bindings/python/ns3_module_point_to_point.py	Fri Nov 07 19:51:00 2008 +0000
    16.2 +++ b/bindings/python/ns3_module_point_to_point.py	Sat Nov 08 15:00:28 2008 +0000
    16.3 @@ -8,10 +8,10 @@
    16.4      ## point-to-point-net-device.h: ns3::PointToPointNetDevice [class]
    16.5      module.add_class('PointToPointNetDevice', parent=root_module['ns3::NetDevice'])
    16.6      
    16.7 -    ## Register a nested module for the namespace internal
    16.8 +    ## Register a nested module for the namespace Config
    16.9      
   16.10 -    nested_module = module.add_cpp_namespace('internal')
   16.11 -    register_types_ns3_internal(nested_module)
   16.12 +    nested_module = module.add_cpp_namespace('Config')
   16.13 +    register_types_ns3_Config(nested_module)
   16.14      
   16.15      
   16.16      ## Register a nested module for the namespace TimeStepPrecision
   16.17 @@ -20,10 +20,10 @@
   16.18      register_types_ns3_TimeStepPrecision(nested_module)
   16.19      
   16.20      
   16.21 -    ## Register a nested module for the namespace Config
   16.22 +    ## Register a nested module for the namespace internal
   16.23      
   16.24 -    nested_module = module.add_cpp_namespace('Config')
   16.25 -    register_types_ns3_Config(nested_module)
   16.26 +    nested_module = module.add_cpp_namespace('internal')
   16.27 +    register_types_ns3_internal(nested_module)
   16.28      
   16.29      
   16.30      ## Register a nested module for the namespace olsr
   16.31 @@ -32,7 +32,7 @@
   16.32      register_types_ns3_olsr(nested_module)
   16.33      
   16.34  
   16.35 -def register_types_ns3_internal(module):
   16.36 +def register_types_ns3_Config(module):
   16.37      root_module = module.get_root()
   16.38      
   16.39  
   16.40 @@ -40,7 +40,7 @@
   16.41      root_module = module.get_root()
   16.42      
   16.43  
   16.44 -def register_types_ns3_Config(module):
   16.45 +def register_types_ns3_internal(module):
   16.46      root_module = module.get_root()
   16.47      
   16.48  
   16.49 @@ -240,6 +240,11 @@
   16.50                     'void', 
   16.51                     [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const &, ns3::empty, ns3::empty >', 'cb')], 
   16.52                     is_virtual=True)
   16.53 +    ## point-to-point-net-device.h: ns3::Address ns3::PointToPointNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
   16.54 +    cls.add_method('GetMulticast', 
   16.55 +                   'ns3::Address', 
   16.56 +                   [param('ns3::Ipv6Address', 'addr')], 
   16.57 +                   is_const=True, is_virtual=True)
   16.58      ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
   16.59      cls.add_method('SetPromiscReceiveCallback', 
   16.60                     'void', 
   16.61 @@ -259,21 +264,21 @@
   16.62  
   16.63  def register_functions(root_module):
   16.64      module = root_module
   16.65 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   16.66 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   16.67      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   16.68 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   16.69 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   16.70      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   16.71      return
   16.72  
   16.73 +def register_functions_ns3_Config(module, root_module):
   16.74 +    return
   16.75 +
   16.76 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   16.77 +    return
   16.78 +
   16.79  def register_functions_ns3_internal(module, root_module):
   16.80      return
   16.81  
   16.82 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   16.83 -    return
   16.84 -
   16.85 -def register_functions_ns3_Config(module, root_module):
   16.86 -    return
   16.87 -
   16.88  def register_functions_ns3_olsr(module, root_module):
   16.89      return
   16.90  
    17.1 --- a/bindings/python/ns3_module_simulator.py	Fri Nov 07 19:51:00 2008 +0000
    17.2 +++ b/bindings/python/ns3_module_simulator.py	Sat Nov 08 15:00:28 2008 +0000
    17.3 @@ -58,10 +58,10 @@
    17.4      ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl::SynchronizationMode [enumeration]
    17.5      module.add_enum('SynchronizationMode', ['SYNC_BEST_EFFORT', 'SYNC_HARD_LIMIT'], outer_class=root_module['ns3::RealtimeSimulatorImpl'])
    17.6      
    17.7 -    ## Register a nested module for the namespace internal
    17.8 +    ## Register a nested module for the namespace Config
    17.9      
   17.10 -    nested_module = module.add_cpp_namespace('internal')
   17.11 -    register_types_ns3_internal(nested_module)
   17.12 +    nested_module = module.add_cpp_namespace('Config')
   17.13 +    register_types_ns3_Config(nested_module)
   17.14      
   17.15      
   17.16      ## Register a nested module for the namespace TimeStepPrecision
   17.17 @@ -70,10 +70,10 @@
   17.18      register_types_ns3_TimeStepPrecision(nested_module)
   17.19      
   17.20      
   17.21 -    ## Register a nested module for the namespace Config
   17.22 +    ## Register a nested module for the namespace internal
   17.23      
   17.24 -    nested_module = module.add_cpp_namespace('Config')
   17.25 -    register_types_ns3_Config(nested_module)
   17.26 +    nested_module = module.add_cpp_namespace('internal')
   17.27 +    register_types_ns3_internal(nested_module)
   17.28      
   17.29      
   17.30      ## Register a nested module for the namespace olsr
   17.31 @@ -82,7 +82,7 @@
   17.32      register_types_ns3_olsr(nested_module)
   17.33      
   17.34  
   17.35 -def register_types_ns3_internal(module):
   17.36 +def register_types_ns3_Config(module):
   17.37      root_module = module.get_root()
   17.38      
   17.39  
   17.40 @@ -92,7 +92,7 @@
   17.41      ## nstime.h: ns3::TimeStepPrecision::precision_t [enumeration]
   17.42      module.add_enum('precision_t', ['S', 'MS', 'US', 'NS', 'PS', 'FS'])
   17.43  
   17.44 -def register_types_ns3_Config(module):
   17.45 +def register_types_ns3_internal(module):
   17.46      root_module = module.get_root()
   17.47      
   17.48  
   17.49 @@ -1404,81 +1404,81 @@
   17.50  
   17.51  def register_functions(root_module):
   17.52      module = root_module
   17.53 +    ## high-precision.h: extern ns3::HighPrecision ns3::Abs(ns3::HighPrecision const & value) [free function]
   17.54 +    module.add_function('Abs', 
   17.55 +                        'ns3::HighPrecision', 
   17.56 +                        [param('ns3::HighPrecision const &', 'value')])
   17.57 +    ## nstime.h: extern ns3::Time ns3::FemtoSeconds(uint64_t fs) [free function]
   17.58 +    module.add_function('FemtoSeconds', 
   17.59 +                        'ns3::Time', 
   17.60 +                        [param('uint64_t', 'fs')])
   17.61 +    ## make-event.h: extern ns3::EventImpl * ns3::MakeEvent(void (*)(  ) * f) [free function]
   17.62 +    module.add_function('MakeEvent', 
   17.63 +                        'ns3::EventImpl *', 
   17.64 +                        [param('void ( * ) (  ) *', 'f')])
   17.65 +    ## nstime.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeTimeChecker() [free function]
   17.66 +    module.add_function('MakeTimeChecker', 
   17.67 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   17.68 +                        [])
   17.69      ## high-precision.h: extern ns3::HighPrecision ns3::Max(ns3::HighPrecision const & a, ns3::HighPrecision const & b) [free function]
   17.70      module.add_function('Max', 
   17.71                          'ns3::HighPrecision', 
   17.72                          [param('ns3::HighPrecision const &', 'a'), param('ns3::HighPrecision const &', 'b')])
   17.73 -    ## nstime.h: extern ns3::Time ns3::FemtoSeconds(uint64_t fs) [free function]
   17.74 -    module.add_function('FemtoSeconds', 
   17.75 -                        'ns3::Time', 
   17.76 -                        [param('uint64_t', 'fs')])
   17.77      ## nstime.h: extern ns3::Time ns3::MicroSeconds(uint64_t us) [free function]
   17.78      module.add_function('MicroSeconds', 
   17.79                          'ns3::Time', 
   17.80                          [param('uint64_t', 'us')])
   17.81 +    ## nstime.h: extern ns3::Time ns3::MilliSeconds(uint64_t ms) [free function]
   17.82 +    module.add_function('MilliSeconds', 
   17.83 +                        'ns3::Time', 
   17.84 +                        [param('uint64_t', 'ms')])
   17.85 +    ## high-precision.h: extern ns3::HighPrecision ns3::Min(ns3::HighPrecision const & a, ns3::HighPrecision const & b) [free function]
   17.86 +    module.add_function('Min', 
   17.87 +                        'ns3::HighPrecision', 
   17.88 +                        [param('ns3::HighPrecision const &', 'a'), param('ns3::HighPrecision const &', 'b')])
   17.89 +    ## nstime.h: extern ns3::Time ns3::NanoSeconds(uint64_t ns) [free function]
   17.90 +    module.add_function('NanoSeconds', 
   17.91 +                        'ns3::Time', 
   17.92 +                        [param('uint64_t', 'ns')])
   17.93      ## simulator.h: extern ns3::Time ns3::Now() [free function]
   17.94      module.add_function('Now', 
   17.95                          'ns3::Time', 
   17.96                          [])
   17.97 -    ## nstime.h: extern ns3::Time ns3::MilliSeconds(uint64_t ms) [free function]
   17.98 -    module.add_function('MilliSeconds', 
   17.99 +    ## nstime.h: extern ns3::Time ns3::PicoSeconds(uint64_t ps) [free function]
  17.100 +    module.add_function('PicoSeconds', 
  17.101                          'ns3::Time', 
  17.102 -                        [param('uint64_t', 'ms')])
  17.103 -    ## nstime.h: extern ns3::Time ns3::NanoSeconds(uint64_t ns) [free function]
  17.104 -    module.add_function('NanoSeconds', 
  17.105 -                        'ns3::Time', 
  17.106 -                        [param('uint64_t', 'ns')])
  17.107 -    ## high-precision.h: extern ns3::HighPrecision ns3::Abs(ns3::HighPrecision const & value) [free function]
  17.108 -    module.add_function('Abs', 
  17.109 -                        'ns3::HighPrecision', 
  17.110 -                        [param('ns3::HighPrecision const &', 'value')])
  17.111 -    ## nstime.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeTimeChecker() [free function]
  17.112 -    module.add_function('MakeTimeChecker', 
  17.113 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
  17.114 -                        [])
  17.115 +                        [param('uint64_t', 'ps')])
  17.116      ## nstime.h: extern ns3::Time ns3::Seconds(double seconds) [free function]
  17.117      module.add_function('Seconds', 
  17.118                          'ns3::Time', 
  17.119                          [param('double', 'seconds')])
  17.120 -    ## make-event.h: extern ns3::EventImpl * ns3::MakeEvent(void (*)(  ) * f) [free function]
  17.121 -    module.add_function('MakeEvent', 
  17.122 -                        'ns3::EventImpl *', 
  17.123 -                        [param('void ( * ) (  ) *', 'f')])
  17.124 -    ## nstime.h: extern ns3::Time ns3::PicoSeconds(uint64_t ps) [free function]
  17.125 -    module.add_function('PicoSeconds', 
  17.126 -                        'ns3::Time', 
  17.127 -                        [param('uint64_t', 'ps')])
  17.128 -    ## high-precision.h: extern ns3::HighPrecision ns3::Min(ns3::HighPrecision const & a, ns3::HighPrecision const & b) [free function]
  17.129 -    module.add_function('Min', 
  17.130 -                        'ns3::HighPrecision', 
  17.131 -                        [param('ns3::HighPrecision const &', 'a'), param('ns3::HighPrecision const &', 'b')])
  17.132      ## nstime.h: extern ns3::Time ns3::TimeStep(uint64_t ts) [free function]
  17.133      module.add_function('TimeStep', 
  17.134                          'ns3::Time', 
  17.135                          [param('uint64_t', 'ts')])
  17.136 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
  17.137 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
  17.138      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
  17.139 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
  17.140 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
  17.141      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
  17.142      return
  17.143  
  17.144 +def register_functions_ns3_Config(module, root_module):
  17.145 +    return
  17.146 +
  17.147 +def register_functions_ns3_TimeStepPrecision(module, root_module):
  17.148 +    ## nstime.h: extern ns3::TimeStepPrecision::precision_t ns3::TimeStepPrecision::Get() [free function]
  17.149 +    module.add_function('Get', 
  17.150 +                        'ns3::TimeStepPrecision::precision_t', 
  17.151 +                        [])
  17.152 +    ## nstime.h: extern void ns3::TimeStepPrecision::Set(ns3::TimeStepPrecision::precision_t precision) [free function]
  17.153 +    module.add_function('Set', 
  17.154 +                        'void', 
  17.155 +                        [param('ns3::TimeStepPrecision::precision_t', 'precision')])
  17.156 +    return
  17.157 +
  17.158  def register_functions_ns3_internal(module, root_module):
  17.159      return
  17.160  
  17.161 -def register_functions_ns3_TimeStepPrecision(module, root_module):
  17.162 -    ## nstime.h: extern void ns3::TimeStepPrecision::Set(ns3::TimeStepPrecision::precision_t precision) [free function]
  17.163 -    module.add_function('Set', 
  17.164 -                        'void', 
  17.165 -                        [param('ns3::TimeStepPrecision::precision_t', 'precision')])
  17.166 -    ## nstime.h: extern ns3::TimeStepPrecision::precision_t ns3::TimeStepPrecision::Get() [free function]
  17.167 -    module.add_function('Get', 
  17.168 -                        'ns3::TimeStepPrecision::precision_t', 
  17.169 -                        [])
  17.170 -    return
  17.171 -
  17.172 -def register_functions_ns3_Config(module, root_module):
  17.173 -    return
  17.174 -
  17.175  def register_functions_ns3_olsr(module, root_module):
  17.176      return
  17.177  
    18.1 --- a/bindings/python/ns3_module_stats.py	Fri Nov 07 19:51:00 2008 +0000
    18.2 +++ b/bindings/python/ns3_module_stats.py	Sat Nov 08 15:00:28 2008 +0000
    18.3 @@ -26,10 +26,10 @@
    18.4      ## packet-data-calculators.h: ns3::PacketCounterCalculator [class]
    18.5      module.add_class('PacketCounterCalculator', parent=root_module['ns3::CounterCalculator< unsigned int >'])
    18.6      
    18.7 -    ## Register a nested module for the namespace internal
    18.8 +    ## Register a nested module for the namespace Config
    18.9      
   18.10 -    nested_module = module.add_cpp_namespace('internal')
   18.11 -    register_types_ns3_internal(nested_module)
   18.12 +    nested_module = module.add_cpp_namespace('Config')
   18.13 +    register_types_ns3_Config(nested_module)
   18.14      
   18.15      
   18.16      ## Register a nested module for the namespace TimeStepPrecision
   18.17 @@ -38,10 +38,10 @@
   18.18      register_types_ns3_TimeStepPrecision(nested_module)
   18.19      
   18.20      
   18.21 -    ## Register a nested module for the namespace Config
   18.22 +    ## Register a nested module for the namespace internal
   18.23      
   18.24 -    nested_module = module.add_cpp_namespace('Config')
   18.25 -    register_types_ns3_Config(nested_module)
   18.26 +    nested_module = module.add_cpp_namespace('internal')
   18.27 +    register_types_ns3_internal(nested_module)
   18.28      
   18.29      
   18.30      ## Register a nested module for the namespace olsr
   18.31 @@ -50,7 +50,7 @@
   18.32      register_types_ns3_olsr(nested_module)
   18.33      
   18.34  
   18.35 -def register_types_ns3_internal(module):
   18.36 +def register_types_ns3_Config(module):
   18.37      root_module = module.get_root()
   18.38      
   18.39  
   18.40 @@ -58,7 +58,7 @@
   18.41      root_module = module.get_root()
   18.42      
   18.43  
   18.44 -def register_types_ns3_Config(module):
   18.45 +def register_types_ns3_internal(module):
   18.46      root_module = module.get_root()
   18.47      
   18.48  
   18.49 @@ -417,21 +417,21 @@
   18.50  
   18.51  def register_functions(root_module):
   18.52      module = root_module
   18.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   18.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   18.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   18.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   18.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   18.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   18.59      return
   18.60  
   18.61 +def register_functions_ns3_Config(module, root_module):
   18.62 +    return
   18.63 +
   18.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   18.65 +    return
   18.66 +
   18.67  def register_functions_ns3_internal(module, root_module):
   18.68      return
   18.69  
   18.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   18.71 -    return
   18.72 -
   18.73 -def register_functions_ns3_Config(module, root_module):
   18.74 -    return
   18.75 -
   18.76  def register_functions_ns3_olsr(module, root_module):
   18.77      return
   18.78  
    19.1 --- a/bindings/python/ns3_module_udp_echo.py	Fri Nov 07 19:51:00 2008 +0000
    19.2 +++ b/bindings/python/ns3_module_udp_echo.py	Sat Nov 08 15:00:28 2008 +0000
    19.3 @@ -8,10 +8,10 @@
    19.4      ## udp-echo-server.h: ns3::UdpEchoServer [class]
    19.5      module.add_class('UdpEchoServer', parent=root_module['ns3::Application'])
    19.6      
    19.7 -    ## Register a nested module for the namespace internal
    19.8 +    ## Register a nested module for the namespace Config
    19.9      
   19.10 -    nested_module = module.add_cpp_namespace('internal')
   19.11 -    register_types_ns3_internal(nested_module)
   19.12 +    nested_module = module.add_cpp_namespace('Config')
   19.13 +    register_types_ns3_Config(nested_module)
   19.14      
   19.15      
   19.16      ## Register a nested module for the namespace TimeStepPrecision
   19.17 @@ -20,10 +20,10 @@
   19.18      register_types_ns3_TimeStepPrecision(nested_module)
   19.19      
   19.20      
   19.21 -    ## Register a nested module for the namespace Config
   19.22 +    ## Register a nested module for the namespace internal
   19.23      
   19.24 -    nested_module = module.add_cpp_namespace('Config')
   19.25 -    register_types_ns3_Config(nested_module)
   19.26 +    nested_module = module.add_cpp_namespace('internal')
   19.27 +    register_types_ns3_internal(nested_module)
   19.28      
   19.29      
   19.30      ## Register a nested module for the namespace olsr
   19.31 @@ -32,7 +32,7 @@
   19.32      register_types_ns3_olsr(nested_module)
   19.33      
   19.34  
   19.35 -def register_types_ns3_internal(module):
   19.36 +def register_types_ns3_Config(module):
   19.37      root_module = module.get_root()
   19.38      
   19.39  
   19.40 @@ -40,7 +40,7 @@
   19.41      root_module = module.get_root()
   19.42      
   19.43  
   19.44 -def register_types_ns3_Config(module):
   19.45 +def register_types_ns3_internal(module):
   19.46      root_module = module.get_root()
   19.47      
   19.48  
   19.49 @@ -113,21 +113,21 @@
   19.50  
   19.51  def register_functions(root_module):
   19.52      module = root_module
   19.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   19.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   19.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   19.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   19.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   19.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   19.59      return
   19.60  
   19.61 +def register_functions_ns3_Config(module, root_module):
   19.62 +    return
   19.63 +
   19.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   19.65 +    return
   19.66 +
   19.67  def register_functions_ns3_internal(module, root_module):
   19.68      return
   19.69  
   19.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   19.71 -    return
   19.72 -
   19.73 -def register_functions_ns3_Config(module, root_module):
   19.74 -    return
   19.75 -
   19.76  def register_functions_ns3_olsr(module, root_module):
   19.77      return
   19.78  
    20.1 --- a/bindings/python/ns3_module_v4ping.py	Fri Nov 07 19:51:00 2008 +0000
    20.2 +++ b/bindings/python/ns3_module_v4ping.py	Sat Nov 08 15:00:28 2008 +0000
    20.3 @@ -6,10 +6,10 @@
    20.4      ## v4ping.h: ns3::V4Ping [class]
    20.5      module.add_class('V4Ping', parent=root_module['ns3::Application'])
    20.6      
    20.7 -    ## Register a nested module for the namespace internal
    20.8 +    ## Register a nested module for the namespace Config
    20.9      
   20.10 -    nested_module = module.add_cpp_namespace('internal')
   20.11 -    register_types_ns3_internal(nested_module)
   20.12 +    nested_module = module.add_cpp_namespace('Config')
   20.13 +    register_types_ns3_Config(nested_module)
   20.14      
   20.15      
   20.16      ## Register a nested module for the namespace TimeStepPrecision
   20.17 @@ -18,10 +18,10 @@
   20.18      register_types_ns3_TimeStepPrecision(nested_module)
   20.19      
   20.20      
   20.21 -    ## Register a nested module for the namespace Config
   20.22 +    ## Register a nested module for the namespace internal
   20.23      
   20.24 -    nested_module = module.add_cpp_namespace('Config')
   20.25 -    register_types_ns3_Config(nested_module)
   20.26 +    nested_module = module.add_cpp_namespace('internal')
   20.27 +    register_types_ns3_internal(nested_module)
   20.28      
   20.29      
   20.30      ## Register a nested module for the namespace olsr
   20.31 @@ -30,7 +30,7 @@
   20.32      register_types_ns3_olsr(nested_module)
   20.33      
   20.34  
   20.35 -def register_types_ns3_internal(module):
   20.36 +def register_types_ns3_Config(module):
   20.37      root_module = module.get_root()
   20.38      
   20.39  
   20.40 @@ -38,7 +38,7 @@
   20.41      root_module = module.get_root()
   20.42      
   20.43  
   20.44 -def register_types_ns3_Config(module):
   20.45 +def register_types_ns3_internal(module):
   20.46      root_module = module.get_root()
   20.47      
   20.48  
   20.49 @@ -79,21 +79,21 @@
   20.50  
   20.51  def register_functions(root_module):
   20.52      module = root_module
   20.53 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   20.54 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   20.55      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   20.56 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   20.57 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   20.58      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   20.59      return
   20.60  
   20.61 +def register_functions_ns3_Config(module, root_module):
   20.62 +    return
   20.63 +
   20.64 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   20.65 +    return
   20.66 +
   20.67  def register_functions_ns3_internal(module, root_module):
   20.68      return
   20.69  
   20.70 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   20.71 -    return
   20.72 -
   20.73 -def register_functions_ns3_Config(module, root_module):
   20.74 -    return
   20.75 -
   20.76  def register_functions_ns3_olsr(module, root_module):
   20.77      return
   20.78  
    21.1 --- a/bindings/python/ns3_module_wifi.py	Fri Nov 07 19:51:00 2008 +0000
    21.2 +++ b/bindings/python/ns3_module_wifi.py	Sat Nov 08 15:00:28 2008 +0000
    21.3 @@ -96,10 +96,10 @@
    21.4      ## aarf-wifi-manager.h: ns3::AarfWifiManager [class]
    21.5      module.add_class('AarfWifiManager', parent=root_module['ns3::ArfWifiManager'])
    21.6      
    21.7 -    ## Register a nested module for the namespace internal
    21.8 +    ## Register a nested module for the namespace Config
    21.9      
   21.10 -    nested_module = module.add_cpp_namespace('internal')
   21.11 -    register_types_ns3_internal(nested_module)
   21.12 +    nested_module = module.add_cpp_namespace('Config')
   21.13 +    register_types_ns3_Config(nested_module)
   21.14      
   21.15      
   21.16      ## Register a nested module for the namespace TimeStepPrecision
   21.17 @@ -108,10 +108,10 @@
   21.18      register_types_ns3_TimeStepPrecision(nested_module)
   21.19      
   21.20      
   21.21 -    ## Register a nested module for the namespace Config
   21.22 +    ## Register a nested module for the namespace internal
   21.23      
   21.24 -    nested_module = module.add_cpp_namespace('Config')
   21.25 -    register_types_ns3_Config(nested_module)
   21.26 +    nested_module = module.add_cpp_namespace('internal')
   21.27 +    register_types_ns3_internal(nested_module)
   21.28      
   21.29      
   21.30      ## Register a nested module for the namespace olsr
   21.31 @@ -120,7 +120,7 @@
   21.32      register_types_ns3_olsr(nested_module)
   21.33      
   21.34  
   21.35 -def register_types_ns3_internal(module):
   21.36 +def register_types_ns3_Config(module):
   21.37      root_module = module.get_root()
   21.38      
   21.39  
   21.40 @@ -128,7 +128,7 @@
   21.41      root_module = module.get_root()
   21.42      
   21.43  
   21.44 -def register_types_ns3_Config(module):
   21.45 +def register_types_ns3_internal(module):
   21.46      root_module = module.get_root()
   21.47      
   21.48  
   21.49 @@ -2501,6 +2501,11 @@
   21.50                     'void', 
   21.51                     [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const &, ns3::empty, ns3::empty >', 'cb')], 
   21.52                     is_virtual=True)
   21.53 +    ## wifi-net-device.h: ns3::Address ns3::WifiNetDevice::GetMulticast(ns3::Ipv6Address addr) const [member function]
   21.54 +    cls.add_method('GetMulticast', 
   21.55 +                   'ns3::Address', 
   21.56 +                   [param('ns3::Ipv6Address', 'addr')], 
   21.57 +                   is_const=True, is_virtual=True)
   21.58      ## wifi-net-device.h: bool ns3::WifiNetDevice::SendFrom(ns3::Ptr<ns3::Packet> packet, ns3::Address const & source, ns3::Address const & dest, uint16_t protocolNumber) [member function]
   21.59      cls.add_method('SendFrom', 
   21.60                     'bool', 
   21.61 @@ -2542,29 +2547,29 @@
   21.62  
   21.63  def register_functions(root_module):
   21.64      module = root_module
   21.65 +    ## ssid.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeSsidChecker() [free function]
   21.66 +    module.add_function('MakeSsidChecker', 
   21.67 +                        'ns3::Ptr< ns3::AttributeChecker const >', 
   21.68 +                        [])
   21.69      ## wifi-mode.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeWifiModeChecker() [free function]
   21.70      module.add_function('MakeWifiModeChecker', 
   21.71                          'ns3::Ptr< ns3::AttributeChecker const >', 
   21.72                          [])
   21.73 -    ## ssid.h: extern ns3::Ptr<ns3::AttributeChecker const> ns3::MakeSsidChecker() [free function]
   21.74 -    module.add_function('MakeSsidChecker', 
   21.75 -                        'ns3::Ptr< ns3::AttributeChecker const >', 
   21.76 -                        [])
   21.77 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   21.78 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   21.79      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   21.80 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   21.81 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   21.82      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   21.83      return
   21.84  
   21.85 +def register_functions_ns3_Config(module, root_module):
   21.86 +    return
   21.87 +
   21.88 +def register_functions_ns3_TimeStepPrecision(module, root_module):
   21.89 +    return
   21.90 +
   21.91  def register_functions_ns3_internal(module, root_module):
   21.92      return
   21.93  
   21.94 -def register_functions_ns3_TimeStepPrecision(module, root_module):
   21.95 -    return
   21.96 -
   21.97 -def register_functions_ns3_Config(module, root_module):
   21.98 -    return
   21.99 -
  21.100  def register_functions_ns3_olsr(module, root_module):
  21.101      return
  21.102  
    22.1 --- a/bindings/python/ns3modulegen_generated.py	Fri Nov 07 19:51:00 2008 +0000
    22.2 +++ b/bindings/python/ns3modulegen_generated.py	Sat Nov 08 15:00:28 2008 +0000
    22.3 @@ -263,10 +263,10 @@
    22.4      module.add_container('std::vector< unsigned int >', 'unsigned int', container_type='vector')
    22.5      module.add_container('std::list< unsigned int >', 'unsigned int', container_type='list')
    22.6      
    22.7 -    ## Register a nested module for the namespace internal
    22.8 +    ## Register a nested module for the namespace Config
    22.9      
   22.10 -    nested_module = module.add_cpp_namespace('internal')
   22.11 -    register_types_ns3_internal(nested_module)
   22.12 +    nested_module = module.add_cpp_namespace('Config')
   22.13 +    register_types_ns3_Config(nested_module)
   22.14      
   22.15      
   22.16      ## Register a nested module for the namespace TimeStepPrecision
   22.17 @@ -275,10 +275,10 @@
   22.18      register_types_ns3_TimeStepPrecision(nested_module)
   22.19      
   22.20      
   22.21 -    ## Register a nested module for the namespace Config
   22.22 +    ## Register a nested module for the namespace internal
   22.23      
   22.24 -    nested_module = module.add_cpp_namespace('Config')
   22.25 -    register_types_ns3_Config(nested_module)
   22.26 +    nested_module = module.add_cpp_namespace('internal')
   22.27 +    register_types_ns3_internal(nested_module)
   22.28      
   22.29      
   22.30      ## Register a nested module for the namespace olsr
   22.31 @@ -287,18 +287,18 @@
   22.32      register_types_ns3_olsr(nested_module)
   22.33      
   22.34  
   22.35 -def register_types_ns3_internal(module):
   22.36 +def register_types_ns3_Config(module):
   22.37      root_module = module.get_root()
   22.38      
   22.39 +    module.add_container('std::vector< std::string >', 'std::string', container_type='vector')
   22.40  
   22.41  def register_types_ns3_TimeStepPrecision(module):
   22.42      root_module = module.get_root()
   22.43      
   22.44  
   22.45 -def register_types_ns3_Config(module):
   22.46 +def register_types_ns3_internal(module):
   22.47      root_module = module.get_root()
   22.48      
   22.49 -    module.add_container('std::vector< std::string >', 'std::string', container_type='vector')
   22.50  
   22.51  def register_types_ns3_olsr(module):
   22.52      root_module = module.get_root()
   22.53 @@ -749,19 +749,19 @@
   22.54          ns3_module_helper__local.register_functions(root_module)
   22.55      
   22.56      root_module.end_section('ns3_module_helper')
   22.57 +    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   22.58 +    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   22.59      register_functions_ns3_internal(module.get_submodule('internal'), root_module)
   22.60 -    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
   22.61 -    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
   22.62      register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
   22.63      return
   22.64  
   22.65 -def register_functions_ns3_internal(module, root_module):
   22.66 +def register_functions_ns3_Config(module, root_module):
   22.67      return
   22.68  
   22.69  def register_functions_ns3_TimeStepPrecision(module, root_module):
   22.70      return
   22.71  
   22.72 -def register_functions_ns3_Config(module, root_module):
   22.73 +def register_functions_ns3_internal(module, root_module):
   22.74      return
   22.75  
   22.76  def register_functions_ns3_olsr(module, root_module):
    23.1 --- a/bindings/python/wscript	Fri Nov 07 19:51:00 2008 +0000
    23.2 +++ b/bindings/python/wscript	Sat Nov 08 15:00:28 2008 +0000
    23.3 @@ -22,7 +22,7 @@
    23.4      os.environ['PYTHONPATH'] = LOCAL_PYBINDGEN_PATH
    23.5  
    23.6  ## https://launchpad.net/pybindgen/
    23.7 -REQUIRED_PYBINDGEN_VERSION = (0, 9, 0, 600)
    23.8 +REQUIRED_PYBINDGEN_VERSION = (0, 9, 0, 603)
    23.9  REQUIRED_PYGCCXML_VERSION = (0, 9, 5)
   23.10  
   23.11