Require new PyBindGen (now ignores the badly scanned anonymous containers that cause problems on cygwin) and rescan API.
authorGustavo J. A. M. Carneiro <gjc@inescporto.pt>
Fri, 29 Aug 2008 14:56:24 +0100
changeset 3567728eb3f583b3
parent 3566 b96af8dc8abf
child 3569 ff3a7dc79a7e
child 3570 44b0bc6817c6
child 3577 4631eaaf84c4
Require new PyBindGen (now ignores the badly scanned anonymous containers that cause problems on cygwin) and rescan API.
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_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_udp_echo.py
bindings/python/ns3_module_wifi.py
bindings/python/ns3modulegen_generated.py
bindings/python/wscript
     1.1 --- a/bindings/python/callbacks_list.py	Fri Aug 29 14:53:38 2008 +0100
     1.2 +++ b/bindings/python/callbacks_list.py	Fri Aug 29 14:56:24 2008 +0100
     1.3 @@ -5,9 +5,9 @@
     1.4      ['void', 'ns3::Ptr<ns3::Socket>', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.5      ['bool', 'ns3::Ptr<ns3::Socket>', 'ns3::Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.6      ['void', 'ns3::Ptr<ns3::Packet>', 'ns3::Mac48Address const&', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
     1.7 -    ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
     1.8 -    ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty'],
     1.9 -    ['void', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
    1.10 +    ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
    1.11 +    ['bool', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::empty', 'ns3::empty'],
    1.12 +    ['void', 'ns3::Ptr<ns3::NetDevice>', 'ns3::Ptr<ns3::Packet const>', 'unsigned short', 'ns3::Address const&', 'ns3::Address const&', 'ns3::NetDevice::PacketType'],
    1.13      ['void', 'ns3::Ptr<ns3::Packet>', 'double', 'ns3::empty', 'ns3::empty', 'ns3::empty', 'ns3::empty'],
    1.14      ['void', 'ns3::Ptr<ns3::Packet>', 'double', 'ns3::WifiMode', 'ns3::WifiPreamble', 'ns3::empty', 'ns3::empty'],
    1.15  ]
     2.1 --- a/bindings/python/ns3_module_bridge.py	Fri Aug 29 14:53:38 2008 +0100
     2.2 +++ b/bindings/python/ns3_module_bridge.py	Fri Aug 29 14:56:24 2008 +0100
     2.3 @@ -54,6 +54,8 @@
     2.4      return
     2.5  
     2.6  def register_Ns3BridgeNetDevice_methods(root_module, cls):
     2.7 +    ## bridge-net-device.h: ns3::BridgeNetDevice::BridgeNetDevice(ns3::BridgeNetDevice const & arg0) [copy constructor]
     2.8 +    cls.add_constructor([param('ns3::BridgeNetDevice&', 'arg0', is_const=True)])
     2.9      ## bridge-net-device.h: static ns3::TypeId ns3::BridgeNetDevice::GetTypeId() [member function]
    2.10      cls.add_method('GetTypeId', 
    2.11                     'ns3::TypeId', 
    2.12 @@ -170,15 +172,15 @@
    2.13                     'bool', 
    2.14                     [], 
    2.15                     is_const=True, is_virtual=True)
    2.16 -    ## bridge-net-device.h: void ns3::BridgeNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
    2.17 +    ## bridge-net-device.h: void ns3::BridgeNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
    2.18      cls.add_method('SetReceiveCallback', 
    2.19                     'void', 
    2.20 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
    2.21 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
    2.22                     is_virtual=True)
    2.23 -    ## bridge-net-device.h: void ns3::BridgeNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
    2.24 +    ## bridge-net-device.h: void ns3::BridgeNetDevice::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]
    2.25      cls.add_method('SetPromiscReceiveCallback', 
    2.26                     'void', 
    2.27 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
    2.28 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
    2.29                     is_virtual=True)
    2.30      ## bridge-net-device.h: bool ns3::BridgeNetDevice::SupportsPromiscuous() const [member function]
    2.31      cls.add_method('SupportsPromiscuous', 
    2.32 @@ -190,20 +192,20 @@
    2.33                     'void', 
    2.34                     [], 
    2.35                     visibility='protected', is_virtual=True)
    2.36 -    ## bridge-net-device.h: void ns3::BridgeNetDevice::ReceiveFromDevice(ns3::Ptr<ns3::NetDevice> device, ns3::Ptr<ns3::Packet> packet, uint16_t protocol, ns3::Address const & source, ns3::Address const & destination, ns3::NetDevice::PacketType packetType) [member function]
    2.37 +    ## bridge-net-device.h: void ns3::BridgeNetDevice::ReceiveFromDevice(ns3::Ptr<ns3::NetDevice> device, ns3::Ptr<const ns3::Packet> packet, uint16_t protocol, ns3::Address const & source, ns3::Address const & destination, ns3::NetDevice::PacketType packetType) [member function]
    2.38      cls.add_method('ReceiveFromDevice', 
    2.39                     'void', 
    2.40 -                   [param('ns3::Ptr< ns3::NetDevice >', 'device'), param('ns3::Ptr< ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Address&', 'source', is_const=True), param('ns3::Address&', 'destination', is_const=True), param('ns3::NetDevice::PacketType', 'packetType')], 
    2.41 +                   [param('ns3::Ptr< ns3::NetDevice >', 'device'), param('ns3::Ptr< const ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Address&', 'source', is_const=True), param('ns3::Address&', 'destination', is_const=True), param('ns3::NetDevice::PacketType', 'packetType')], 
    2.42                     visibility='protected')
    2.43 -    ## bridge-net-device.h: void ns3::BridgeNetDevice::ForwardUnicast(ns3::Ptr<ns3::NetDevice> incomingPort, ns3::Ptr<ns3::Packet> packet, uint16_t protocol, ns3::Mac48Address src, ns3::Mac48Address dst) [member function]
    2.44 +    ## bridge-net-device.h: void ns3::BridgeNetDevice::ForwardUnicast(ns3::Ptr<ns3::NetDevice> incomingPort, ns3::Ptr<const ns3::Packet> packet, uint16_t protocol, ns3::Mac48Address src, ns3::Mac48Address dst) [member function]
    2.45      cls.add_method('ForwardUnicast', 
    2.46                     'void', 
    2.47 -                   [param('ns3::Ptr< ns3::NetDevice >', 'incomingPort'), param('ns3::Ptr< ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Mac48Address', 'src'), param('ns3::Mac48Address', 'dst')], 
    2.48 +                   [param('ns3::Ptr< ns3::NetDevice >', 'incomingPort'), param('ns3::Ptr< const ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Mac48Address', 'src'), param('ns3::Mac48Address', 'dst')], 
    2.49                     visibility='protected')
    2.50 -    ## bridge-net-device.h: void ns3::BridgeNetDevice::ForwardBroadcast(ns3::Ptr<ns3::NetDevice> incomingPort, ns3::Ptr<ns3::Packet> packet, uint16_t protocol, ns3::Mac48Address src, ns3::Mac48Address dst) [member function]
    2.51 +    ## bridge-net-device.h: void ns3::BridgeNetDevice::ForwardBroadcast(ns3::Ptr<ns3::NetDevice> incomingPort, ns3::Ptr<const ns3::Packet> packet, uint16_t protocol, ns3::Mac48Address src, ns3::Mac48Address dst) [member function]
    2.52      cls.add_method('ForwardBroadcast', 
    2.53                     'void', 
    2.54 -                   [param('ns3::Ptr< ns3::NetDevice >', 'incomingPort'), param('ns3::Ptr< ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Mac48Address', 'src'), param('ns3::Mac48Address', 'dst')], 
    2.55 +                   [param('ns3::Ptr< ns3::NetDevice >', 'incomingPort'), param('ns3::Ptr< const ns3::Packet >', 'packet'), param('uint16_t', 'protocol'), param('ns3::Mac48Address', 'src'), param('ns3::Mac48Address', 'dst')], 
    2.56                     visibility='protected')
    2.57      ## bridge-net-device.h: void ns3::BridgeNetDevice::Learn(ns3::Mac48Address source, ns3::Ptr<ns3::NetDevice> port) [member function]
    2.58      cls.add_method('Learn', 
    2.59 @@ -215,10 +217,11 @@
    2.60                     'ns3::Ptr< ns3::NetDevice >', 
    2.61                     [param('ns3::Mac48Address', 'source')], 
    2.62                     visibility='protected')
    2.63 -    cls.add_copy_constructor()
    2.64      return
    2.65  
    2.66  def register_Ns3BridgeChannel_methods(root_module, cls):
    2.67 +    ## bridge-channel.h: ns3::BridgeChannel::BridgeChannel(ns3::BridgeChannel const & arg0) [copy constructor]
    2.68 +    cls.add_constructor([param('ns3::BridgeChannel&', 'arg0', is_const=True)])
    2.69      ## bridge-channel.h: static ns3::TypeId ns3::BridgeChannel::GetTypeId() [member function]
    2.70      cls.add_method('GetTypeId', 
    2.71                     'ns3::TypeId', 
    2.72 @@ -240,7 +243,6 @@
    2.73                     'ns3::Ptr< ns3::NetDevice >', 
    2.74                     [param('uint32_t', 'i')], 
    2.75                     is_const=True, is_virtual=True)
    2.76 -    cls.add_copy_constructor()
    2.77      return
    2.78  
    2.79  def register_functions(root_module):
     3.1 --- a/bindings/python/ns3_module_common.py	Fri Aug 29 14:53:38 2008 +0100
     3.2 +++ b/bindings/python/ns3_module_common.py	Fri Aug 29 14:56:24 2008 +0100
     3.3 @@ -158,10 +158,20 @@
     3.4      cls.add_method('Deserialize', 
     3.5                     'void', 
     3.6                     [param('ns3::Buffer', 'buffer')])
     3.7 +    ## packet.h: static void ns3::Packet::EnableChecking() [member function]
     3.8 +    cls.add_method('EnableChecking', 
     3.9 +                   'void', 
    3.10 +                   [], 
    3.11 +                   is_static=True)
    3.12      ## packet.h: static void ns3::Packet::EnableMetadata() [member function]
    3.13      cls.add_method('EnableMetadata', 
    3.14                     'void', 
    3.15                     [], 
    3.16 +                   is_static=True, deprecated=True)
    3.17 +    ## packet.h: static void ns3::Packet::EnablePrinting() [member function]
    3.18 +    cls.add_method('EnablePrinting', 
    3.19 +                   'void', 
    3.20 +                   [], 
    3.21                     is_static=True)
    3.22      ## packet.h: bool ns3::Packet::FindFirstMatchingTag(ns3::Tag & tag) const [member function]
    3.23      cls.add_method('FindFirstMatchingTag', 
    3.24 @@ -235,6 +245,8 @@
    3.25      return
    3.26  
    3.27  def register_Ns3TagIterator_methods(root_module, cls):
    3.28 +    ## packet.h: ns3::TagIterator::TagIterator(ns3::TagIterator const & arg0) [copy constructor]
    3.29 +    cls.add_constructor([param('ns3::TagIterator&', 'arg0', is_const=True)])
    3.30      ## packet.h: bool ns3::TagIterator::HasNext() const [member function]
    3.31      cls.add_method('HasNext', 
    3.32                     'bool', 
    3.33 @@ -247,6 +259,8 @@
    3.34      return
    3.35  
    3.36  def register_Ns3TagIteratorItem_methods(root_module, cls):
    3.37 +    ## packet.h: ns3::TagIterator::Item::Item(ns3::TagIterator::Item const & arg0) [copy constructor]
    3.38 +    cls.add_constructor([param('ns3::TagIterator::Item&', 'arg0', is_const=True)])
    3.39      ## packet.h: ns3::TypeId ns3::TagIterator::Item::GetTypeId() const [member function]
    3.40      cls.add_method('GetTypeId', 
    3.41                     'ns3::TypeId', 
    3.42 @@ -267,7 +281,6 @@
    3.43                     'void', 
    3.44                     [param('ns3::Tag&', 'tag')], 
    3.45                     is_const=True)
    3.46 -    cls.add_copy_constructor()
    3.47      return
    3.48  
    3.49  def register_Ns3TagList_methods(root_module, cls):
    3.50 @@ -303,6 +316,8 @@
    3.51      return
    3.52  
    3.53  def register_Ns3TagListIterator_methods(root_module, cls):
    3.54 +    ## tag-list.h: ns3::TagList::Iterator::Iterator(ns3::TagList::Iterator const & arg0) [copy constructor]
    3.55 +    cls.add_constructor([param('ns3::TagList::Iterator&', 'arg0', is_const=True)])
    3.56      ## tag-list.h: bool ns3::TagList::Iterator::HasNext() const [member function]
    3.57      cls.add_method('HasNext', 
    3.58                     'bool', 
    3.59 @@ -317,7 +332,6 @@
    3.60                     'uint32_t', 
    3.61                     [], 
    3.62                     is_const=True)
    3.63 -    cls.add_copy_constructor()
    3.64      return
    3.65  
    3.66  def register_Ns3TagListIteratorItem_methods(root_module, cls):
    3.67 @@ -331,12 +345,15 @@
    3.68      cls.add_instance_attribute('end', 'int32_t', is_const=False)
    3.69      ## tag-list.h: ns3::TagList::Iterator::Item::buf [variable]
    3.70      cls.add_instance_attribute('buf', 'ns3::TagBuffer', is_const=False)
    3.71 +    ## tag-list.h: ns3::TagList::Iterator::Item::Item(ns3::TagList::Iterator::Item const & arg0) [copy constructor]
    3.72 +    cls.add_constructor([param('ns3::TagList::Iterator::Item&', 'arg0', is_const=True)])
    3.73      ## tag-list.h: ns3::TagList::Iterator::Item::Item(ns3::TagBuffer buf) [constructor]
    3.74      cls.add_constructor([param('ns3::TagBuffer', 'buf')])
    3.75 -    cls.add_copy_constructor()
    3.76      return
    3.77  
    3.78  def register_Ns3TagBuffer_methods(root_module, cls):
    3.79 +    ## tag-buffer.h: ns3::TagBuffer::TagBuffer(ns3::TagBuffer const & arg0) [copy constructor]
    3.80 +    cls.add_constructor([param('ns3::TagBuffer&', 'arg0', is_const=True)])
    3.81      ## tag-buffer.h: ns3::TagBuffer::TagBuffer(uint8_t * start, uint8_t * end) [constructor]
    3.82      cls.add_constructor([param('uint8_t *', 'start'), param('uint8_t *', 'end')])
    3.83      ## tag-buffer.h: void ns3::TagBuffer::TrimAtEnd(uint32_t trim) [member function]
    3.84 @@ -395,7 +412,6 @@
    3.85      cls.add_method('Read', 
    3.86                     'void', 
    3.87                     [param('uint8_t *', 'buffer'), param('uint32_t', 'size')])
    3.88 -    cls.add_copy_constructor()
    3.89      return
    3.90  
    3.91  def register_Ns3Buffer_methods(root_module, cls):
    3.92 @@ -468,6 +484,8 @@
    3.93      return
    3.94  
    3.95  def register_Ns3BufferIterator_methods(root_module, cls):
    3.96 +    ## buffer.h: ns3::Buffer::Iterator::Iterator(ns3::Buffer::Iterator const & arg0) [copy constructor]
    3.97 +    cls.add_constructor([param('ns3::Buffer::Iterator&', 'arg0', is_const=True)])
    3.98      ## buffer.h: ns3::Buffer::Iterator::Iterator() [constructor]
    3.99      cls.add_constructor([])
   3.100      ## buffer.h: void ns3::Buffer::Iterator::Next() [member function]
   3.101 @@ -610,14 +628,13 @@
   3.102                     'uint32_t', 
   3.103                     [], 
   3.104                     is_const=True)
   3.105 -    cls.add_copy_constructor()
   3.106      return
   3.107  
   3.108  def register_Ns3Chunk_methods(root_module, cls):
   3.109 +    ## chunk.h: ns3::Chunk::Chunk(ns3::Chunk const & arg0) [copy constructor]
   3.110 +    cls.add_constructor([param('ns3::Chunk&', 'arg0', is_const=True)])
   3.111      ## chunk.h: ns3::Chunk::Chunk() [constructor]
   3.112      cls.add_constructor([])
   3.113 -    ## chunk.h: ns3::Chunk::Chunk(ns3::Chunk const & arg0) [copy constructor]
   3.114 -    cls.add_constructor([param('ns3::Chunk&', 'arg0', is_const=True)])
   3.115      ## chunk.h: static ns3::TypeId ns3::Chunk::GetTypeId() [member function]
   3.116      cls.add_method('GetTypeId', 
   3.117                     'ns3::TypeId', 
   3.118 @@ -658,6 +675,10 @@
   3.119      return
   3.120  
   3.121  def register_Ns3Tag_methods(root_module, cls):
   3.122 +    ## tag.h: ns3::Tag::Tag(ns3::Tag const & arg0) [copy constructor]
   3.123 +    cls.add_constructor([param('ns3::Tag&', 'arg0', is_const=True)])
   3.124 +    ## tag.h: ns3::Tag::Tag() [constructor]
   3.125 +    cls.add_constructor([])
   3.126      ## tag.h: static ns3::TypeId ns3::Tag::GetTypeId() [member function]
   3.127      cls.add_method('GetTypeId', 
   3.128                     'ns3::TypeId', 
   3.129 @@ -683,11 +704,11 @@
   3.130                     'void', 
   3.131                     [param('std::ostream&', 'os')], 
   3.132                     is_pure_virtual=True, is_const=True, is_virtual=True)
   3.133 -    cls.add_constructor([])
   3.134 -    cls.add_copy_constructor()
   3.135      return
   3.136  
   3.137  def register_Ns3PcapWriter_methods(root_module, cls):
   3.138 +    ## pcap-writer.h: ns3::PcapWriter::PcapWriter(ns3::PcapWriter const & arg0) [copy constructor]
   3.139 +    cls.add_constructor([param('ns3::PcapWriter&', 'arg0', is_const=True)])
   3.140      ## pcap-writer.h: ns3::PcapWriter::PcapWriter() [constructor]
   3.141      cls.add_constructor([])
   3.142      ## pcap-writer.h: void ns3::PcapWriter::Open(std::string const & name) [member function]
   3.143 @@ -714,15 +735,18 @@
   3.144      cls.add_method('WritePacket', 
   3.145                     'void', 
   3.146                     [param('ns3::Ptr< const ns3::Packet >', 'packet')])
   3.147 -    cls.add_copy_constructor()
   3.148      return
   3.149  
   3.150  def register_Ns3DataRateChecker_methods(root_module, cls):
   3.151 +    ## data-rate.h: ns3::DataRateChecker::DataRateChecker(ns3::DataRateChecker const & arg0) [copy constructor]
   3.152 +    cls.add_constructor([param('ns3::DataRateChecker&', 'arg0', is_const=True)])
   3.153 +    ## data-rate.h: ns3::DataRateChecker::DataRateChecker() [constructor]
   3.154      cls.add_constructor([])
   3.155 -    cls.add_copy_constructor()
   3.156      return
   3.157  
   3.158  def register_Ns3ErrorModel_methods(root_module, cls):
   3.159 +    ## error-model.h: ns3::ErrorModel::ErrorModel(ns3::ErrorModel const & arg0) [copy constructor]
   3.160 +    cls.add_constructor([param('ns3::ErrorModel&', 'arg0', is_const=True)])
   3.161      ## error-model.h: static ns3::TypeId ns3::ErrorModel::GetTypeId() [member function]
   3.162      cls.add_method('GetTypeId', 
   3.163                     'ns3::TypeId', 
   3.164 @@ -761,7 +785,6 @@
   3.165                     'void', 
   3.166                     [], 
   3.167                     is_pure_virtual=True, visibility='private', is_virtual=True)
   3.168 -    cls.add_copy_constructor()
   3.169      return
   3.170  
   3.171  def register_Ns3Header_methods(root_module, cls):
   3.172 @@ -831,6 +854,8 @@
   3.173      return
   3.174  
   3.175  def register_Ns3ListErrorModel_methods(root_module, cls):
   3.176 +    ## error-model.h: ns3::ListErrorModel::ListErrorModel(ns3::ListErrorModel const & arg0) [copy constructor]
   3.177 +    cls.add_constructor([param('ns3::ListErrorModel&', 'arg0', is_const=True)])
   3.178      ## error-model.h: static ns3::TypeId ns3::ListErrorModel::GetTypeId() [member function]
   3.179      cls.add_method('GetTypeId', 
   3.180                     'ns3::TypeId', 
   3.181 @@ -840,13 +865,13 @@
   3.182      cls.add_constructor([])
   3.183      ## error-model.h: std::list<unsigned int, std::allocator<unsigned int> > ns3::ListErrorModel::GetList() const [member function]
   3.184      cls.add_method('GetList', 
   3.185 -                   'std::list< unsigned int, std::allocator< unsigned int > >', 
   3.186 +                   'std::list< unsigned int >', 
   3.187                     [], 
   3.188                     is_const=True)
   3.189      ## error-model.h: void ns3::ListErrorModel::SetList(std::list<unsigned int, std::allocator<unsigned int> > const & packetlist) [member function]
   3.190      cls.add_method('SetList', 
   3.191                     'void', 
   3.192 -                   [param('std::list< unsigned int, std::allocator< unsigned int > >&', 'packetlist', is_const=True)])
   3.193 +                   [param('std::list< unsigned int >&', 'packetlist', is_const=True)])
   3.194      ## error-model.h: bool ns3::ListErrorModel::DoCorrupt(ns3::Ptr<ns3::Packet> p) [member function]
   3.195      cls.add_method('DoCorrupt', 
   3.196                     'bool', 
   3.197 @@ -857,10 +882,11 @@
   3.198                     'void', 
   3.199                     [], 
   3.200                     visibility='private', is_virtual=True)
   3.201 -    cls.add_copy_constructor()
   3.202      return
   3.203  
   3.204  def register_Ns3DataRateValue_methods(root_module, cls):
   3.205 +    ## data-rate.h: ns3::DataRateValue::DataRateValue(ns3::DataRateValue const & arg0) [copy constructor]
   3.206 +    cls.add_constructor([param('ns3::DataRateValue&', 'arg0', is_const=True)])
   3.207      ## data-rate.h: ns3::DataRateValue::DataRateValue() [constructor]
   3.208      cls.add_constructor([])
   3.209      ## data-rate.h: ns3::DataRateValue::DataRateValue(ns3::DataRate const & value) [constructor]
   3.210 @@ -889,10 +915,11 @@
   3.211                     'bool', 
   3.212                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   3.213                     is_virtual=True)
   3.214 -    cls.add_copy_constructor()
   3.215      return
   3.216  
   3.217  def register_Ns3RateErrorModel_methods(root_module, cls):
   3.218 +    ## error-model.h: ns3::RateErrorModel::RateErrorModel(ns3::RateErrorModel const & arg0) [copy constructor]
   3.219 +    cls.add_constructor([param('ns3::RateErrorModel&', 'arg0', is_const=True)])
   3.220      ## error-model.h: static ns3::TypeId ns3::RateErrorModel::GetTypeId() [member function]
   3.221      cls.add_method('GetTypeId', 
   3.222                     'ns3::TypeId', 
   3.223 @@ -947,7 +974,6 @@
   3.224                     'void', 
   3.225                     [], 
   3.226                     visibility='private', is_virtual=True)
   3.227 -    cls.add_copy_constructor()
   3.228      return
   3.229  
   3.230  def register_functions(root_module):
     4.1 --- a/bindings/python/ns3_module_contrib.py	Fri Aug 29 14:53:38 2008 +0100
     4.2 +++ b/bindings/python/ns3_module_contrib.py	Fri Aug 29 14:56:24 2008 +0100
     4.3 @@ -70,6 +70,8 @@
     4.4      return
     4.5  
     4.6  def register_Ns3Gnuplot_methods(root_module, cls):
     4.7 +    ## gnuplot.h: ns3::Gnuplot::Gnuplot(ns3::Gnuplot const & arg0) [copy constructor]
     4.8 +    cls.add_constructor([param('ns3::Gnuplot&', 'arg0', is_const=True)])
     4.9      ## gnuplot.h: ns3::Gnuplot::Gnuplot(std::string pngFilename) [constructor]
    4.10      cls.add_constructor([param('std::string', 'pngFilename')])
    4.11      ## gnuplot.h: void ns3::Gnuplot::SetLegend(std::string xLegend, std::string yLegend) [member function]
    4.12 @@ -84,20 +86,22 @@
    4.13      cls.add_method('GenerateOutput', 
    4.14                     'void', 
    4.15                     [param('std::ostream&', 'os')])
    4.16 -    cls.add_copy_constructor()
    4.17      return
    4.18  
    4.19  def register_Ns3EventGarbageCollector_methods(root_module, cls):
    4.20 +    ## event-garbage-collector.h: ns3::EventGarbageCollector::EventGarbageCollector(ns3::EventGarbageCollector const & arg0) [copy constructor]
    4.21 +    cls.add_constructor([param('ns3::EventGarbageCollector&', 'arg0', is_const=True)])
    4.22      ## event-garbage-collector.h: ns3::EventGarbageCollector::EventGarbageCollector() [constructor]
    4.23      cls.add_constructor([])
    4.24      ## event-garbage-collector.h: void ns3::EventGarbageCollector::Track(ns3::EventId event) [member function]
    4.25      cls.add_method('Track', 
    4.26                     'void', 
    4.27                     [param('ns3::EventId', 'event')])
    4.28 -    cls.add_copy_constructor()
    4.29      return
    4.30  
    4.31  def register_Ns3GnuplotDataset_methods(root_module, cls):
    4.32 +    ## gnuplot.h: ns3::GnuplotDataset::GnuplotDataset(ns3::GnuplotDataset const & arg0) [copy constructor]
    4.33 +    cls.add_constructor([param('ns3::GnuplotDataset&', 'arg0', is_const=True)])
    4.34      ## gnuplot.h: ns3::GnuplotDataset::GnuplotDataset() [constructor]
    4.35      cls.add_constructor([])
    4.36      ## gnuplot.h: ns3::GnuplotDataset::GnuplotDataset(std::string title) [constructor]
    4.37 @@ -118,20 +122,22 @@
    4.38      cls.add_method('Add', 
    4.39                     'void', 
    4.40                     [param('double', 'x'), param('double', 'y'), param('double', 'errorDelta')])
    4.41 -    cls.add_copy_constructor()
    4.42      return
    4.43  
    4.44  def register_Ns3GtkConfigStore_methods(root_module, cls):
    4.45 +    ## gtk-config-store.h: ns3::GtkConfigStore::GtkConfigStore(ns3::GtkConfigStore const & arg0) [copy constructor]
    4.46 +    cls.add_constructor([param('ns3::GtkConfigStore&', 'arg0', is_const=True)])
    4.47      ## gtk-config-store.h: ns3::GtkConfigStore::GtkConfigStore() [constructor]
    4.48      cls.add_constructor([])
    4.49      ## gtk-config-store.h: void ns3::GtkConfigStore::Configure() [member function]
    4.50      cls.add_method('Configure', 
    4.51                     'void', 
    4.52                     [])
    4.53 -    cls.add_copy_constructor()
    4.54      return
    4.55  
    4.56  def register_Ns3ConfigStore_methods(root_module, cls):
    4.57 +    ## config-store.h: ns3::ConfigStore::ConfigStore(ns3::ConfigStore const & arg0) [copy constructor]
    4.58 +    cls.add_constructor([param('ns3::ConfigStore&', 'arg0', is_const=True)])
    4.59      ## config-store.h: static ns3::TypeId ns3::ConfigStore::GetTypeId() [member function]
    4.60      cls.add_method('GetTypeId', 
    4.61                     'ns3::TypeId', 
    4.62 @@ -148,10 +154,11 @@
    4.63      cls.add_method('Configure', 
    4.64                     'void', 
    4.65                     [])
    4.66 -    cls.add_copy_constructor()
    4.67      return
    4.68  
    4.69  def register_Ns3DelayJitterEstimation_methods(root_module, cls):
    4.70 +    ## delay-jitter-estimation.h: ns3::DelayJitterEstimation::DelayJitterEstimation(ns3::DelayJitterEstimation const & arg0) [copy constructor]
    4.71 +    cls.add_constructor([param('ns3::DelayJitterEstimation&', 'arg0', is_const=True)])
    4.72      ## delay-jitter-estimation.h: ns3::DelayJitterEstimation::DelayJitterEstimation() [constructor]
    4.73      cls.add_constructor([])
    4.74      ## delay-jitter-estimation.h: static void ns3::DelayJitterEstimation::PrepareTx(ns3::Ptr<const ns3::Packet> packet) [member function]
    4.75 @@ -173,7 +180,6 @@
    4.76                     'ns3::Time', 
    4.77                     [], 
    4.78                     is_const=True)
    4.79 -    cls.add_copy_constructor()
    4.80      return
    4.81  
    4.82  def register_functions(root_module):
     5.1 --- a/bindings/python/ns3_module_core.py	Fri Aug 29 14:53:38 2008 +0100
     5.2 +++ b/bindings/python/ns3_module_core.py	Fri Aug 29 14:56:24 2008 +0100
     5.3 @@ -43,8 +43,6 @@
     5.4      module.add_class('ParetoVariable', parent=root_module['ns3::RandomVariable'])
     5.5      ## random-variable.h: ns3::ConstantVariable [class]
     5.6      module.add_class('ConstantVariable', parent=root_module['ns3::RandomVariable'])
     5.7 -    ## system-thread.h: ns3::SystemThread [class]
     5.8 -    module.add_class('SystemThread')
     5.9      ## random-variable.h: ns3::EmpiricalVariable [class]
    5.10      module.add_class('EmpiricalVariable', parent=root_module['ns3::RandomVariable'])
    5.11      ## enum.h: ns3::EnumChecker [class]
    5.12 @@ -99,6 +97,8 @@
    5.13      module.add_class('ExponentialVariable', parent=root_module['ns3::RandomVariable'])
    5.14      ## random-variable.h: ns3::DeterministicVariable [class]
    5.15      module.add_class('DeterministicVariable', parent=root_module['ns3::RandomVariable'])
    5.16 +    ## system-thread.h: ns3::SystemThread [class]
    5.17 +    module.add_class('SystemThread')
    5.18      ## attribute-list.h: ns3::AttributeList [class]
    5.19      module.add_class('AttributeList')
    5.20      ## attribute.h: ns3::AttributeValue [class]
    5.21 @@ -219,7 +219,6 @@
    5.22      register_Ns3AttributeAccessor_methods(root_module, root_module['ns3::AttributeAccessor'])
    5.23      register_Ns3ParetoVariable_methods(root_module, root_module['ns3::ParetoVariable'])
    5.24      register_Ns3ConstantVariable_methods(root_module, root_module['ns3::ConstantVariable'])
    5.25 -    register_Ns3SystemThread_methods(root_module, root_module['ns3::SystemThread'])
    5.26      register_Ns3EmpiricalVariable_methods(root_module, root_module['ns3::EmpiricalVariable'])
    5.27      register_Ns3EnumChecker_methods(root_module, root_module['ns3::EnumChecker'])
    5.28      register_Ns3Empty_methods(root_module, root_module['ns3::empty'])
    5.29 @@ -240,6 +239,7 @@
    5.30      register_Ns3CallbackBase_methods(root_module, root_module['ns3::CallbackBase'])
    5.31      register_Ns3ExponentialVariable_methods(root_module, root_module['ns3::ExponentialVariable'])
    5.32      register_Ns3DeterministicVariable_methods(root_module, root_module['ns3::DeterministicVariable'])
    5.33 +    register_Ns3SystemThread_methods(root_module, root_module['ns3::SystemThread'])
    5.34      register_Ns3AttributeList_methods(root_module, root_module['ns3::AttributeList'])
    5.35      register_Ns3AttributeValue_methods(root_module, root_module['ns3::AttributeValue'])
    5.36      register_Ns3UniformVariable_methods(root_module, root_module['ns3::UniformVariable'])
    5.37 @@ -307,6 +307,8 @@
    5.38      return
    5.39  
    5.40  def register_Ns3TriangularVariable_methods(root_module, cls):
    5.41 +    ## random-variable.h: ns3::TriangularVariable::TriangularVariable(ns3::TriangularVariable const & arg0) [copy constructor]
    5.42 +    cls.add_constructor([param('ns3::TriangularVariable&', 'arg0', is_const=True)])
    5.43      ## random-variable.h: ns3::TriangularVariable::TriangularVariable() [constructor]
    5.44      cls.add_constructor([])
    5.45      ## random-variable.h: ns3::TriangularVariable::TriangularVariable(double s, double l, double mean) [constructor]
    5.46 @@ -316,10 +318,11 @@
    5.47                     'double', 
    5.48                     [param('double', 's'), param('double', 'l'), param('double', 'mean')], 
    5.49                     is_static=True)
    5.50 -    cls.add_copy_constructor()
    5.51      return
    5.52  
    5.53  def register_Ns3GlobalValue_methods(root_module, cls):
    5.54 +    ## global-value.h: ns3::GlobalValue::GlobalValue(ns3::GlobalValue const & arg0) [copy constructor]
    5.55 +    cls.add_constructor([param('ns3::GlobalValue&', 'arg0', is_const=True)])
    5.56      ## global-value.h: ns3::GlobalValue::GlobalValue(std::string name, std::string help, ns3::AttributeValue const & initialValue, ns3::Ptr<ns3::AttributeChecker const> checker) [constructor]
    5.57      cls.add_constructor([param('std::string', 'name'), param('std::string', 'help'), param('ns3::AttributeValue&', 'initialValue', is_const=True), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')])
    5.58      ## global-value.h: std::string ns3::GlobalValue::GetName() const [member function]
    5.59 @@ -358,15 +361,14 @@
    5.60                     is_static=True)
    5.61      ## global-value.h: static __gnu_cxx::__normal_iterator<ns3::GlobalValue* const*,std::vector<ns3::GlobalValue*, std::allocator<ns3::GlobalValue*> > > ns3::GlobalValue::Begin() [member function]
    5.62      cls.add_method('Begin', 
    5.63 -                   '__gnu_cxx::__normal_iterator< ns3::GlobalValue* const*, std::vector< ns3::GlobalValue*, std::allocator< ns3::GlobalValue* > > >', 
    5.64 +                   '__gnu_cxx::__normal_iterator< ns3::GlobalValue* const*, std::vector< ns3::GlobalValue* > >', 
    5.65                     [], 
    5.66                     is_static=True)
    5.67      ## global-value.h: static __gnu_cxx::__normal_iterator<ns3::GlobalValue* const*,std::vector<ns3::GlobalValue*, std::allocator<ns3::GlobalValue*> > > ns3::GlobalValue::End() [member function]
    5.68      cls.add_method('End', 
    5.69 -                   '__gnu_cxx::__normal_iterator< ns3::GlobalValue* const*, std::vector< ns3::GlobalValue*, std::allocator< ns3::GlobalValue* > > >', 
    5.70 +                   '__gnu_cxx::__normal_iterator< ns3::GlobalValue* const*, std::vector< ns3::GlobalValue* > >', 
    5.71                     [], 
    5.72                     is_static=True)
    5.73 -    cls.add_copy_constructor()
    5.74      return
    5.75  
    5.76  def register_Ns3RefCountBase_methods(root_module, cls):
    5.77 @@ -558,11 +560,15 @@
    5.78      cls.add_instance_attribute('flags', 'uint32_t', is_const=False)
    5.79      ## type-id.h: ns3::TypeId::AttributeInfo::checker [variable]
    5.80      cls.add_instance_attribute('checker', 'ns3::Ptr< ns3::AttributeChecker const >', is_const=False)
    5.81 +    ## type-id.h: ns3::TypeId::AttributeInfo::AttributeInfo(ns3::TypeId::AttributeInfo const & arg0) [copy constructor]
    5.82 +    cls.add_constructor([param('ns3::TypeId::AttributeInfo&', 'arg0', is_const=True)])
    5.83 +    ## type-id.h: ns3::TypeId::AttributeInfo::AttributeInfo() [constructor]
    5.84      cls.add_constructor([])
    5.85 -    cls.add_copy_constructor()
    5.86      return
    5.87  
    5.88  def register_Ns3SystemWallClockMs_methods(root_module, cls):
    5.89 +    ## system-wall-clock-ms.h: ns3::SystemWallClockMs::SystemWallClockMs(ns3::SystemWallClockMs const & arg0) [copy constructor]
    5.90 +    cls.add_constructor([param('ns3::SystemWallClockMs&', 'arg0', is_const=True)])
    5.91      ## system-wall-clock-ms.h: ns3::SystemWallClockMs::SystemWallClockMs() [constructor]
    5.92      cls.add_constructor([])
    5.93      ## system-wall-clock-ms.h: void ns3::SystemWallClockMs::Start() [member function]
    5.94 @@ -573,10 +579,11 @@
    5.95      cls.add_method('End', 
    5.96                     'long long unsigned int', 
    5.97                     [])
    5.98 -    cls.add_copy_constructor()
    5.99      return
   5.100  
   5.101  def register_Ns3CallbackImplBase_methods(root_module, cls):
   5.102 +    ## callback.h: ns3::CallbackImplBase::CallbackImplBase(ns3::CallbackImplBase const & arg0) [copy constructor]
   5.103 +    cls.add_constructor([param('ns3::CallbackImplBase&', 'arg0', is_const=True)])
   5.104      ## callback.h: ns3::CallbackImplBase::CallbackImplBase() [constructor]
   5.105      cls.add_constructor([])
   5.106      ## callback.h: bool ns3::CallbackImplBase::IsEqual(ns3::Ptr<ns3::CallbackImplBase const> other) const [member function]
   5.107 @@ -584,16 +591,18 @@
   5.108                     'bool', 
   5.109                     [param('ns3::Ptr< ns3::CallbackImplBase const >', 'other')], 
   5.110                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.111 -    cls.add_copy_constructor()
   5.112      return
   5.113  
   5.114  def register_Ns3CriticalSection_methods(root_module, cls):
   5.115 +    ## system-mutex.h: ns3::CriticalSection::CriticalSection(ns3::CriticalSection const & arg0) [copy constructor]
   5.116 +    cls.add_constructor([param('ns3::CriticalSection&', 'arg0', is_const=True)])
   5.117      ## system-mutex.h: ns3::CriticalSection::CriticalSection(ns3::SystemMutex & mutex) [constructor]
   5.118      cls.add_constructor([param('ns3::SystemMutex&', 'mutex')])
   5.119 -    cls.add_copy_constructor()
   5.120      return
   5.121  
   5.122  def register_Ns3TraceSourceAccessor_methods(root_module, cls):
   5.123 +    ## trace-source-accessor.h: ns3::TraceSourceAccessor::TraceSourceAccessor(ns3::TraceSourceAccessor const & arg0) [copy constructor]
   5.124 +    cls.add_constructor([param('ns3::TraceSourceAccessor&', 'arg0', is_const=True)])
   5.125      ## trace-source-accessor.h: ns3::TraceSourceAccessor::TraceSourceAccessor() [constructor]
   5.126      cls.add_constructor([])
   5.127      ## trace-source-accessor.h: void ns3::TraceSourceAccessor::Ref() const [member function]
   5.128 @@ -626,10 +635,11 @@
   5.129                     'bool', 
   5.130                     [param('ns3::ObjectBase *', 'obj', transfer_ownership=False), param('std::string', 'context'), param('ns3::CallbackBase&', 'cb', is_const=True)], 
   5.131                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.132 -    cls.add_copy_constructor()
   5.133      return
   5.134  
   5.135  def register_Ns3AttributeChecker_methods(root_module, cls):
   5.136 +    ## attribute.h: ns3::AttributeChecker::AttributeChecker(ns3::AttributeChecker const & arg0) [copy constructor]
   5.137 +    cls.add_constructor([param('ns3::AttributeChecker&', 'arg0', is_const=True)])
   5.138      ## attribute.h: ns3::AttributeChecker::AttributeChecker() [constructor]
   5.139      cls.add_constructor([])
   5.140      ## attribute.h: bool ns3::AttributeChecker::Check(ns3::AttributeValue const & value) const [member function]
   5.141 @@ -662,15 +672,18 @@
   5.142                     'bool', 
   5.143                     [param('ns3::AttributeValue&', 'source', is_const=True), param('ns3::AttributeValue&', 'destination')], 
   5.144                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.145 -    cls.add_copy_constructor()
   5.146      return
   5.147  
   5.148  def register_Ns3RandomVariableChecker_methods(root_module, cls):
   5.149 +    ## random-variable.h: ns3::RandomVariableChecker::RandomVariableChecker(ns3::RandomVariableChecker const & arg0) [copy constructor]
   5.150 +    cls.add_constructor([param('ns3::RandomVariableChecker&', 'arg0', is_const=True)])
   5.151 +    ## random-variable.h: ns3::RandomVariableChecker::RandomVariableChecker() [constructor]
   5.152      cls.add_constructor([])
   5.153 -    cls.add_copy_constructor()
   5.154      return
   5.155  
   5.156  def register_Ns3SystemMutex_methods(root_module, cls):
   5.157 +    ## system-mutex.h: ns3::SystemMutex::SystemMutex(ns3::SystemMutex const & arg0) [copy constructor]
   5.158 +    cls.add_constructor([param('ns3::SystemMutex&', 'arg0', is_const=True)])
   5.159      ## system-mutex.h: ns3::SystemMutex::SystemMutex() [constructor]
   5.160      cls.add_constructor([])
   5.161      ## system-mutex.h: void ns3::SystemMutex::Lock() [member function]
   5.162 @@ -681,10 +694,11 @@
   5.163      cls.add_method('Unlock', 
   5.164                     'void', 
   5.165                     [])
   5.166 -    cls.add_copy_constructor()
   5.167      return
   5.168  
   5.169  def register_Ns3NormalVariable_methods(root_module, cls):
   5.170 +    ## random-variable.h: ns3::NormalVariable::NormalVariable(ns3::NormalVariable const & arg0) [copy constructor]
   5.171 +    cls.add_constructor([param('ns3::NormalVariable&', 'arg0', is_const=True)])
   5.172      ## random-variable.h: ns3::NormalVariable::NormalVariable() [constructor]
   5.173      cls.add_constructor([])
   5.174      ## random-variable.h: ns3::NormalVariable::NormalVariable(double m, double v) [constructor]
   5.175 @@ -701,7 +715,6 @@
   5.176                     'double', 
   5.177                     [param('double', 'm'), param('double', 'v'), param('double', 'b')], 
   5.178                     is_static=True)
   5.179 -    cls.add_copy_constructor()
   5.180      return
   5.181  
   5.182  def register_Ns3ObjectFactory_methods(root_module, cls):
   5.183 @@ -739,6 +752,8 @@
   5.184      return
   5.185  
   5.186  def register_Ns3AttributeAccessor_methods(root_module, cls):
   5.187 +    ## attribute.h: ns3::AttributeAccessor::AttributeAccessor(ns3::AttributeAccessor const & arg0) [copy constructor]
   5.188 +    cls.add_constructor([param('ns3::AttributeAccessor&', 'arg0', is_const=True)])
   5.189      ## attribute.h: ns3::AttributeAccessor::AttributeAccessor() [constructor]
   5.190      cls.add_constructor([])
   5.191      ## attribute.h: bool ns3::AttributeAccessor::Set(ns3::ObjectBase * object, ns3::AttributeValue const & value) const [member function]
   5.192 @@ -761,10 +776,11 @@
   5.193                     'bool', 
   5.194                     [], 
   5.195                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.196 -    cls.add_copy_constructor()
   5.197      return
   5.198  
   5.199  def register_Ns3ParetoVariable_methods(root_module, cls):
   5.200 +    ## random-variable.h: ns3::ParetoVariable::ParetoVariable(ns3::ParetoVariable const & arg0) [copy constructor]
   5.201 +    cls.add_constructor([param('ns3::ParetoVariable&', 'arg0', is_const=True)])
   5.202      ## random-variable.h: ns3::ParetoVariable::ParetoVariable() [constructor]
   5.203      cls.add_constructor([])
   5.204      ## random-variable.h: ns3::ParetoVariable::ParetoVariable(double m) [constructor]
   5.205 @@ -778,10 +794,11 @@
   5.206                     'double', 
   5.207                     [param('double', 'm'), param('double', 's'), param('double', 'b', default_value='0')], 
   5.208                     is_static=True)
   5.209 -    cls.add_copy_constructor()
   5.210      return
   5.211  
   5.212  def register_Ns3ConstantVariable_methods(root_module, cls):
   5.213 +    ## random-variable.h: ns3::ConstantVariable::ConstantVariable(ns3::ConstantVariable const & arg0) [copy constructor]
   5.214 +    cls.add_constructor([param('ns3::ConstantVariable&', 'arg0', is_const=True)])
   5.215      ## random-variable.h: ns3::ConstantVariable::ConstantVariable() [constructor]
   5.216      cls.add_constructor([])
   5.217      ## random-variable.h: ns3::ConstantVariable::ConstantVariable(double c) [constructor]
   5.218 @@ -790,44 +807,22 @@
   5.219      cls.add_method('SetConstant', 
   5.220                     'void', 
   5.221                     [param('double', 'c')])
   5.222 -    cls.add_copy_constructor()
   5.223 -    return
   5.224 -
   5.225 -def register_Ns3SystemThread_methods(root_module, cls):
   5.226 -    ## system-thread.h: ns3::SystemThread::SystemThread(ns3::Callback<void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [constructor]
   5.227 -    cls.add_constructor([param('ns3::Callback< void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
   5.228 -    ## system-thread.h: void ns3::SystemThread::Ref() const [member function]
   5.229 -    cls.add_method('Ref', 
   5.230 -                   'void', 
   5.231 -                   [], 
   5.232 -                   is_const=True)
   5.233 -    ## system-thread.h: void ns3::SystemThread::Unref() const [member function]
   5.234 -    cls.add_method('Unref', 
   5.235 -                   'void', 
   5.236 -                   [], 
   5.237 -                   is_const=True)
   5.238 -    ## system-thread.h: void ns3::SystemThread::Start() [member function]
   5.239 -    cls.add_method('Start', 
   5.240 -                   'void', 
   5.241 -                   [])
   5.242 -    ## system-thread.h: void ns3::SystemThread::Join() [member function]
   5.243 -    cls.add_method('Join', 
   5.244 -                   'void', 
   5.245 -                   [])
   5.246 -    cls.add_copy_constructor()
   5.247      return
   5.248  
   5.249  def register_Ns3EmpiricalVariable_methods(root_module, cls):
   5.250 +    ## random-variable.h: ns3::EmpiricalVariable::EmpiricalVariable(ns3::EmpiricalVariable const & arg0) [copy constructor]
   5.251 +    cls.add_constructor([param('ns3::EmpiricalVariable&', 'arg0', is_const=True)])
   5.252      ## random-variable.h: ns3::EmpiricalVariable::EmpiricalVariable() [constructor]
   5.253      cls.add_constructor([])
   5.254      ## random-variable.h: void ns3::EmpiricalVariable::CDF(double v, double c) [member function]
   5.255      cls.add_method('CDF', 
   5.256                     'void', 
   5.257                     [param('double', 'v'), param('double', 'c')])
   5.258 -    cls.add_copy_constructor()
   5.259      return
   5.260  
   5.261  def register_Ns3EnumChecker_methods(root_module, cls):
   5.262 +    ## enum.h: ns3::EnumChecker::EnumChecker(ns3::EnumChecker const & arg0) [copy constructor]
   5.263 +    cls.add_constructor([param('ns3::EnumChecker&', 'arg0', is_const=True)])
   5.264      ## enum.h: ns3::EnumChecker::EnumChecker() [constructor]
   5.265      cls.add_constructor([])
   5.266      ## enum.h: void ns3::EnumChecker::AddDefault(int v, std::string name) [member function]
   5.267 @@ -868,19 +863,20 @@
   5.268                     'bool', 
   5.269                     [param('ns3::AttributeValue&', 'src', is_const=True), param('ns3::AttributeValue&', 'dst')], 
   5.270                     is_const=True, is_virtual=True)
   5.271 -    cls.add_copy_constructor()
   5.272      return
   5.273  
   5.274  def register_Ns3Empty_methods(root_module, cls):
   5.275 +    ## empty.h: ns3::empty::empty(ns3::empty const & arg0) [copy constructor]
   5.276 +    cls.add_constructor([param('ns3::empty&', 'arg0', is_const=True)])
   5.277 +    ## empty.h: ns3::empty::empty() [constructor]
   5.278      cls.add_constructor([])
   5.279 -    cls.add_copy_constructor()
   5.280      return
   5.281  
   5.282  def register_Ns3ObjectBase_methods(root_module, cls):
   5.283 +    ## object-base.h: ns3::ObjectBase::ObjectBase(ns3::ObjectBase const & arg0) [copy constructor]
   5.284 +    cls.add_constructor([param('ns3::ObjectBase&', 'arg0', is_const=True)])
   5.285      ## object-base.h: ns3::ObjectBase::ObjectBase() [constructor]
   5.286      cls.add_constructor([])
   5.287 -    ## object-base.h: ns3::ObjectBase::ObjectBase(ns3::ObjectBase const & arg0) [copy constructor]
   5.288 -    cls.add_constructor([param('ns3::ObjectBase&', 'arg0', is_const=True)])
   5.289      ## object-base.h: static ns3::TypeId ns3::ObjectBase::GetTypeId() [member function]
   5.290      cls.add_method('GetTypeId', 
   5.291                     'ns3::TypeId', 
   5.292 @@ -938,43 +934,59 @@
   5.293      return
   5.294  
   5.295  def register_Ns3CommandLine_methods(root_module, cls):
   5.296 +    ## command-line.h: ns3::CommandLine::CommandLine(ns3::CommandLine const & arg0) [copy constructor]
   5.297 +    cls.add_constructor([param('ns3::CommandLine&', 'arg0', is_const=True)])
   5.298 +    ## command-line.h: ns3::CommandLine::CommandLine() [constructor]
   5.299      cls.add_constructor([])
   5.300 -    cls.add_copy_constructor()
   5.301      return
   5.302  
   5.303  def register_Ns3IntToType__6_methods(root_module, cls):
   5.304 +    ## int-to-type.h: ns3::IntToType<6>::IntToType(ns3::IntToType<6> const & arg0) [copy constructor]
   5.305 +    cls.add_constructor([param('ns3::IntToType< 6 >&', 'arg0', is_const=True)])
   5.306 +    ## int-to-type.h: ns3::IntToType<6>::IntToType() [constructor]
   5.307      cls.add_constructor([])
   5.308 -    cls.add_copy_constructor()
   5.309      return
   5.310  
   5.311  def register_Ns3IntToType__5_methods(root_module, cls):
   5.312 +    ## int-to-type.h: ns3::IntToType<5>::IntToType(ns3::IntToType<5> const & arg0) [copy constructor]
   5.313 +    cls.add_constructor([param('ns3::IntToType< 5 >&', 'arg0', is_const=True)])
   5.314 +    ## int-to-type.h: ns3::IntToType<5>::IntToType() [constructor]
   5.315      cls.add_constructor([])
   5.316 -    cls.add_copy_constructor()
   5.317      return
   5.318  
   5.319  def register_Ns3IntToType__4_methods(root_module, cls):
   5.320 +    ## int-to-type.h: ns3::IntToType<4>::IntToType(ns3::IntToType<4> const & arg0) [copy constructor]
   5.321 +    cls.add_constructor([param('ns3::IntToType< 4 >&', 'arg0', is_const=True)])
   5.322 +    ## int-to-type.h: ns3::IntToType<4>::IntToType() [constructor]
   5.323      cls.add_constructor([])
   5.324 -    cls.add_copy_constructor()
   5.325      return
   5.326  
   5.327  def register_Ns3IntToType__3_methods(root_module, cls):
   5.328 +    ## int-to-type.h: ns3::IntToType<3>::IntToType(ns3::IntToType<3> const & arg0) [copy constructor]
   5.329 +    cls.add_constructor([param('ns3::IntToType< 3 >&', 'arg0', is_const=True)])
   5.330 +    ## int-to-type.h: ns3::IntToType<3>::IntToType() [constructor]
   5.331      cls.add_constructor([])
   5.332 -    cls.add_copy_constructor()
   5.333      return
   5.334  
   5.335  def register_Ns3IntToType__2_methods(root_module, cls):
   5.336 +    ## int-to-type.h: ns3::IntToType<2>::IntToType(ns3::IntToType<2> const & arg0) [copy constructor]
   5.337 +    cls.add_constructor([param('ns3::IntToType< 2 >&', 'arg0', is_const=True)])
   5.338 +    ## int-to-type.h: ns3::IntToType<2>::IntToType() [constructor]
   5.339      cls.add_constructor([])
   5.340 -    cls.add_copy_constructor()
   5.341      return
   5.342  
   5.343  def register_Ns3IntToType__1_methods(root_module, cls):
   5.344 +    ## int-to-type.h: ns3::IntToType<1>::IntToType(ns3::IntToType<1> const & arg0) [copy constructor]
   5.345 +    cls.add_constructor([param('ns3::IntToType< 1 >&', 'arg0', is_const=True)])
   5.346 +    ## int-to-type.h: ns3::IntToType<1>::IntToType() [constructor]
   5.347      cls.add_constructor([])
   5.348 -    cls.add_copy_constructor()
   5.349      return
   5.350  
   5.351  def register_Ns3IntToType__0_methods(root_module, cls):
   5.352 +    ## int-to-type.h: ns3::IntToType<0>::IntToType(ns3::IntToType<0> const & arg0) [copy constructor]
   5.353 +    cls.add_constructor([param('ns3::IntToType< 0 >&', 'arg0', is_const=True)])
   5.354 +    ## int-to-type.h: ns3::IntToType<0>::IntToType() [constructor]
   5.355      cls.add_constructor([])
   5.356 -    cls.add_copy_constructor()
   5.357      return
   5.358  
   5.359  def register_Ns3RngStream_methods(root_module, cls):
   5.360 @@ -1044,6 +1056,8 @@
   5.361      return
   5.362  
   5.363  def register_Ns3LogNormalVariable_methods(root_module, cls):
   5.364 +    ## random-variable.h: ns3::LogNormalVariable::LogNormalVariable(ns3::LogNormalVariable const & arg0) [copy constructor]
   5.365 +    cls.add_constructor([param('ns3::LogNormalVariable&', 'arg0', is_const=True)])
   5.366      ## random-variable.h: ns3::LogNormalVariable::LogNormalVariable(double mu, double sigma) [constructor]
   5.367      cls.add_constructor([param('double', 'mu'), param('double', 'sigma')])
   5.368      ## random-variable.h: static double ns3::LogNormalVariable::GetSingleValue(double mu, double sigma) [member function]
   5.369 @@ -1051,26 +1065,30 @@
   5.370                     'double', 
   5.371                     [param('double', 'mu'), param('double', 'sigma')], 
   5.372                     is_static=True)
   5.373 -    cls.add_copy_constructor()
   5.374      return
   5.375  
   5.376  def register_Ns3IntEmpiricalVariable_methods(root_module, cls):
   5.377 +    ## random-variable.h: ns3::IntEmpiricalVariable::IntEmpiricalVariable(ns3::IntEmpiricalVariable const & arg0) [copy constructor]
   5.378 +    cls.add_constructor([param('ns3::IntEmpiricalVariable&', 'arg0', is_const=True)])
   5.379      ## random-variable.h: ns3::IntEmpiricalVariable::IntEmpiricalVariable() [constructor]
   5.380      cls.add_constructor([])
   5.381 -    cls.add_copy_constructor()
   5.382      return
   5.383  
   5.384  def register_Ns3PointerChecker_methods(root_module, cls):
   5.385 +    ## pointer.h: ns3::PointerChecker::PointerChecker(ns3::PointerChecker const & arg0) [copy constructor]
   5.386 +    cls.add_constructor([param('ns3::PointerChecker&', 'arg0', is_const=True)])
   5.387 +    ## pointer.h: ns3::PointerChecker::PointerChecker() [constructor]
   5.388 +    cls.add_constructor([])
   5.389      ## pointer.h: ns3::TypeId ns3::PointerChecker::GetPointeeTypeId() const [member function]
   5.390      cls.add_method('GetPointeeTypeId', 
   5.391                     'ns3::TypeId', 
   5.392                     [], 
   5.393                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.394 -    cls.add_constructor([])
   5.395 -    cls.add_copy_constructor()
   5.396      return
   5.397  
   5.398  def register_Ns3WeibullVariable_methods(root_module, cls):
   5.399 +    ## random-variable.h: ns3::WeibullVariable::WeibullVariable(ns3::WeibullVariable const & arg0) [copy constructor]
   5.400 +    cls.add_constructor([param('ns3::WeibullVariable&', 'arg0', is_const=True)])
   5.401      ## random-variable.h: ns3::WeibullVariable::WeibullVariable() [constructor]
   5.402      cls.add_constructor([])
   5.403      ## random-variable.h: ns3::WeibullVariable::WeibullVariable(double m) [constructor]
   5.404 @@ -1084,10 +1102,11 @@
   5.405                     'double', 
   5.406                     [param('double', 'm'), param('double', 's'), param('double', 'b', default_value='0')], 
   5.407                     is_static=True)
   5.408 -    cls.add_copy_constructor()
   5.409      return
   5.410  
   5.411  def register_Ns3CallbackBase_methods(root_module, cls):
   5.412 +    ## callback.h: ns3::CallbackBase::CallbackBase(ns3::CallbackBase const & arg0) [copy constructor]
   5.413 +    cls.add_constructor([param('ns3::CallbackBase&', 'arg0', is_const=True)])
   5.414      ## callback.h: ns3::CallbackBase::CallbackBase() [constructor]
   5.415      cls.add_constructor([])
   5.416      ## callback.h: ns3::Ptr<ns3::CallbackImplBase> ns3::CallbackBase::GetImpl() const [member function]
   5.417 @@ -1098,10 +1117,11 @@
   5.418      ## callback.h: ns3::CallbackBase::CallbackBase(ns3::Ptr<ns3::CallbackImplBase> impl) [constructor]
   5.419      cls.add_constructor([param('ns3::Ptr< ns3::CallbackImplBase >', 'impl')], 
   5.420                          visibility='protected')
   5.421 -    cls.add_copy_constructor()
   5.422      return
   5.423  
   5.424  def register_Ns3ExponentialVariable_methods(root_module, cls):
   5.425 +    ## random-variable.h: ns3::ExponentialVariable::ExponentialVariable(ns3::ExponentialVariable const & arg0) [copy constructor]
   5.426 +    cls.add_constructor([param('ns3::ExponentialVariable&', 'arg0', is_const=True)])
   5.427      ## random-variable.h: ns3::ExponentialVariable::ExponentialVariable() [constructor]
   5.428      cls.add_constructor([])
   5.429      ## random-variable.h: ns3::ExponentialVariable::ExponentialVariable(double m) [constructor]
   5.430 @@ -1113,13 +1133,38 @@
   5.431                     'double', 
   5.432                     [param('double', 'm'), param('double', 'b', default_value='0')], 
   5.433                     is_static=True)
   5.434 -    cls.add_copy_constructor()
   5.435      return
   5.436  
   5.437  def register_Ns3DeterministicVariable_methods(root_module, cls):
   5.438 +    ## random-variable.h: ns3::DeterministicVariable::DeterministicVariable(ns3::DeterministicVariable const & arg0) [copy constructor]
   5.439 +    cls.add_constructor([param('ns3::DeterministicVariable&', 'arg0', is_const=True)])
   5.440      ## random-variable.h: ns3::DeterministicVariable::DeterministicVariable(double * d, uint32_t c) [constructor]
   5.441      cls.add_constructor([param('double *', 'd'), param('uint32_t', 'c')])
   5.442 -    cls.add_copy_constructor()
   5.443 +    return
   5.444 +
   5.445 +def register_Ns3SystemThread_methods(root_module, cls):
   5.446 +    ## system-thread.h: ns3::SystemThread::SystemThread(ns3::SystemThread const & arg0) [copy constructor]
   5.447 +    cls.add_constructor([param('ns3::SystemThread&', 'arg0', is_const=True)])
   5.448 +    ## system-thread.h: ns3::SystemThread::SystemThread(ns3::Callback<void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [constructor]
   5.449 +    cls.add_constructor([param('ns3::Callback< void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')])
   5.450 +    ## system-thread.h: void ns3::SystemThread::Ref() const [member function]
   5.451 +    cls.add_method('Ref', 
   5.452 +                   'void', 
   5.453 +                   [], 
   5.454 +                   is_const=True)
   5.455 +    ## system-thread.h: void ns3::SystemThread::Unref() const [member function]
   5.456 +    cls.add_method('Unref', 
   5.457 +                   'void', 
   5.458 +                   [], 
   5.459 +                   is_const=True)
   5.460 +    ## system-thread.h: void ns3::SystemThread::Start() [member function]
   5.461 +    cls.add_method('Start', 
   5.462 +                   'void', 
   5.463 +                   [])
   5.464 +    ## system-thread.h: void ns3::SystemThread::Join() [member function]
   5.465 +    cls.add_method('Join', 
   5.466 +                   'void', 
   5.467 +                   [])
   5.468      return
   5.469  
   5.470  def register_Ns3AttributeList_methods(root_module, cls):
   5.471 @@ -1182,6 +1227,8 @@
   5.472      return
   5.473  
   5.474  def register_Ns3UniformVariable_methods(root_module, cls):
   5.475 +    ## random-variable.h: ns3::UniformVariable::UniformVariable(ns3::UniformVariable const & arg0) [copy constructor]
   5.476 +    cls.add_constructor([param('ns3::UniformVariable&', 'arg0', is_const=True)])
   5.477      ## random-variable.h: ns3::UniformVariable::UniformVariable() [constructor]
   5.478      cls.add_constructor([])
   5.479      ## random-variable.h: ns3::UniformVariable::UniformVariable(double s, double l) [constructor]
   5.480 @@ -1191,7 +1238,6 @@
   5.481                     'double', 
   5.482                     [param('double', 's'), param('double', 'l')], 
   5.483                     is_static=True)
   5.484 -    cls.add_copy_constructor()
   5.485      return
   5.486  
   5.487  def register_Ns3Object_methods(root_module, cls):
   5.488 @@ -1236,6 +1282,8 @@
   5.489      return
   5.490  
   5.491  def register_Ns3ObjectAggregateIterator_methods(root_module, cls):
   5.492 +    ## object.h: ns3::Object::AggregateIterator::AggregateIterator(ns3::Object::AggregateIterator const & arg0) [copy constructor]
   5.493 +    cls.add_constructor([param('ns3::Object::AggregateIterator&', 'arg0', is_const=True)])
   5.494      ## object.h: ns3::Object::AggregateIterator::AggregateIterator() [constructor]
   5.495      cls.add_constructor([])
   5.496      ## object.h: bool ns3::Object::AggregateIterator::HasNext() const [member function]
   5.497 @@ -1247,10 +1295,11 @@
   5.498      cls.add_method('Next', 
   5.499                     'ns3::Ptr< ns3::Object const >', 
   5.500                     [])
   5.501 -    cls.add_copy_constructor()
   5.502      return
   5.503  
   5.504  def register_Ns3SystemCondition_methods(root_module, cls):
   5.505 +    ## system-condition.h: ns3::SystemCondition::SystemCondition(ns3::SystemCondition const & arg0) [copy constructor]
   5.506 +    cls.add_constructor([param('ns3::SystemCondition&', 'arg0', is_const=True)])
   5.507      ## system-condition.h: ns3::SystemCondition::SystemCondition() [constructor]
   5.508      cls.add_constructor([])
   5.509      ## system-condition.h: void ns3::SystemCondition::SetCondition(bool condition) [member function]
   5.510 @@ -1277,43 +1326,49 @@
   5.511      cls.add_method('TimedWait', 
   5.512                     'bool', 
   5.513                     [param('uint64_t', 'ns')])
   5.514 -    cls.add_copy_constructor()
   5.515      return
   5.516  
   5.517  def register_Ns3SequentialVariable_methods(root_module, cls):
   5.518 +    ## random-variable.h: ns3::SequentialVariable::SequentialVariable(ns3::SequentialVariable const & arg0) [copy constructor]
   5.519 +    cls.add_constructor([param('ns3::SequentialVariable&', 'arg0', is_const=True)])
   5.520      ## random-variable.h: ns3::SequentialVariable::SequentialVariable(double f, double l, double i=1, uint32_t c=1) [constructor]
   5.521      cls.add_constructor([param('double', 'f'), param('double', 'l'), param('double', 'i', default_value='1'), param('uint32_t', 'c', default_value='1')])
   5.522      ## random-variable.h: ns3::SequentialVariable::SequentialVariable(double f, double l, ns3::RandomVariable const & i, uint32_t c=1) [constructor]
   5.523      cls.add_constructor([param('double', 'f'), param('double', 'l'), param('ns3::RandomVariable&', 'i', is_const=True), param('uint32_t', 'c', default_value='1')])
   5.524 -    cls.add_copy_constructor()
   5.525      return
   5.526  
   5.527  def register_Ns3ObjectVectorChecker_methods(root_module, cls):
   5.528 +    ## object-vector.h: ns3::ObjectVectorChecker::ObjectVectorChecker(ns3::ObjectVectorChecker const & arg0) [copy constructor]
   5.529 +    cls.add_constructor([param('ns3::ObjectVectorChecker&', 'arg0', is_const=True)])
   5.530 +    ## object-vector.h: ns3::ObjectVectorChecker::ObjectVectorChecker() [constructor]
   5.531 +    cls.add_constructor([])
   5.532      ## object-vector.h: ns3::TypeId ns3::ObjectVectorChecker::GetItemTypeId() const [member function]
   5.533      cls.add_method('GetItemTypeId', 
   5.534                     'ns3::TypeId', 
   5.535                     [], 
   5.536                     is_pure_virtual=True, is_const=True, is_virtual=True)
   5.537 -    cls.add_constructor([])
   5.538 -    cls.add_copy_constructor()
   5.539      return
   5.540  
   5.541  def register_Ns3StringChecker_methods(root_module, cls):
   5.542 +    ## string.h: ns3::StringChecker::StringChecker(ns3::StringChecker const & arg0) [copy constructor]
   5.543 +    cls.add_constructor([param('ns3::StringChecker&', 'arg0', is_const=True)])
   5.544 +    ## string.h: ns3::StringChecker::StringChecker() [constructor]
   5.545      cls.add_constructor([])
   5.546 -    cls.add_copy_constructor()
   5.547      return
   5.548  
   5.549  def register_Ns3ObjectVectorValue_methods(root_module, cls):
   5.550 +    ## object-vector.h: ns3::ObjectVectorValue::ObjectVectorValue(ns3::ObjectVectorValue const & arg0) [copy constructor]
   5.551 +    cls.add_constructor([param('ns3::ObjectVectorValue&', 'arg0', is_const=True)])
   5.552      ## object-vector.h: ns3::ObjectVectorValue::ObjectVectorValue() [constructor]
   5.553      cls.add_constructor([])
   5.554      ## object-vector.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Object>*,std::vector<ns3::Ptr<ns3::Object>, std::allocator<ns3::Ptr<ns3::Object> > > > ns3::ObjectVectorValue::Begin() const [member function]
   5.555      cls.add_method('Begin', 
   5.556 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Object >, std::vector< ns3::Ptr< ns3::Object >, std::allocator< ns3::Ptr< ns3::Object > > > >', 
   5.557 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Object >, std::vector< ns3::Ptr< ns3::Object > > >', 
   5.558                     [], 
   5.559                     is_const=True)
   5.560      ## object-vector.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Object>*,std::vector<ns3::Ptr<ns3::Object>, std::allocator<ns3::Ptr<ns3::Object> > > > ns3::ObjectVectorValue::End() const [member function]
   5.561      cls.add_method('End', 
   5.562 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Object >, std::vector< ns3::Ptr< ns3::Object >, std::allocator< ns3::Ptr< ns3::Object > > > >', 
   5.563 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Object >, std::vector< ns3::Ptr< ns3::Object > > >', 
   5.564                     [], 
   5.565                     is_const=True)
   5.566      ## object-vector.h: uint32_t ns3::ObjectVectorValue::GetN() const [member function]
   5.567 @@ -1341,15 +1396,18 @@
   5.568                     'bool', 
   5.569                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.570                     is_virtual=True)
   5.571 -    cls.add_copy_constructor()
   5.572      return
   5.573  
   5.574  def register_Ns3BooleanChecker_methods(root_module, cls):
   5.575 +    ## boolean.h: ns3::BooleanChecker::BooleanChecker(ns3::BooleanChecker const & arg0) [copy constructor]
   5.576 +    cls.add_constructor([param('ns3::BooleanChecker&', 'arg0', is_const=True)])
   5.577 +    ## boolean.h: ns3::BooleanChecker::BooleanChecker() [constructor]
   5.578      cls.add_constructor([])
   5.579 -    cls.add_copy_constructor()
   5.580      return
   5.581  
   5.582  def register_Ns3UintegerValue_methods(root_module, cls):
   5.583 +    ## uinteger.h: ns3::UintegerValue::UintegerValue(ns3::UintegerValue const & arg0) [copy constructor]
   5.584 +    cls.add_constructor([param('ns3::UintegerValue&', 'arg0', is_const=True)])
   5.585      ## uinteger.h: ns3::UintegerValue::UintegerValue() [constructor]
   5.586      cls.add_constructor([])
   5.587      ## uinteger.h: ns3::UintegerValue::UintegerValue(uint64_t const & value) [constructor]
   5.588 @@ -1378,10 +1436,13 @@
   5.589                     'bool', 
   5.590                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.591                     is_virtual=True)
   5.592 -    cls.add_copy_constructor()
   5.593      return
   5.594  
   5.595  def register_Ns3ObjectVectorAccessor_methods(root_module, cls):
   5.596 +    ## object-vector.h: ns3::ObjectVectorAccessor::ObjectVectorAccessor(ns3::ObjectVectorAccessor const & arg0) [copy constructor]
   5.597 +    cls.add_constructor([param('ns3::ObjectVectorAccessor&', 'arg0', is_const=True)])
   5.598 +    ## object-vector.h: ns3::ObjectVectorAccessor::ObjectVectorAccessor() [constructor]
   5.599 +    cls.add_constructor([])
   5.600      ## object-vector.h: bool ns3::ObjectVectorAccessor::Set(ns3::ObjectBase * object, ns3::AttributeValue const & value) const [member function]
   5.601      cls.add_method('Set', 
   5.602                     'bool', 
   5.603 @@ -1412,8 +1473,6 @@
   5.604                     'ns3::Ptr< ns3::Object >', 
   5.605                     [param('ns3::ObjectBase *', 'object', transfer_ownership=False, is_const=True), param('uint32_t', 'i')], 
   5.606                     is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
   5.607 -    cls.add_constructor([])
   5.608 -    cls.add_copy_constructor()
   5.609      return
   5.610  
   5.611  def register_Ns3PointerValue_methods(root_module, cls):
   5.612 @@ -1450,16 +1509,22 @@
   5.613      return
   5.614  
   5.615  def register_Ns3ObjectFactoryChecker_methods(root_module, cls):
   5.616 +    ## object-factory.h: ns3::ObjectFactoryChecker::ObjectFactoryChecker(ns3::ObjectFactoryChecker const & arg0) [copy constructor]
   5.617 +    cls.add_constructor([param('ns3::ObjectFactoryChecker&', 'arg0', is_const=True)])
   5.618 +    ## object-factory.h: ns3::ObjectFactoryChecker::ObjectFactoryChecker() [constructor]
   5.619      cls.add_constructor([])
   5.620 -    cls.add_copy_constructor()
   5.621      return
   5.622  
   5.623  def register_Ns3TypeIdChecker_methods(root_module, cls):
   5.624 +    ## type-id.h: ns3::TypeIdChecker::TypeIdChecker(ns3::TypeIdChecker const & arg0) [copy constructor]
   5.625 +    cls.add_constructor([param('ns3::TypeIdChecker&', 'arg0', is_const=True)])
   5.626 +    ## type-id.h: ns3::TypeIdChecker::TypeIdChecker() [constructor]
   5.627      cls.add_constructor([])
   5.628 -    cls.add_copy_constructor()
   5.629      return
   5.630  
   5.631  def register_Ns3DoubleValue_methods(root_module, cls):
   5.632 +    ## double.h: ns3::DoubleValue::DoubleValue(ns3::DoubleValue const & arg0) [copy constructor]
   5.633 +    cls.add_constructor([param('ns3::DoubleValue&', 'arg0', is_const=True)])
   5.634      ## double.h: ns3::DoubleValue::DoubleValue() [constructor]
   5.635      cls.add_constructor([])
   5.636      ## double.h: ns3::DoubleValue::DoubleValue(double const & value) [constructor]
   5.637 @@ -1488,10 +1553,11 @@
   5.638                     'bool', 
   5.639                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.640                     is_virtual=True)
   5.641 -    cls.add_copy_constructor()
   5.642      return
   5.643  
   5.644  def register_Ns3TypeIdValue_methods(root_module, cls):
   5.645 +    ## type-id.h: ns3::TypeIdValue::TypeIdValue(ns3::TypeIdValue const & arg0) [copy constructor]
   5.646 +    cls.add_constructor([param('ns3::TypeIdValue&', 'arg0', is_const=True)])
   5.647      ## type-id.h: ns3::TypeIdValue::TypeIdValue() [constructor]
   5.648      cls.add_constructor([])
   5.649      ## type-id.h: ns3::TypeIdValue::TypeIdValue(ns3::TypeId const & value) [constructor]
   5.650 @@ -1520,10 +1586,11 @@
   5.651                     'bool', 
   5.652                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.653                     is_virtual=True)
   5.654 -    cls.add_copy_constructor()
   5.655      return
   5.656  
   5.657  def register_Ns3EnumValue_methods(root_module, cls):
   5.658 +    ## enum.h: ns3::EnumValue::EnumValue(ns3::EnumValue const & arg0) [copy constructor]
   5.659 +    cls.add_constructor([param('ns3::EnumValue&', 'arg0', is_const=True)])
   5.660      ## enum.h: ns3::EnumValue::EnumValue() [constructor]
   5.661      cls.add_constructor([])
   5.662      ## enum.h: ns3::EnumValue::EnumValue(int v) [constructor]
   5.663 @@ -1552,10 +1619,11 @@
   5.664                     'bool', 
   5.665                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.666                     is_virtual=True)
   5.667 -    cls.add_copy_constructor()
   5.668      return
   5.669  
   5.670  def register_Ns3RandomVariableValue_methods(root_module, cls):
   5.671 +    ## random-variable.h: ns3::RandomVariableValue::RandomVariableValue(ns3::RandomVariableValue const & arg0) [copy constructor]
   5.672 +    cls.add_constructor([param('ns3::RandomVariableValue&', 'arg0', is_const=True)])
   5.673      ## random-variable.h: ns3::RandomVariableValue::RandomVariableValue() [constructor]
   5.674      cls.add_constructor([])
   5.675      ## random-variable.h: ns3::RandomVariableValue::RandomVariableValue(ns3::RandomVariable const & value) [constructor]
   5.676 @@ -1584,10 +1652,11 @@
   5.677                     'bool', 
   5.678                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.679                     is_virtual=True)
   5.680 -    cls.add_copy_constructor()
   5.681      return
   5.682  
   5.683  def register_Ns3ObjectFactoryValue_methods(root_module, cls):
   5.684 +    ## object-factory.h: ns3::ObjectFactoryValue::ObjectFactoryValue(ns3::ObjectFactoryValue const & arg0) [copy constructor]
   5.685 +    cls.add_constructor([param('ns3::ObjectFactoryValue&', 'arg0', is_const=True)])
   5.686      ## object-factory.h: ns3::ObjectFactoryValue::ObjectFactoryValue() [constructor]
   5.687      cls.add_constructor([])
   5.688      ## object-factory.h: ns3::ObjectFactoryValue::ObjectFactoryValue(ns3::ObjectFactory const & value) [constructor]
   5.689 @@ -1616,10 +1685,11 @@
   5.690                     'bool', 
   5.691                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.692                     is_virtual=True)
   5.693 -    cls.add_copy_constructor()
   5.694      return
   5.695  
   5.696  def register_Ns3IntegerValue_methods(root_module, cls):
   5.697 +    ## integer.h: ns3::IntegerValue::IntegerValue(ns3::IntegerValue const & arg0) [copy constructor]
   5.698 +    cls.add_constructor([param('ns3::IntegerValue&', 'arg0', is_const=True)])
   5.699      ## integer.h: ns3::IntegerValue::IntegerValue() [constructor]
   5.700      cls.add_constructor([])
   5.701      ## integer.h: ns3::IntegerValue::IntegerValue(int64_t const & value) [constructor]
   5.702 @@ -1648,7 +1718,6 @@
   5.703                     'bool', 
   5.704                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.705                     is_virtual=True)
   5.706 -    cls.add_copy_constructor()
   5.707      return
   5.708  
   5.709  def register_Ns3BooleanValue_methods(root_module, cls):
   5.710 @@ -1686,6 +1755,8 @@
   5.711      return
   5.712  
   5.713  def register_Ns3StringValue_methods(root_module, cls):
   5.714 +    ## string.h: ns3::StringValue::StringValue(ns3::StringValue const & arg0) [copy constructor]
   5.715 +    cls.add_constructor([param('ns3::StringValue&', 'arg0', is_const=True)])
   5.716      ## string.h: ns3::StringValue::StringValue() [constructor]
   5.717      cls.add_constructor([])
   5.718      ## string.h: ns3::StringValue::StringValue(std::string const & value) [constructor]
   5.719 @@ -1714,7 +1785,6 @@
   5.720                     'bool', 
   5.721                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   5.722                     is_virtual=True)
   5.723 -    cls.add_copy_constructor()
   5.724      return
   5.725  
   5.726  def register_Ns3EmptyAttributeValue_methods(root_module, cls):
     6.1 --- a/bindings/python/ns3_module_csma.py	Fri Aug 29 14:53:38 2008 +0100
     6.2 +++ b/bindings/python/ns3_module_csma.py	Fri Aug 29 14:56:24 2008 +0100
     6.3 @@ -68,6 +68,8 @@
     6.4      cls.add_instance_attribute('devicePtr', 'ns3::Ptr< ns3::CsmaNetDevice >', is_const=False)
     6.5      ## csma-channel.h: ns3::CsmaDeviceRec::active [variable]
     6.6      cls.add_instance_attribute('active', 'bool', is_const=False)
     6.7 +    ## csma-channel.h: ns3::CsmaDeviceRec::CsmaDeviceRec(ns3::CsmaDeviceRec const & arg0) [copy constructor]
     6.8 +    cls.add_constructor([param('ns3::CsmaDeviceRec&', 'arg0', is_const=True)])
     6.9      ## csma-channel.h: ns3::CsmaDeviceRec::CsmaDeviceRec() [constructor]
    6.10      cls.add_constructor([])
    6.11      ## csma-channel.h: ns3::CsmaDeviceRec::CsmaDeviceRec(ns3::Ptr<ns3::CsmaNetDevice> device) [constructor]
    6.12 @@ -76,7 +78,6 @@
    6.13      cls.add_method('IsActive', 
    6.14                     'bool', 
    6.15                     [])
    6.16 -    cls.add_copy_constructor()
    6.17      return
    6.18  
    6.19  def register_Ns3Backoff_methods(root_module, cls):
    6.20 @@ -90,6 +91,8 @@
    6.21      cls.add_instance_attribute('m_maxRetries', 'uint32_t', is_const=False)
    6.22      ## backoff.h: ns3::Backoff::m_slotTime [variable]
    6.23      cls.add_instance_attribute('m_slotTime', 'ns3::Time', is_const=False)
    6.24 +    ## backoff.h: ns3::Backoff::Backoff(ns3::Backoff const & arg0) [copy constructor]
    6.25 +    cls.add_constructor([param('ns3::Backoff&', 'arg0', is_const=True)])
    6.26      ## backoff.h: ns3::Backoff::Backoff() [constructor]
    6.27      cls.add_constructor([])
    6.28      ## backoff.h: ns3::Backoff::Backoff(ns3::Time slotTime, uint32_t minSlots, uint32_t maxSlots, uint32_t ceiling, uint32_t maxRetries) [constructor]
    6.29 @@ -110,10 +113,11 @@
    6.30      cls.add_method('IncrNumRetries', 
    6.31                     'void', 
    6.32                     [])
    6.33 -    cls.add_copy_constructor()
    6.34      return
    6.35  
    6.36  def register_Ns3CsmaChannel_methods(root_module, cls):
    6.37 +    ## csma-channel.h: ns3::CsmaChannel::CsmaChannel(ns3::CsmaChannel const & arg0) [copy constructor]
    6.38 +    cls.add_constructor([param('ns3::CsmaChannel&', 'arg0', is_const=True)])
    6.39      ## csma-channel.h: static ns3::TypeId ns3::CsmaChannel::GetTypeId() [member function]
    6.40      cls.add_method('GetTypeId', 
    6.41                     'ns3::TypeId', 
    6.42 @@ -198,7 +202,6 @@
    6.43                     'ns3::Time', 
    6.44                     [], 
    6.45                     is_virtual=True)
    6.46 -    cls.add_copy_constructor()
    6.47      return
    6.48  
    6.49  def register_Ns3CsmaNetDevice_methods(root_module, cls):
    6.50 @@ -384,15 +387,15 @@
    6.51                     'bool', 
    6.52                     [], 
    6.53                     is_const=True, is_virtual=True)
    6.54 -    ## csma-net-device.h: void ns3::CsmaNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
    6.55 +    ## csma-net-device.h: void ns3::CsmaNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
    6.56      cls.add_method('SetReceiveCallback', 
    6.57                     'void', 
    6.58 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
    6.59 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
    6.60                     is_virtual=True)
    6.61 -    ## csma-net-device.h: void ns3::CsmaNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
    6.62 +    ## 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.63      cls.add_method('SetPromiscReceiveCallback', 
    6.64                     'void', 
    6.65 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
    6.66 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
    6.67                     is_virtual=True)
    6.68      ## csma-net-device.h: bool ns3::CsmaNetDevice::SupportsPromiscuous() const [member function]
    6.69      cls.add_method('SupportsPromiscuous', 
     7.1 --- a/bindings/python/ns3_module_global_routing.py	Fri Aug 29 14:53:38 2008 +0100
     7.2 +++ b/bindings/python/ns3_module_global_routing.py	Fri Aug 29 14:56:24 2008 +0100
     7.3 @@ -180,6 +180,8 @@
     7.4      return
     7.5  
     7.6  def register_Ns3GlobalRoutingLinkRecord_methods(root_module, cls):
     7.7 +    ## global-router-interface.h: ns3::GlobalRoutingLinkRecord::GlobalRoutingLinkRecord(ns3::GlobalRoutingLinkRecord const & arg0) [copy constructor]
     7.8 +    cls.add_constructor([param('ns3::GlobalRoutingLinkRecord&', 'arg0', is_const=True)])
     7.9      ## global-router-interface.h: ns3::GlobalRoutingLinkRecord::GlobalRoutingLinkRecord() [constructor]
    7.10      cls.add_constructor([])
    7.11      ## global-router-interface.h: ns3::GlobalRoutingLinkRecord::GlobalRoutingLinkRecord(ns3::GlobalRoutingLinkRecord::LinkType linkType, ns3::Ipv4Address linkId, ns3::Ipv4Address linkData, uint16_t metric) [constructor]
    7.12 @@ -220,7 +222,6 @@
    7.13      cls.add_method('SetMetric', 
    7.14                     'void', 
    7.15                     [param('uint16_t', 'metric')])
    7.16 -    cls.add_copy_constructor()
    7.17      return
    7.18  
    7.19  def register_Ns3GlobalRouter_methods(root_module, cls):
     8.1 --- a/bindings/python/ns3_module_helper.py	Fri Aug 29 14:53:38 2008 +0100
     8.2 +++ b/bindings/python/ns3_module_helper.py	Fri Aug 29 14:56:24 2008 +0100
     8.3 @@ -105,6 +105,8 @@
     8.4      return
     8.5  
     8.6  def register_Ns3MobilityHelper_methods(root_module, cls):
     8.7 +    ## mobility-helper.h: ns3::MobilityHelper::MobilityHelper(ns3::MobilityHelper const & arg0) [copy constructor]
     8.8 +    cls.add_constructor([param('ns3::MobilityHelper&', 'arg0', is_const=True)])
     8.9      ## mobility-helper.h: ns3::MobilityHelper::MobilityHelper() [constructor]
    8.10      cls.add_constructor([])
    8.11      ## mobility-helper.h: void ns3::MobilityHelper::SetPositionAllocator(ns3::Ptr<ns3::PositionAllocator> allocator) [member function]
    8.12 @@ -155,10 +157,13 @@
    8.13                     'void', 
    8.14                     [param('std::ostream&', 'os')], 
    8.15                     is_static=True)
    8.16 -    cls.add_copy_constructor()
    8.17      return
    8.18  
    8.19  def register_Ns3InternetStackHelper_methods(root_module, cls):
    8.20 +    ## internet-stack-helper.h: ns3::InternetStackHelper::InternetStackHelper(ns3::InternetStackHelper const & arg0) [copy constructor]
    8.21 +    cls.add_constructor([param('ns3::InternetStackHelper&', 'arg0', is_const=True)])
    8.22 +    ## internet-stack-helper.h: ns3::InternetStackHelper::InternetStackHelper() [constructor]
    8.23 +    cls.add_constructor([])
    8.24      ## internet-stack-helper.h: void ns3::InternetStackHelper::Install(ns3::NodeContainer c) [member function]
    8.25      cls.add_method('Install', 
    8.26                     'void', 
    8.27 @@ -168,11 +173,11 @@
    8.28                     'void', 
    8.29                     [param('std::string', 'filename')], 
    8.30                     is_static=True)
    8.31 -    cls.add_constructor([])
    8.32 -    cls.add_copy_constructor()
    8.33      return
    8.34  
    8.35  def register_Ns3NodeContainer_methods(root_module, cls):
    8.36 +    ## node-container.h: ns3::NodeContainer::NodeContainer(ns3::NodeContainer const & arg0) [copy constructor]
    8.37 +    cls.add_constructor([param('ns3::NodeContainer&', 'arg0', is_const=True)])
    8.38      ## node-container.h: ns3::NodeContainer::NodeContainer() [constructor]
    8.39      cls.add_constructor([])
    8.40      ## node-container.h: ns3::NodeContainer::NodeContainer(ns3::Ptr<ns3::Node> node) [constructor]
    8.41 @@ -185,12 +190,12 @@
    8.42      cls.add_constructor([param('ns3::NodeContainer&', 'a', is_const=True), param('ns3::NodeContainer&', 'b', is_const=True), param('ns3::NodeContainer&', 'c', is_const=True), param('ns3::NodeContainer&', 'd', is_const=True)])
    8.43      ## node-container.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Node>*,std::vector<ns3::Ptr<ns3::Node>, std::allocator<ns3::Ptr<ns3::Node> > > > ns3::NodeContainer::Begin() const [member function]
    8.44      cls.add_method('Begin', 
    8.45 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node >, std::allocator< ns3::Ptr< ns3::Node > > > >', 
    8.46 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node > > >', 
    8.47                     [], 
    8.48                     is_const=True)
    8.49      ## node-container.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Node>*,std::vector<ns3::Ptr<ns3::Node>, std::allocator<ns3::Ptr<ns3::Node> > > > ns3::NodeContainer::End() const [member function]
    8.50      cls.add_method('End', 
    8.51 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node >, std::allocator< ns3::Ptr< ns3::Node > > > >', 
    8.52 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node > > >', 
    8.53                     [], 
    8.54                     is_const=True)
    8.55      ## node-container.h: uint32_t ns3::NodeContainer::GetN() const [member function]
    8.56 @@ -220,10 +225,11 @@
    8.57                     'ns3::NodeContainer', 
    8.58                     [], 
    8.59                     is_static=True)
    8.60 -    cls.add_copy_constructor()
    8.61      return
    8.62  
    8.63  def register_Ns3PointToPointHelper_methods(root_module, cls):
    8.64 +    ## point-to-point-helper.h: ns3::PointToPointHelper::PointToPointHelper(ns3::PointToPointHelper const & arg0) [copy constructor]
    8.65 +    cls.add_constructor([param('ns3::PointToPointHelper&', 'arg0', is_const=True)])
    8.66      ## point-to-point-helper.h: ns3::PointToPointHelper::PointToPointHelper() [constructor]
    8.67      cls.add_constructor([])
    8.68      ## point-to-point-helper.h: void ns3::PointToPointHelper::SetQueue(std::string type, std::string n1="", ns3::AttributeValue const & v1=ns3::EmptyAttributeValue(), std::string n2="", ns3::AttributeValue const & v2=ns3::EmptyAttributeValue(), std::string n3="", ns3::AttributeValue const & v3=ns3::EmptyAttributeValue(), std::string n4="", ns3::AttributeValue const & v4=ns3::EmptyAttributeValue()) [member function]
    8.69 @@ -296,18 +302,21 @@
    8.70      cls.add_method('Install', 
    8.71                     'ns3::NetDeviceContainer', 
    8.72                     [param('ns3::Ptr< ns3::Node >', 'a'), param('ns3::Ptr< ns3::Node >', 'b')])
    8.73 -    cls.add_copy_constructor()
    8.74      return
    8.75  
    8.76  def register_Ns3NetDeviceContainer_methods(root_module, cls):
    8.77 +    ## net-device-container.h: ns3::NetDeviceContainer::NetDeviceContainer(ns3::NetDeviceContainer const & arg0) [copy constructor]
    8.78 +    cls.add_constructor([param('ns3::NetDeviceContainer&', 'arg0', is_const=True)])
    8.79 +    ## net-device-container.h: ns3::NetDeviceContainer::NetDeviceContainer() [constructor]
    8.80 +    cls.add_constructor([])
    8.81      ## net-device-container.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::NetDevice>*,std::vector<ns3::Ptr<ns3::NetDevice>, std::allocator<ns3::Ptr<ns3::NetDevice> > > > ns3::NetDeviceContainer::Begin() const [member function]
    8.82      cls.add_method('Begin', 
    8.83 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::NetDevice >, std::vector< ns3::Ptr< ns3::NetDevice >, std::allocator< ns3::Ptr< ns3::NetDevice > > > >', 
    8.84 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::NetDevice >, std::vector< ns3::Ptr< ns3::NetDevice > > >', 
    8.85                     [], 
    8.86                     is_const=True)
    8.87      ## net-device-container.h: __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::NetDevice>*,std::vector<ns3::Ptr<ns3::NetDevice>, std::allocator<ns3::Ptr<ns3::NetDevice> > > > ns3::NetDeviceContainer::End() const [member function]
    8.88      cls.add_method('End', 
    8.89 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::NetDevice >, std::vector< ns3::Ptr< ns3::NetDevice >, std::allocator< ns3::Ptr< ns3::NetDevice > > > >', 
    8.90 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::NetDevice >, std::vector< ns3::Ptr< ns3::NetDevice > > >', 
    8.91                     [], 
    8.92                     is_const=True)
    8.93      ## net-device-container.h: uint32_t ns3::NetDeviceContainer::GetN() const [member function]
    8.94 @@ -328,11 +337,11 @@
    8.95      cls.add_method('Add', 
    8.96                     'void', 
    8.97                     [param('ns3::Ptr< ns3::NetDevice >', 'device')])
    8.98 -    cls.add_constructor([])
    8.99 -    cls.add_copy_constructor()
   8.100      return
   8.101  
   8.102  def register_Ns3CsmaHelper_methods(root_module, cls):
   8.103 +    ## csma-helper.h: ns3::CsmaHelper::CsmaHelper(ns3::CsmaHelper const & arg0) [copy constructor]
   8.104 +    cls.add_constructor([param('ns3::CsmaHelper&', 'arg0', is_const=True)])
   8.105      ## csma-helper.h: ns3::CsmaHelper::CsmaHelper() [constructor]
   8.106      cls.add_constructor([])
   8.107      ## csma-helper.h: void ns3::CsmaHelper::SetQueue(std::string type, std::string n1="", ns3::AttributeValue const & v1=ns3::EmptyAttributeValue(), std::string n2="", ns3::AttributeValue const & v2=ns3::EmptyAttributeValue(), std::string n3="", ns3::AttributeValue const & v3=ns3::EmptyAttributeValue(), std::string n4="", ns3::AttributeValue const & v4=ns3::EmptyAttributeValue()) [member function]
   8.108 @@ -405,10 +414,11 @@
   8.109      cls.add_method('Install', 
   8.110                     'ns3::NetDeviceContainer', 
   8.111                     [param('ns3::NodeContainer&', 'c', is_const=True), param('ns3::Ptr< ns3::CsmaChannel >', 'channel')])
   8.112 -    cls.add_copy_constructor()
   8.113      return
   8.114  
   8.115  def register_Ns3UdpEchoServerHelper_methods(root_module, cls):
   8.116 +    ## udp-echo-helper.h: ns3::UdpEchoServerHelper::UdpEchoServerHelper(ns3::UdpEchoServerHelper const & arg0) [copy constructor]
   8.117 +    cls.add_constructor([param('ns3::UdpEchoServerHelper&', 'arg0', is_const=True)])
   8.118      ## udp-echo-helper.h: ns3::UdpEchoServerHelper::UdpEchoServerHelper(uint16_t port) [constructor]
   8.119      cls.add_constructor([param('uint16_t', 'port')])
   8.120      ## udp-echo-helper.h: void ns3::UdpEchoServerHelper::SetAttribute(std::string name, ns3::AttributeValue const & value) [member function]
   8.121 @@ -419,10 +429,11 @@
   8.122      cls.add_method('Install', 
   8.123                     'ns3::ApplicationContainer', 
   8.124                     [param('ns3::NodeContainer', 'c')])
   8.125 -    cls.add_copy_constructor()
   8.126      return
   8.127  
   8.128  def register_Ns3OlsrHelper_methods(root_module, cls):
   8.129 +    ## olsr-helper.h: ns3::OlsrHelper::OlsrHelper(ns3::OlsrHelper const & arg0) [copy constructor]
   8.130 +    cls.add_constructor([param('ns3::OlsrHelper&', 'arg0', is_const=True)])
   8.131      ## olsr-helper.h: ns3::OlsrHelper::OlsrHelper() [constructor]
   8.132      cls.add_constructor([])
   8.133      ## olsr-helper.h: void ns3::OlsrHelper::SetAgent(std::string tid, std::string n0="", ns3::AttributeValue const & v0=ns3::EmptyAttributeValue(), std::string n1="", ns3::AttributeValue const & v1=ns3::EmptyAttributeValue(), std::string n2="", ns3::AttributeValue const & v2=ns3::EmptyAttributeValue(), std::string n3="", ns3::AttributeValue const & v3=ns3::EmptyAttributeValue(), std::string n4="", ns3::AttributeValue const & v4=ns3::EmptyAttributeValue(), std::string n5="", ns3::AttributeValue const & v5=ns3::EmptyAttributeValue(), std::string n6="", ns3::AttributeValue const & v6=ns3::EmptyAttributeValue(), std::string n7="", ns3::AttributeValue const & v7=ns3::EmptyAttributeValue()) [member function]
   8.134 @@ -441,19 +452,22 @@
   8.135      cls.add_method('InstallAll', 
   8.136                     'void', 
   8.137                     [])
   8.138 -    cls.add_copy_constructor()
   8.139      return
   8.140  
   8.141  def register_Ns3PacketSocketHelper_methods(root_module, cls):
   8.142 +    ## packet-socket-helper.h: ns3::PacketSocketHelper::PacketSocketHelper(ns3::PacketSocketHelper const & arg0) [copy constructor]
   8.143 +    cls.add_constructor([param('ns3::PacketSocketHelper&', 'arg0', is_const=True)])
   8.144 +    ## packet-socket-helper.h: ns3::PacketSocketHelper::PacketSocketHelper() [constructor]
   8.145 +    cls.add_constructor([])
   8.146      ## packet-socket-helper.h: void ns3::PacketSocketHelper::Install(ns3::NodeContainer c) [member function]
   8.147      cls.add_method('Install', 
   8.148                     'void', 
   8.149                     [param('ns3::NodeContainer', 'c')])
   8.150 -    cls.add_constructor([])
   8.151 -    cls.add_copy_constructor()
   8.152      return
   8.153  
   8.154  def register_Ns3OnOffHelper_methods(root_module, cls):
   8.155 +    ## on-off-helper.h: ns3::OnOffHelper::OnOffHelper(ns3::OnOffHelper const & arg0) [copy constructor]
   8.156 +    cls.add_constructor([param('ns3::OnOffHelper&', 'arg0', is_const=True)])
   8.157      ## on-off-helper.h: ns3::OnOffHelper::OnOffHelper(std::string protocol, ns3::Address address) [constructor]
   8.158      cls.add_constructor([param('std::string', 'protocol'), param('ns3::Address', 'address')])
   8.159      ## on-off-helper.h: void ns3::OnOffHelper::SetAttribute(std::string name, ns3::AttributeValue const & value) [member function]
   8.160 @@ -464,10 +478,11 @@
   8.161      cls.add_method('Install', 
   8.162                     'ns3::ApplicationContainer', 
   8.163                     [param('ns3::NodeContainer', 'c')])
   8.164 -    cls.add_copy_constructor()
   8.165      return
   8.166  
   8.167  def register_Ns3UdpEchoClientHelper_methods(root_module, cls):
   8.168 +    ## udp-echo-helper.h: ns3::UdpEchoClientHelper::UdpEchoClientHelper(ns3::UdpEchoClientHelper const & arg0) [copy constructor]
   8.169 +    cls.add_constructor([param('ns3::UdpEchoClientHelper&', 'arg0', is_const=True)])
   8.170      ## udp-echo-helper.h: ns3::UdpEchoClientHelper::UdpEchoClientHelper(ns3::Ipv4Address ip, uint16_t port) [constructor]
   8.171      cls.add_constructor([param('ns3::Ipv4Address', 'ip'), param('uint16_t', 'port')])
   8.172      ## udp-echo-helper.h: void ns3::UdpEchoClientHelper::SetAttribute(std::string name, ns3::AttributeValue const & value) [member function]
   8.173 @@ -478,10 +493,11 @@
   8.174      cls.add_method('Install', 
   8.175                     'ns3::ApplicationContainer', 
   8.176                     [param('ns3::NodeContainer', 'c')])
   8.177 -    cls.add_copy_constructor()
   8.178      return
   8.179  
   8.180  def register_Ns3StaticMulticastRouteHelper_methods(root_module, cls):
   8.181 +    ## static-multicast-route-helper.h: ns3::StaticMulticastRouteHelper::StaticMulticastRouteHelper(ns3::StaticMulticastRouteHelper const & arg0) [copy constructor]
   8.182 +    cls.add_constructor([param('ns3::StaticMulticastRouteHelper&', 'arg0', is_const=True)])
   8.183      ## static-multicast-route-helper.h: ns3::StaticMulticastRouteHelper::StaticMulticastRouteHelper() [constructor]
   8.184      cls.add_constructor([])
   8.185      ## static-multicast-route-helper.h: void ns3::StaticMulticastRouteHelper::AddMulticastRoute(ns3::Ptr<ns3::Node> arg0, ns3::Ipv4Address source, ns3::Ipv4Address group, ns3::Ptr<ns3::NetDevice> input, ns3::NetDeviceContainer output) [member function]
   8.186 @@ -496,10 +512,11 @@
   8.187      cls.add_method('JoinMulticastGroup', 
   8.188                     'void', 
   8.189                     [param('ns3::Ptr< ns3::Node >', 'n'), param('ns3::Ipv4Address', 'source'), param('ns3::Ipv4Address', 'group')])
   8.190 -    cls.add_copy_constructor()
   8.191      return
   8.192  
   8.193  def register_Ns3Ipv4InterfaceContainer_methods(root_module, cls):
   8.194 +    ## ipv4-interface-container.h: ns3::Ipv4InterfaceContainer::Ipv4InterfaceContainer(ns3::Ipv4InterfaceContainer const & arg0) [copy constructor]
   8.195 +    cls.add_constructor([param('ns3::Ipv4InterfaceContainer&', 'arg0', is_const=True)])
   8.196      ## ipv4-interface-container.h: ns3::Ipv4InterfaceContainer::Ipv4InterfaceContainer() [constructor]
   8.197      cls.add_constructor([])
   8.198      ## ipv4-interface-container.h: uint32_t ns3::Ipv4InterfaceContainer::GetN() const [member function]
   8.199 @@ -520,18 +537,21 @@
   8.200      cls.add_method('Add', 
   8.201                     'void', 
   8.202                     [param('ns3::Ptr< ns3::Ipv4 >', 'ipv4'), param('uint32_t', 'interface')])
   8.203 -    cls.add_copy_constructor()
   8.204      return
   8.205  
   8.206  def register_Ns3ApplicationContainer_methods(root_module, cls):
   8.207 +    ## application-container.h: ns3::ApplicationContainer::ApplicationContainer(ns3::ApplicationContainer const & arg0) [copy constructor]
   8.208 +    cls.add_constructor([param('ns3::ApplicationContainer&', 'arg0', is_const=True)])
   8.209 +    ## application-container.h: ns3::ApplicationContainer::ApplicationContainer() [constructor]
   8.210 +    cls.add_constructor([])
   8.211      ## 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]
   8.212      cls.add_method('Begin', 
   8.213 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Application >, std::vector< ns3::Ptr< ns3::Application >, std::allocator< ns3::Ptr< ns3::Application > > > >', 
   8.214 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Application >, std::vector< ns3::Ptr< ns3::Application > > >', 
   8.215                     [], 
   8.216                     is_const=True)
   8.217      ## 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::End() const [member function]
   8.218      cls.add_method('End', 
   8.219 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Application >, std::vector< ns3::Ptr< ns3::Application >, std::allocator< ns3::Ptr< ns3::Application > > > >', 
   8.220 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Application >, std::vector< ns3::Ptr< ns3::Application > > >', 
   8.221                     [], 
   8.222                     is_const=True)
   8.223      ## application-container.h: uint32_t ns3::ApplicationContainer::GetN() const [member function]
   8.224 @@ -560,11 +580,11 @@
   8.225      cls.add_method('Stop', 
   8.226                     'void', 
   8.227                     [param('ns3::Time', 'stop')])
   8.228 -    cls.add_constructor([])
   8.229 -    cls.add_copy_constructor()
   8.230      return
   8.231  
   8.232  def register_Ns3WifiHelper_methods(root_module, cls):
   8.233 +    ## wifi-helper.h: ns3::WifiHelper::WifiHelper(ns3::WifiHelper const & arg0) [copy constructor]
   8.234 +    cls.add_constructor([param('ns3::WifiHelper&', 'arg0', is_const=True)])
   8.235      ## wifi-helper.h: ns3::WifiHelper::WifiHelper() [constructor]
   8.236      cls.add_constructor([])
   8.237      ## wifi-helper.h: void ns3::WifiHelper::SetRemoteStationManager(std::string type, std::string n0="", ns3::AttributeValue const & v0=ns3::EmptyAttributeValue(), std::string n1="", ns3::AttributeValue const & v1=ns3::EmptyAttributeValue(), std::string n2="", ns3::AttributeValue const & v2=ns3::EmptyAttributeValue(), std::string n3="", ns3::AttributeValue const & v3=ns3::EmptyAttributeValue(), std::string n4="", ns3::AttributeValue const & v4=ns3::EmptyAttributeValue(), std::string n5="", ns3::AttributeValue const & v5=ns3::EmptyAttributeValue(), std::string n6="", ns3::AttributeValue const & v6=ns3::EmptyAttributeValue(), std::string n7="", ns3::AttributeValue const & v7=ns3::EmptyAttributeValue()) [member function]
   8.238 @@ -629,10 +649,11 @@
   8.239                     'ns3::NetDeviceContainer', 
   8.240                     [param('ns3::NodeContainer', 'c'), param('ns3::Ptr< ns3::WifiChannel >', 'channel')], 
   8.241                     is_const=True)
   8.242 -    cls.add_copy_constructor()
   8.243      return
   8.244  
   8.245  def register_Ns3Ipv4AddressHelper_methods(root_module, cls):
   8.246 +    ## ipv4-address-helper.h: ns3::Ipv4AddressHelper::Ipv4AddressHelper(ns3::Ipv4AddressHelper const & arg0) [copy constructor]
   8.247 +    cls.add_constructor([param('ns3::Ipv4AddressHelper&', 'arg0', is_const=True)])
   8.248      ## ipv4-address-helper.h: ns3::Ipv4AddressHelper::Ipv4AddressHelper() [constructor]
   8.249      cls.add_constructor([])
   8.250      ## ipv4-address-helper.h: void ns3::Ipv4AddressHelper::SetBase(ns3::Ipv4Address network, ns3::Ipv4Mask mask, ns3::Ipv4Address base="0.0.0.1") [member function]
   8.251 @@ -651,10 +672,11 @@
   8.252      cls.add_method('Assign', 
   8.253                     'ns3::Ipv4InterfaceContainer', 
   8.254                     [param('ns3::NetDeviceContainer&', 'c', is_const=True)])
   8.255 -    cls.add_copy_constructor()
   8.256      return
   8.257  
   8.258  def register_Ns3BridgeHelper_methods(root_module, cls):
   8.259 +    ## bridge-helper.h: ns3::BridgeHelper::BridgeHelper(ns3::BridgeHelper const & arg0) [copy constructor]
   8.260 +    cls.add_constructor([param('ns3::BridgeHelper&', 'arg0', is_const=True)])
   8.261      ## bridge-helper.h: ns3::BridgeHelper::BridgeHelper() [constructor]
   8.262      cls.add_constructor([])
   8.263      ## bridge-helper.h: void ns3::BridgeHelper::SetDeviceAttribute(std::string n1, ns3::AttributeValue const & v1) [member function]
   8.264 @@ -665,10 +687,11 @@
   8.265      cls.add_method('Install', 
   8.266                     'ns3::NetDeviceContainer', 
   8.267                     [param('ns3::Ptr< ns3::Node >', 'node'), param('ns3::NetDeviceContainer', 'c')])
   8.268 -    cls.add_copy_constructor()
   8.269      return
   8.270  
   8.271  def register_Ns3PacketSinkHelper_methods(root_module, cls):
   8.272 +    ## packet-sink-helper.h: ns3::PacketSinkHelper::PacketSinkHelper(ns3::PacketSinkHelper const & arg0) [copy constructor]
   8.273 +    cls.add_constructor([param('ns3::PacketSinkHelper&', 'arg0', is_const=True)])
   8.274      ## packet-sink-helper.h: ns3::PacketSinkHelper::PacketSinkHelper(std::string protocol, ns3::Address address) [constructor]
   8.275      cls.add_constructor([param('std::string', 'protocol'), param('ns3::Address', 'address')])
   8.276      ## packet-sink-helper.h: void ns3::PacketSinkHelper::SetAttribute(std::string name, ns3::AttributeValue const & value) [member function]
   8.277 @@ -679,10 +702,11 @@
   8.278      cls.add_method('Install', 
   8.279                     'ns3::ApplicationContainer', 
   8.280                     [param('ns3::NodeContainer', 'c')])
   8.281 -    cls.add_copy_constructor()
   8.282      return
   8.283  
   8.284  def register_Ns3Ns2MobilityHelper_methods(root_module, cls):
   8.285 +    ## ns2-mobility-helper.h: ns3::Ns2MobilityHelper::Ns2MobilityHelper(ns3::Ns2MobilityHelper const & arg0) [copy constructor]
   8.286 +    cls.add_constructor([param('ns3::Ns2MobilityHelper&', 'arg0', is_const=True)])
   8.287      ## ns2-mobility-helper.h: ns3::Ns2MobilityHelper::Ns2MobilityHelper(std::string filename) [constructor]
   8.288      cls.add_constructor([param('std::string', 'filename')])
   8.289      ## ns2-mobility-helper.h: void ns3::Ns2MobilityHelper::Install() const [member function]
   8.290 @@ -690,7 +714,6 @@
   8.291                     'void', 
   8.292                     [], 
   8.293                     is_const=True)
   8.294 -    cls.add_copy_constructor()
   8.295      return
   8.296  
   8.297  def register_functions(root_module):
     9.1 --- a/bindings/python/ns3_module_internet_stack.py	Fri Aug 29 14:53:38 2008 +0100
     9.2 +++ b/bindings/python/ns3_module_internet_stack.py	Fri Aug 29 14:56:24 2008 +0100
     9.3 @@ -65,6 +65,8 @@
     9.4      return
     9.5  
     9.6  def register_Ns3Ipv4Interface_methods(root_module, cls):
     9.7 +    ## ipv4-interface.h: ns3::Ipv4Interface::Ipv4Interface(ns3::Ipv4Interface const & arg0) [copy constructor]
     9.8 +    cls.add_constructor([param('ns3::Ipv4Interface&', 'arg0', is_const=True)])
     9.9      ## ipv4-interface.h: static ns3::TypeId ns3::Ipv4Interface::GetTypeId() [member function]
    9.10      cls.add_method('GetTypeId', 
    9.11                     'ns3::TypeId', 
    9.12 @@ -146,10 +148,11 @@
    9.13                     'void', 
    9.14                     [param('ns3::Ptr< ns3::Packet >', 'p'), param('ns3::Ipv4Address', 'dest')], 
    9.15                     is_pure_virtual=True, visibility='private', is_virtual=True)
    9.16 -    cls.add_copy_constructor()
    9.17      return
    9.18  
    9.19  def register_Ns3UdpHeader_methods(root_module, cls):
    9.20 +    ## udp-header.h: ns3::UdpHeader::UdpHeader(ns3::UdpHeader const & arg0) [copy constructor]
    9.21 +    cls.add_constructor([param('ns3::UdpHeader&', 'arg0', is_const=True)])
    9.22      ## udp-header.h: ns3::UdpHeader::UdpHeader() [constructor]
    9.23      cls.add_constructor([])
    9.24      ## udp-header.h: void ns3::UdpHeader::EnableChecksums() [member function]
    9.25 @@ -213,10 +216,11 @@
    9.26                     'bool', 
    9.27                     [], 
    9.28                     is_const=True)
    9.29 -    cls.add_copy_constructor()
    9.30      return
    9.31  
    9.32  def register_Ns3TcpHeader_methods(root_module, cls):
    9.33 +    ## tcp-header.h: ns3::TcpHeader::TcpHeader(ns3::TcpHeader const & arg0) [copy constructor]
    9.34 +    cls.add_constructor([param('ns3::TcpHeader&', 'arg0', is_const=True)])
    9.35      ## tcp-header.h: ns3::TcpHeader::TcpHeader() [constructor]
    9.36      cls.add_constructor([])
    9.37      ## tcp-header.h: void ns3::TcpHeader::EnableChecksums() [member function]
    9.38 @@ -334,10 +338,11 @@
    9.39                     'bool', 
    9.40                     [], 
    9.41                     is_const=True)
    9.42 -    cls.add_copy_constructor()
    9.43      return
    9.44  
    9.45  def register_Ns3Ipv4StaticRouting_methods(root_module, cls):
    9.46 +    ## ipv4-static-routing.h: ns3::Ipv4StaticRouting::Ipv4StaticRouting(ns3::Ipv4StaticRouting const & arg0) [copy constructor]
    9.47 +    cls.add_constructor([param('ns3::Ipv4StaticRouting&', 'arg0', is_const=True)])
    9.48      ## ipv4-static-routing.h: ns3::Ipv4StaticRouting::Ipv4StaticRouting() [constructor]
    9.49      cls.add_constructor([])
    9.50      ## ipv4-static-routing.h: bool ns3::Ipv4StaticRouting::RequestRoute(uint32_t ifIndex, ns3::Ipv4Header const & ipHeader, ns3::Ptr<ns3::Packet> packet, ns3::Callback<void,bool,const ns3::Ipv4Route&,ns3::Ptr<ns3::Packet>,const ns3::Ipv4Header&,ns3::empty,ns3::empty> routeReply) [member function]
    9.51 @@ -389,7 +394,7 @@
    9.52      ## ipv4-static-routing.h: void ns3::Ipv4StaticRouting::AddMulticastRoute(ns3::Ipv4Address origin, ns3::Ipv4Address group, uint32_t inputInterface, std::vector<unsigned int, std::allocator<unsigned int> > outputInterfaces) [member function]
    9.53      cls.add_method('AddMulticastRoute', 
    9.54                     'void', 
    9.55 -                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int, std::allocator< unsigned int > >', 'outputInterfaces')])
    9.56 +                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int >', 'outputInterfaces')])
    9.57      ## ipv4-static-routing.h: void ns3::Ipv4StaticRouting::SetDefaultMulticastRoute(uint32_t outputInterface) [member function]
    9.58      cls.add_method('SetDefaultMulticastRoute', 
    9.59                     'void', 
    9.60 @@ -422,12 +427,13 @@
    9.61                     'void', 
    9.62                     [], 
    9.63                     visibility='protected', is_virtual=True)
    9.64 -    cls.add_copy_constructor()
    9.65      return
    9.66  
    9.67  def register_Ns3Ipv4L3Protocol_methods(root_module, cls):
    9.68      ## ipv4-l3-protocol.h: ns3::Ipv4L3Protocol::PROT_NUMBER [variable]
    9.69      cls.add_static_attribute('PROT_NUMBER', retval('uint16_t', is_const=True), is_const=True)
    9.70 +    ## ipv4-l3-protocol.h: ns3::Ipv4L3Protocol::Ipv4L3Protocol(ns3::Ipv4L3Protocol const & arg0) [copy constructor]
    9.71 +    cls.add_constructor([param('ns3::Ipv4L3Protocol&', 'arg0', is_const=True)])
    9.72      ## ipv4-l3-protocol.h: static ns3::TypeId ns3::Ipv4L3Protocol::GetTypeId() [member function]
    9.73      cls.add_method('GetTypeId', 
    9.74                     'ns3::TypeId', 
    9.75 @@ -447,10 +453,10 @@
    9.76      cls.add_method('FindInterfaceForDevice', 
    9.77                     'ns3::Ptr< ns3::Ipv4Interface >', 
    9.78                     [param('ns3::Ptr< const ns3::NetDevice >', 'device')])
    9.79 -    ## ipv4-l3-protocol.h: void ns3::Ipv4L3Protocol::Receive(ns3::Ptr<ns3::NetDevice> device, ns3::Ptr<ns3::Packet> p, uint16_t protocol, ns3::Address const & from, ns3::Address const & to, ns3::NetDevice::PacketType packetType) [member function]
    9.80 +    ## ipv4-l3-protocol.h: void ns3::Ipv4L3Protocol::Receive(ns3::Ptr<ns3::NetDevice> device, ns3::Ptr<const ns3::Packet> p, uint16_t protocol, ns3::Address const & from, ns3::Address const & to, ns3::NetDevice::PacketType packetType) [member function]
    9.81      cls.add_method('Receive', 
    9.82                     'void', 
    9.83 -                   [param('ns3::Ptr< ns3::NetDevice >', 'device'), param('ns3::Ptr< ns3::Packet >', 'p'), param('uint16_t', 'protocol'), param('ns3::Address&', 'from', is_const=True), param('ns3::Address&', 'to', is_const=True), param('ns3::NetDevice::PacketType', 'packetType')])
    9.84 +                   [param('ns3::Ptr< ns3::NetDevice >', 'device'), param('ns3::Ptr< const ns3::Packet >', 'p'), param('uint16_t', 'protocol'), param('ns3::Address&', 'from', is_const=True), param('ns3::Address&', 'to', is_const=True), param('ns3::NetDevice::PacketType', 'packetType')])
    9.85      ## ipv4-l3-protocol.h: void ns3::Ipv4L3Protocol::Send(ns3::Ptr<ns3::Packet> packet, ns3::Ipv4Address source, ns3::Ipv4Address destination, uint8_t protocol) [member function]
    9.86      cls.add_method('Send', 
    9.87                     'void', 
    9.88 @@ -494,7 +500,7 @@
    9.89      ## ipv4-l3-protocol.h: void ns3::Ipv4L3Protocol::AddMulticastRoute(ns3::Ipv4Address origin, ns3::Ipv4Address group, uint32_t inputInterface, std::vector<unsigned int, std::allocator<unsigned int> > outputInterfaces) [member function]
    9.90      cls.add_method('AddMulticastRoute', 
    9.91                     'void', 
    9.92 -                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int, std::allocator< unsigned int > >', 'outputInterfaces')])
    9.93 +                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int >', 'outputInterfaces')])
    9.94      ## ipv4-l3-protocol.h: void ns3::Ipv4L3Protocol::SetDefaultMulticastRoute(uint32_t onputInterface) [member function]
    9.95      cls.add_method('SetDefaultMulticastRoute', 
    9.96                     'void', 
    9.97 @@ -613,7 +619,6 @@
    9.98                     'void', 
    9.99                     [], 
   9.100                     visibility='protected', is_virtual=True)
   9.101 -    cls.add_copy_constructor()
   9.102      return
   9.103  
   9.104  def register_functions(root_module):
    10.1 --- a/bindings/python/ns3_module_mobility.py	Fri Aug 29 14:53:38 2008 +0100
    10.2 +++ b/bindings/python/ns3_module_mobility.py	Fri Aug 29 14:56:24 2008 +0100
    10.3 @@ -111,6 +111,8 @@
    10.4      return
    10.5  
    10.6  def register_Ns3StaticSpeedHelper_methods(root_module, cls):
    10.7 +    ## static-speed-helper.h: ns3::StaticSpeedHelper::StaticSpeedHelper(ns3::StaticSpeedHelper const & arg0) [copy constructor]
    10.8 +    cls.add_constructor([param('ns3::StaticSpeedHelper&', 'arg0', is_const=True)])
    10.9      ## static-speed-helper.h: ns3::StaticSpeedHelper::StaticSpeedHelper() [constructor]
   10.10      cls.add_constructor([])
   10.11      ## static-speed-helper.h: ns3::StaticSpeedHelper::StaticSpeedHelper(ns3::Vector const & position) [constructor]
   10.12 @@ -152,7 +154,6 @@
   10.13      cls.add_method('Unpause', 
   10.14                     'void', 
   10.15                     [])
   10.16 -    cls.add_copy_constructor()
   10.17      return
   10.18  
   10.19  def register_Ns3Vector_methods(root_module, cls):
   10.20 @@ -172,13 +173,17 @@
   10.21      return
   10.22  
   10.23  def register_Ns3VectorChecker_methods(root_module, cls):
   10.24 +    ## vector.h: ns3::VectorChecker::VectorChecker(ns3::VectorChecker const & arg0) [copy constructor]
   10.25 +    cls.add_constructor([param('ns3::VectorChecker&', 'arg0', is_const=True)])
   10.26 +    ## vector.h: ns3::VectorChecker::VectorChecker() [constructor]
   10.27      cls.add_constructor([])
   10.28 -    cls.add_copy_constructor()
   10.29      return
   10.30  
   10.31  def register_Ns3RectangleChecker_methods(root_module, cls):
   10.32 +    ## rectangle.h: ns3::RectangleChecker::RectangleChecker(ns3::RectangleChecker const & arg0) [copy constructor]
   10.33 +    cls.add_constructor([param('ns3::RectangleChecker&', 'arg0', is_const=True)])
   10.34 +    ## rectangle.h: ns3::RectangleChecker::RectangleChecker() [constructor]
   10.35      cls.add_constructor([])
   10.36 -    cls.add_copy_constructor()
   10.37      return
   10.38  
   10.39  def register_Ns3Rectangle_methods(root_module, cls):
   10.40 @@ -215,6 +220,8 @@
   10.41      return
   10.42  
   10.43  def register_Ns3PositionAllocator_methods(root_module, cls):
   10.44 +    ## position-allocator.h: ns3::PositionAllocator::PositionAllocator(ns3::PositionAllocator const & arg0) [copy constructor]
   10.45 +    cls.add_constructor([param('ns3::PositionAllocator&', 'arg0', is_const=True)])
   10.46      ## position-allocator.h: static ns3::TypeId ns3::PositionAllocator::GetTypeId() [member function]
   10.47      cls.add_method('GetTypeId', 
   10.48                     'ns3::TypeId', 
   10.49 @@ -227,10 +234,11 @@
   10.50                     'ns3::Vector', 
   10.51                     [], 
   10.52                     is_pure_virtual=True, is_const=True, is_virtual=True)
   10.53 -    cls.add_copy_constructor()
   10.54      return
   10.55  
   10.56  def register_Ns3ListPositionAllocator_methods(root_module, cls):
   10.57 +    ## position-allocator.h: ns3::ListPositionAllocator::ListPositionAllocator(ns3::ListPositionAllocator const & arg0) [copy constructor]
   10.58 +    cls.add_constructor([param('ns3::ListPositionAllocator&', 'arg0', is_const=True)])
   10.59      ## position-allocator.h: static ns3::TypeId ns3::ListPositionAllocator::GetTypeId() [member function]
   10.60      cls.add_method('GetTypeId', 
   10.61                     'ns3::TypeId', 
   10.62 @@ -247,10 +255,11 @@
   10.63                     'ns3::Vector', 
   10.64                     [], 
   10.65                     is_const=True, is_virtual=True)
   10.66 -    cls.add_copy_constructor()
   10.67      return
   10.68  
   10.69  def register_Ns3RectangleValue_methods(root_module, cls):
   10.70 +    ## rectangle.h: ns3::RectangleValue::RectangleValue(ns3::RectangleValue const & arg0) [copy constructor]
   10.71 +    cls.add_constructor([param('ns3::RectangleValue&', 'arg0', is_const=True)])
   10.72      ## rectangle.h: ns3::RectangleValue::RectangleValue() [constructor]
   10.73      cls.add_constructor([])
   10.74      ## rectangle.h: ns3::RectangleValue::RectangleValue(ns3::Rectangle const & value) [constructor]
   10.75 @@ -279,10 +288,11 @@
   10.76                     'bool', 
   10.77                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
   10.78                     is_virtual=True)
   10.79 -    cls.add_copy_constructor()
   10.80      return
   10.81  
   10.82  def register_Ns3RandomRectanglePositionAllocator_methods(root_module, cls):
   10.83 +    ## position-allocator.h: ns3::RandomRectanglePositionAllocator::RandomRectanglePositionAllocator(ns3::RandomRectanglePositionAllocator const & arg0) [copy constructor]
   10.84 +    cls.add_constructor([param('ns3::RandomRectanglePositionAllocator&', 'arg0', is_const=True)])
   10.85      ## position-allocator.h: static ns3::TypeId ns3::RandomRectanglePositionAllocator::GetTypeId() [member function]
   10.86      cls.add_method('GetTypeId', 
   10.87                     'ns3::TypeId', 
   10.88 @@ -303,10 +313,11 @@
   10.89                     'ns3::Vector', 
   10.90                     [], 
   10.91                     is_const=True, is_virtual=True)
   10.92 -    cls.add_copy_constructor()
   10.93      return
   10.94  
   10.95  def register_Ns3VectorValue_methods(root_module, cls):
   10.96 +    ## vector.h: ns3::VectorValue::VectorValue(ns3::VectorValue const & arg0) [copy constructor]
   10.97 +    cls.add_constructor([param('ns3::VectorValue&', 'arg0', is_const=True)])
   10.98      ## vector.h: ns3::VectorValue::VectorValue() [constructor]
   10.99      cls.add_constructor([])
  10.100      ## vector.h: ns3::VectorValue::VectorValue(ns3::Vector const & value) [constructor]
  10.101 @@ -335,10 +346,11 @@
  10.102                     'bool', 
  10.103                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  10.104                     is_virtual=True)
  10.105 -    cls.add_copy_constructor()
  10.106      return
  10.107  
  10.108  def register_Ns3RandomDiscPositionAllocator_methods(root_module, cls):
  10.109 +    ## position-allocator.h: ns3::RandomDiscPositionAllocator::RandomDiscPositionAllocator(ns3::RandomDiscPositionAllocator const & arg0) [copy constructor]
  10.110 +    cls.add_constructor([param('ns3::RandomDiscPositionAllocator&', 'arg0', is_const=True)])
  10.111      ## position-allocator.h: static ns3::TypeId ns3::RandomDiscPositionAllocator::GetTypeId() [member function]
  10.112      cls.add_method('GetTypeId', 
  10.113                     'ns3::TypeId', 
  10.114 @@ -367,10 +379,11 @@
  10.115                     'ns3::Vector', 
  10.116                     [], 
  10.117                     is_const=True, is_virtual=True)
  10.118 -    cls.add_copy_constructor()
  10.119      return
  10.120  
  10.121  def register_Ns3MobilityModel_methods(root_module, cls):
  10.122 +    ## mobility-model.h: ns3::MobilityModel::MobilityModel(ns3::MobilityModel const & arg0) [copy constructor]
  10.123 +    cls.add_constructor([param('ns3::MobilityModel&', 'arg0', is_const=True)])
  10.124      ## mobility-model.h: static ns3::TypeId ns3::MobilityModel::GetTypeId() [member function]
  10.125      cls.add_method('GetTypeId', 
  10.126                     'ns3::TypeId', 
  10.127 @@ -417,10 +430,11 @@
  10.128                     'ns3::Vector', 
  10.129                     [], 
  10.130                     is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
  10.131 -    cls.add_copy_constructor()
  10.132      return
  10.133  
  10.134  def register_Ns3RandomDirection2dMobilityModel_methods(root_module, cls):
  10.135 +    ## random-direction-2d-mobility-model.h: ns3::RandomDirection2dMobilityModel::RandomDirection2dMobilityModel(ns3::RandomDirection2dMobilityModel const & arg0) [copy constructor]
  10.136 +    cls.add_constructor([param('ns3::RandomDirection2dMobilityModel&', 'arg0', is_const=True)])
  10.137      ## random-direction-2d-mobility-model.h: static ns3::TypeId ns3::RandomDirection2dMobilityModel::GetTypeId() [member function]
  10.138      cls.add_method('GetTypeId', 
  10.139                     'ns3::TypeId', 
  10.140 @@ -448,10 +462,11 @@
  10.141                     'ns3::Vector', 
  10.142                     [], 
  10.143                     is_const=True, visibility='private', is_virtual=True)
  10.144 -    cls.add_copy_constructor()
  10.145      return
  10.146  
  10.147  def register_Ns3GridPositionAllocator_methods(root_module, cls):
  10.148 +    ## position-allocator.h: ns3::GridPositionAllocator::GridPositionAllocator(ns3::GridPositionAllocator const & arg0) [copy constructor]
  10.149 +    cls.add_constructor([param('ns3::GridPositionAllocator&', 'arg0', is_const=True)])
  10.150      ## position-allocator.h: static ns3::TypeId ns3::GridPositionAllocator::GetTypeId() [member function]
  10.151      cls.add_method('GetTypeId', 
  10.152                     'ns3::TypeId', 
  10.153 @@ -518,10 +533,11 @@
  10.154                     'ns3::Vector', 
  10.155                     [], 
  10.156                     is_const=True, is_virtual=True)
  10.157 -    cls.add_copy_constructor()
  10.158      return
  10.159  
  10.160  def register_Ns3RandomWaypointMobilityModel_methods(root_module, cls):
  10.161 +    ## random-waypoint-mobility-model.h: ns3::RandomWaypointMobilityModel::RandomWaypointMobilityModel(ns3::RandomWaypointMobilityModel const & arg0) [copy constructor]
  10.162 +    cls.add_constructor([param('ns3::RandomWaypointMobilityModel&', 'arg0', is_const=True)])
  10.163      ## random-waypoint-mobility-model.h: static ns3::TypeId ns3::RandomWaypointMobilityModel::GetTypeId() [member function]
  10.164      cls.add_method('GetTypeId', 
  10.165                     'ns3::TypeId', 
  10.166 @@ -544,10 +560,11 @@
  10.167                     'ns3::Vector', 
  10.168                     [], 
  10.169                     is_const=True, visibility='private', is_virtual=True)
  10.170 -    cls.add_copy_constructor()
  10.171      return
  10.172  
  10.173  def register_Ns3RandomWalk2dMobilityModel_methods(root_module, cls):
  10.174 +    ## random-walk-2d-mobility-model.h: ns3::RandomWalk2dMobilityModel::RandomWalk2dMobilityModel(ns3::RandomWalk2dMobilityModel const & arg0) [copy constructor]
  10.175 +    cls.add_constructor([param('ns3::RandomWalk2dMobilityModel&', 'arg0', is_const=True)])
  10.176      ## random-walk-2d-mobility-model.h: static ns3::TypeId ns3::RandomWalk2dMobilityModel::GetTypeId() [member function]
  10.177      cls.add_method('GetTypeId', 
  10.178                     'ns3::TypeId', 
  10.179 @@ -575,10 +592,11 @@
  10.180                     'ns3::Vector', 
  10.181                     [], 
  10.182                     is_const=True, visibility='private', is_virtual=True)
  10.183 -    cls.add_copy_constructor()
  10.184      return
  10.185  
  10.186  def register_Ns3StaticSpeedMobilityModel_methods(root_module, cls):
  10.187 +    ## static-speed-mobility-model.h: ns3::StaticSpeedMobilityModel::StaticSpeedMobilityModel(ns3::StaticSpeedMobilityModel const & arg0) [copy constructor]
  10.188 +    cls.add_constructor([param('ns3::StaticSpeedMobilityModel&', 'arg0', is_const=True)])
  10.189      ## static-speed-mobility-model.h: static ns3::TypeId ns3::StaticSpeedMobilityModel::GetTypeId() [member function]
  10.190      cls.add_method('GetTypeId', 
  10.191                     'ns3::TypeId', 
  10.192 @@ -605,10 +623,11 @@
  10.193                     'ns3::Vector', 
  10.194                     [], 
  10.195                     is_const=True, visibility='private', is_virtual=True)
  10.196 -    cls.add_copy_constructor()
  10.197      return
  10.198  
  10.199  def register_Ns3HierarchicalMobilityModel_methods(root_module, cls):
  10.200 +    ## hierarchical-mobility-model.h: ns3::HierarchicalMobilityModel::HierarchicalMobilityModel(ns3::HierarchicalMobilityModel const & arg0) [copy constructor]
  10.201 +    cls.add_constructor([param('ns3::HierarchicalMobilityModel&', 'arg0', is_const=True)])
  10.202      ## hierarchical-mobility-model.h: static ns3::TypeId ns3::HierarchicalMobilityModel::GetTypeId() [member function]
  10.203      cls.add_method('GetTypeId', 
  10.204                     'ns3::TypeId', 
  10.205 @@ -641,10 +660,11 @@
  10.206                     'ns3::Vector', 
  10.207                     [], 
  10.208                     is_const=True, visibility='private', is_virtual=True)
  10.209 -    cls.add_copy_constructor()
  10.210      return
  10.211  
  10.212  def register_Ns3StaticMobilityModel_methods(root_module, cls):
  10.213 +    ## static-mobility-model.h: ns3::StaticMobilityModel::StaticMobilityModel(ns3::StaticMobilityModel const & arg0) [copy constructor]
  10.214 +    cls.add_constructor([param('ns3::StaticMobilityModel&', 'arg0', is_const=True)])
  10.215      ## static-mobility-model.h: static ns3::TypeId ns3::StaticMobilityModel::GetTypeId() [member function]
  10.216      cls.add_method('GetTypeId', 
  10.217                     'ns3::TypeId', 
  10.218 @@ -667,7 +687,6 @@
  10.219                     'ns3::Vector', 
  10.220                     [], 
  10.221                     is_const=True, visibility='private', is_virtual=True)
  10.222 -    cls.add_copy_constructor()
  10.223      return
  10.224  
  10.225  def register_functions(root_module):
    11.1 --- a/bindings/python/ns3_module_node.py	Fri Aug 29 14:53:38 2008 +0100
    11.2 +++ b/bindings/python/ns3_module_node.py	Fri Aug 29 14:56:24 2008 +0100
    11.3 @@ -5,6 +5,8 @@
    11.4      
    11.5      ## ethernet-header.h: ns3::ethernet_header_t [enumeration]
    11.6      module.add_enum('ethernet_header_t', ['LENGTH', 'VLAN', 'QINQ'])
    11.7 +    ## ipv4-address.h: ns3::Ipv4Mask [class]
    11.8 +    module.add_class('Ipv4Mask')
    11.9      ## node-list.h: ns3::NodeList [class]
   11.10      module.add_class('NodeList')
   11.11      ## address.h: ns3::Address [class]
   11.12 @@ -37,8 +39,6 @@
   11.13      module.add_class('PacketSocketAddress')
   11.14      ## packet-socket-address.h: ns3::PacketSocketAddress [class]
   11.15      root_module['ns3::PacketSocketAddress'].implicitly_converts_to(root_module['ns3::Address'])
   11.16 -    ## ipv4-address.h: ns3::Ipv4Mask [class]
   11.17 -    module.add_class('Ipv4Mask')
   11.18      ## ipv4-address.h: ns3::Ipv4AddressValue [class]
   11.19      module.add_class('Ipv4AddressValue', parent=root_module['ns3::AttributeValue'])
   11.20      ## ipv4.h: ns3::Ipv4RoutingProtocol [class]
   11.21 @@ -147,6 +147,7 @@
   11.22      
   11.23  
   11.24  def register_methods(root_module):
   11.25 +    register_Ns3Ipv4Mask_methods(root_module, root_module['ns3::Ipv4Mask'])
   11.26      register_Ns3NodeList_methods(root_module, root_module['ns3::NodeList'])
   11.27      register_Ns3Address_methods(root_module, root_module['ns3::Address'])
   11.28      register_Ns3Ipv4AddressChecker_methods(root_module, root_module['ns3::Ipv4AddressChecker'])
   11.29 @@ -159,7 +160,6 @@
   11.30      register_Ns3Ipv4MulticastRoute_methods(root_module, root_module['ns3::Ipv4MulticastRoute'])
   11.31      register_Ns3AddressChecker_methods(root_module, root_module['ns3::AddressChecker'])
   11.32      register_Ns3PacketSocketAddress_methods(root_module, root_module['ns3::PacketSocketAddress'])
   11.33 -    register_Ns3Ipv4Mask_methods(root_module, root_module['ns3::Ipv4Mask'])
   11.34      register_Ns3Ipv4AddressValue_methods(root_module, root_module['ns3::Ipv4AddressValue'])
   11.35      register_Ns3Ipv4RoutingProtocol_methods(root_module, root_module['ns3::Ipv4RoutingProtocol'])
   11.36      register_Ns3Mac48AddressValue_methods(root_module, root_module['ns3::Mac48AddressValue'])
   11.37 @@ -191,7 +191,62 @@
   11.38      register_Ns3PacketSocketFactory_methods(root_module, root_module['ns3::PacketSocketFactory'])
   11.39      return
   11.40  
   11.41 +def register_Ns3Ipv4Mask_methods(root_module, cls):
   11.42 +    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(ns3::Ipv4Mask const & arg0) [copy constructor]
   11.43 +    cls.add_constructor([param('ns3::Ipv4Mask&', 'arg0', is_const=True)])
   11.44 +    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask() [constructor]
   11.45 +    cls.add_constructor([])
   11.46 +    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(uint32_t mask) [constructor]
   11.47 +    cls.add_constructor([param('uint32_t', 'mask')])
   11.48 +    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(char const * mask) [constructor]
   11.49 +    cls.add_constructor([param('char *', 'mask', transfer_ownership=False, is_const=True)])
   11.50 +    ## ipv4-address.h: uint32_t ns3::Ipv4Mask::Get() const [member function]
   11.51 +    cls.add_method('Get', 
   11.52 +                   'uint32_t', 
   11.53 +                   [], 
   11.54 +                   is_const=True)
   11.55 +    ## ipv4-address.h: uint32_t ns3::Ipv4Mask::GetInverse() const [member function]
   11.56 +    cls.add_method('GetInverse', 
   11.57 +                   'uint32_t', 
   11.58 +                   [], 
   11.59 +                   is_const=True)
   11.60 +    ## ipv4-address.h: static ns3::Ipv4Mask ns3::Ipv4Mask::GetLoopback() [member function]
   11.61 +    cls.add_method('GetLoopback', 
   11.62 +                   'ns3::Ipv4Mask', 
   11.63 +                   [], 
   11.64 +                   is_static=True)
   11.65 +    ## ipv4-address.h: static ns3::Ipv4Mask ns3::Ipv4Mask::GetZero() [member function]
   11.66 +    cls.add_method('GetZero', 
   11.67 +                   'ns3::Ipv4Mask', 
   11.68 +                   [], 
   11.69 +                   is_static=True)
   11.70 +    ## ipv4-address.h: bool ns3::Ipv4Mask::IsEqual(ns3::Ipv4Mask other) const [member function]
   11.71 +    cls.add_method('IsEqual', 
   11.72 +                   'bool', 
   11.73 +                   [param('ns3::Ipv4Mask', 'other')], 
   11.74 +                   is_const=True)
   11.75 +    ## ipv4-address.h: bool ns3::Ipv4Mask::IsMatch(ns3::Ipv4Address a, ns3::Ipv4Address b) const [member function]
   11.76 +    cls.add_method('IsMatch', 
   11.77 +                   'bool', 
   11.78 +                   [param('ns3::Ipv4Address', 'a'), param('ns3::Ipv4Address', 'b')], 
   11.79 +                   is_const=True)
   11.80 +    ## ipv4-address.h: void ns3::Ipv4Mask::Print(std::ostream & os) const [member function]
   11.81 +    cls.add_method('Print', 
   11.82 +                   'void', 
   11.83 +                   [param('std::ostream&', 'os')], 
   11.84 +                   is_const=True)
   11.85 +    ## ipv4-address.h: void ns3::Ipv4Mask::Set(uint32_t mask) [member function]
   11.86 +    cls.add_method('Set', 
   11.87 +                   'void', 
   11.88 +                   [param('uint32_t', 'mask')])
   11.89 +    cls.add_output_stream_operator()
   11.90 +    return
   11.91 +
   11.92  def register_Ns3NodeList_methods(root_module, cls):
   11.93 +    ## node-list.h: ns3::NodeList::NodeList(ns3::NodeList const & arg0) [copy constructor]
   11.94 +    cls.add_constructor([param('ns3::NodeList&', 'arg0', is_const=True)])
   11.95 +    ## node-list.h: ns3::NodeList::NodeList() [constructor]
   11.96 +    cls.add_constructor([])
   11.97      ## node-list.h: static uint32_t ns3::NodeList::Add(ns3::Ptr<ns3::Node> node) [member function]
   11.98      cls.add_method('Add', 
   11.99                     'uint32_t', 
  11.100 @@ -199,12 +254,12 @@
  11.101                     is_static=True)
  11.102      ## node-list.h: static __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Node>*,std::vector<ns3::Ptr<ns3::Node>, std::allocator<ns3::Ptr<ns3::Node> > > > ns3::NodeList::Begin() [member function]
  11.103      cls.add_method('Begin', 
  11.104 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node >, std::allocator< ns3::Ptr< ns3::Node > > > >', 
  11.105 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node > > >', 
  11.106                     [], 
  11.107                     is_static=True)
  11.108      ## node-list.h: static __gnu_cxx::__normal_iterator<const ns3::Ptr<ns3::Node>*,std::vector<ns3::Ptr<ns3::Node>, std::allocator<ns3::Ptr<ns3::Node> > > > ns3::NodeList::End() [member function]
  11.109      cls.add_method('End', 
  11.110 -                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node >, std::allocator< ns3::Ptr< ns3::Node > > > >', 
  11.111 +                   '__gnu_cxx::__normal_iterator< const ns3::Ptr< ns3::Node >, std::vector< ns3::Ptr< ns3::Node > > >', 
  11.112                     [], 
  11.113                     is_static=True)
  11.114      ## node-list.h: static ns3::Ptr<ns3::Node> ns3::NodeList::GetNode(uint32_t n) [member function]
  11.115 @@ -217,8 +272,6 @@
  11.116                     'uint32_t', 
  11.117                     [], 
  11.118                     is_static=True)
  11.119 -    cls.add_constructor([])
  11.120 -    cls.add_copy_constructor()
  11.121      return
  11.122  
  11.123  def register_Ns3Address_methods(root_module, cls):
  11.124 @@ -289,8 +342,10 @@
  11.125      return
  11.126  
  11.127  def register_Ns3Ipv4AddressChecker_methods(root_module, cls):
  11.128 +    ## ipv4-address.h: ns3::Ipv4AddressChecker::Ipv4AddressChecker(ns3::Ipv4AddressChecker const & arg0) [copy constructor]
  11.129 +    cls.add_constructor([param('ns3::Ipv4AddressChecker&', 'arg0', is_const=True)])
  11.130 +    ## ipv4-address.h: ns3::Ipv4AddressChecker::Ipv4AddressChecker() [constructor]
  11.131      cls.add_constructor([])
  11.132 -    cls.add_copy_constructor()
  11.133      return
  11.134  
  11.135  def register_Ns3Mac48Address_methods(root_module, cls):
  11.136 @@ -324,11 +379,26 @@
  11.137                     'ns3::Mac48Address', 
  11.138                     [], 
  11.139                     is_static=True)
  11.140 +    ## mac48-address.h: static ns3::Mac48Address ns3::Mac48Address::GetMulticast(ns3::Ipv4Address address) [member function]
  11.141 +    cls.add_method('GetMulticast', 
  11.142 +                   'ns3::Mac48Address', 
  11.143 +                   [param('ns3::Ipv4Address', 'address')], 
  11.144 +                   is_static=True)
  11.145 +    ## mac48-address.h: static ns3::Mac48Address ns3::Mac48Address::GetMulticastPrefix() [member function]
  11.146 +    cls.add_method('GetMulticastPrefix', 
  11.147 +                   'ns3::Mac48Address', 
  11.148 +                   [], 
  11.149 +                   is_static=True)
  11.150      ## mac48-address.h: bool ns3::Mac48Address::IsBroadcast() const [member function]
  11.151      cls.add_method('IsBroadcast', 
  11.152                     'bool', 
  11.153                     [], 
  11.154                     is_const=True)
  11.155 +    ## mac48-address.h: bool ns3::Mac48Address::IsGroup() const [member function]
  11.156 +    cls.add_method('IsGroup', 
  11.157 +                   'bool', 
  11.158 +                   [], 
  11.159 +                   is_const=True)
  11.160      ## mac48-address.h: static bool ns3::Mac48Address::IsMatchingType(ns3::Address const & address) [member function]
  11.161      cls.add_method('IsMatchingType', 
  11.162                     'bool', 
  11.163 @@ -377,6 +447,10 @@
  11.164      return
  11.165  
  11.166  def register_Ns3Ipv4AddressGenerator_methods(root_module, cls):
  11.167 +    ## ipv4-address-generator.h: ns3::Ipv4AddressGenerator::Ipv4AddressGenerator(ns3::Ipv4AddressGenerator const & arg0) [copy constructor]
  11.168 +    cls.add_constructor([param('ns3::Ipv4AddressGenerator&', 'arg0', is_const=True)])
  11.169 +    ## ipv4-address-generator.h: ns3::Ipv4AddressGenerator::Ipv4AddressGenerator() [constructor]
  11.170 +    cls.add_constructor([])
  11.171      ## ipv4-address-generator.h: static void ns3::Ipv4AddressGenerator::Init(ns3::Ipv4Address const net, ns3::Ipv4Mask const mask, ns3::Ipv4Address const addr="0.0.0.1") [member function]
  11.172      cls.add_method('Init', 
  11.173                     'void', 
  11.174 @@ -422,18 +496,20 @@
  11.175                     'void', 
  11.176                     [], 
  11.177                     is_static=True)
  11.178 -    cls.add_constructor([])
  11.179 -    cls.add_copy_constructor()
  11.180      return
  11.181  
  11.182  def register_Ns3Mac48AddressChecker_methods(root_module, cls):
  11.183 +    ## mac48-address.h: ns3::Mac48AddressChecker::Mac48AddressChecker(ns3::Mac48AddressChecker const & arg0) [copy constructor]
  11.184 +    cls.add_constructor([param('ns3::Mac48AddressChecker&', 'arg0', is_const=True)])
  11.185 +    ## mac48-address.h: ns3::Mac48AddressChecker::Mac48AddressChecker() [constructor]
  11.186      cls.add_constructor([])
  11.187 -    cls.add_copy_constructor()
  11.188      return
  11.189  
  11.190  def register_Ns3Ipv4MaskChecker_methods(root_module, cls):
  11.191 +    ## ipv4-address.h: ns3::Ipv4MaskChecker::Ipv4MaskChecker(ns3::Ipv4MaskChecker const & arg0) [copy constructor]
  11.192 +    cls.add_constructor([param('ns3::Ipv4MaskChecker&', 'arg0', is_const=True)])
  11.193 +    ## ipv4-address.h: ns3::Ipv4MaskChecker::Ipv4MaskChecker() [constructor]
  11.194      cls.add_constructor([])
  11.195 -    cls.add_copy_constructor()
  11.196      return
  11.197  
  11.198  def register_Ns3Ipv4Route_methods(root_module, cls):
  11.199 @@ -526,7 +602,7 @@
  11.200      ## ipv4-route.h: static ns3::Ipv4MulticastRoute ns3::Ipv4MulticastRoute::CreateMulticastRoute(ns3::Ipv4Address origin, ns3::Ipv4Address group, uint32_t inputInterface, std::vector<unsigned int, std::allocator<unsigned int> > outputInterfaces) [member function]
  11.201      cls.add_method('CreateMulticastRoute', 
  11.202                     'ns3::Ipv4MulticastRoute', 
  11.203 -                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int, std::allocator< unsigned int > >', 'outputInterfaces')], 
  11.204 +                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int >', 'outputInterfaces')], 
  11.205                     is_static=True)
  11.206      ## ipv4-route.h: ns3::Ipv4Address ns3::Ipv4MulticastRoute::GetGroup() const [member function]
  11.207      cls.add_method('GetGroup', 
  11.208 @@ -555,18 +631,22 @@
  11.209                     is_const=True)
  11.210      ## ipv4-route.h: std::vector<unsigned int, std::allocator<unsigned int> > ns3::Ipv4MulticastRoute::GetOutputInterfaces() const [member function]
  11.211      cls.add_method('GetOutputInterfaces', 
  11.212 -                   'std::vector< unsigned int, std::allocator< unsigned int > >', 
  11.213 +                   'std::vector< unsigned int >', 
  11.214                     [], 
  11.215                     is_const=True)
  11.216      cls.add_output_stream_operator()
  11.217      return
  11.218  
  11.219  def register_Ns3AddressChecker_methods(root_module, cls):
  11.220 +    ## address.h: ns3::AddressChecker::AddressChecker(ns3::AddressChecker const & arg0) [copy constructor]
  11.221 +    cls.add_constructor([param('ns3::AddressChecker&', 'arg0', is_const=True)])
  11.222 +    ## address.h: ns3::AddressChecker::AddressChecker() [constructor]
  11.223      cls.add_constructor([])
  11.224 -    cls.add_copy_constructor()
  11.225      return
  11.226  
  11.227  def register_Ns3PacketSocketAddress_methods(root_module, cls):
  11.228 +    ## packet-socket-address.h: ns3::PacketSocketAddress::PacketSocketAddress(ns3::PacketSocketAddress const & arg0) [copy constructor]
  11.229 +    cls.add_constructor([param('ns3::PacketSocketAddress&', 'arg0', is_const=True)])
  11.230      ## packet-socket-address.h: ns3::PacketSocketAddress::PacketSocketAddress() [constructor]
  11.231      cls.add_constructor([])
  11.232      ## packet-socket-address.h: void ns3::PacketSocketAddress::SetProtocol(uint16_t protocol) [member function]
  11.233 @@ -615,61 +695,11 @@
  11.234                     'bool', 
  11.235                     [param('ns3::Address&', 'address', is_const=True)], 
  11.236                     is_static=True)
  11.237 -    cls.add_copy_constructor()
  11.238 -    return
  11.239 -
  11.240 -def register_Ns3Ipv4Mask_methods(root_module, cls):
  11.241 -    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(ns3::Ipv4Mask const & arg0) [copy constructor]
  11.242 -    cls.add_constructor([param('ns3::Ipv4Mask&', 'arg0', is_const=True)])
  11.243 -    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask() [constructor]
  11.244 -    cls.add_constructor([])
  11.245 -    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(uint32_t mask) [constructor]
  11.246 -    cls.add_constructor([param('uint32_t', 'mask')])
  11.247 -    ## ipv4-address.h: ns3::Ipv4Mask::Ipv4Mask(char const * mask) [constructor]
  11.248 -    cls.add_constructor([param('char *', 'mask', transfer_ownership=False, is_const=True)])
  11.249 -    ## ipv4-address.h: uint32_t ns3::Ipv4Mask::Get() const [member function]
  11.250 -    cls.add_method('Get', 
  11.251 -                   'uint32_t', 
  11.252 -                   [], 
  11.253 -                   is_const=True)
  11.254 -    ## ipv4-address.h: uint32_t ns3::Ipv4Mask::GetInverse() const [member function]
  11.255 -    cls.add_method('GetInverse', 
  11.256 -                   'uint32_t', 
  11.257 -                   [], 
  11.258 -                   is_const=True)
  11.259 -    ## ipv4-address.h: static ns3::Ipv4Mask ns3::Ipv4Mask::GetLoopback() [member function]
  11.260 -    cls.add_method('GetLoopback', 
  11.261 -                   'ns3::Ipv4Mask', 
  11.262 -                   [], 
  11.263 -                   is_static=True)
  11.264 -    ## ipv4-address.h: static ns3::Ipv4Mask ns3::Ipv4Mask::GetZero() [member function]
  11.265 -    cls.add_method('GetZero', 
  11.266 -                   'ns3::Ipv4Mask', 
  11.267 -                   [], 
  11.268 -                   is_static=True)
  11.269 -    ## ipv4-address.h: bool ns3::Ipv4Mask::IsEqual(ns3::Ipv4Mask other) const [member function]
  11.270 -    cls.add_method('IsEqual', 
  11.271 -                   'bool', 
  11.272 -                   [param('ns3::Ipv4Mask', 'other')], 
  11.273 -                   is_const=True)
  11.274 -    ## ipv4-address.h: bool ns3::Ipv4Mask::IsMatch(ns3::Ipv4Address a, ns3::Ipv4Address b) const [member function]
  11.275 -    cls.add_method('IsMatch', 
  11.276 -                   'bool', 
  11.277 -                   [param('ns3::Ipv4Address', 'a'), param('ns3::Ipv4Address', 'b')], 
  11.278 -                   is_const=True)
  11.279 -    ## ipv4-address.h: void ns3::Ipv4Mask::Print(std::ostream & os) const [member function]
  11.280 -    cls.add_method('Print', 
  11.281 -                   'void', 
  11.282 -                   [param('std::ostream&', 'os')], 
  11.283 -                   is_const=True)
  11.284 -    ## ipv4-address.h: void ns3::Ipv4Mask::Set(uint32_t mask) [member function]
  11.285 -    cls.add_method('Set', 
  11.286 -                   'void', 
  11.287 -                   [param('uint32_t', 'mask')])
  11.288 -    cls.add_output_stream_operator()
  11.289      return
  11.290  
  11.291  def register_Ns3Ipv4AddressValue_methods(root_module, cls):
  11.292 +    ## ipv4-address.h: ns3::Ipv4AddressValue::Ipv4AddressValue(ns3::Ipv4AddressValue const & arg0) [copy constructor]
  11.293 +    cls.add_constructor([param('ns3::Ipv4AddressValue&', 'arg0', is_const=True)])
  11.294      ## ipv4-address.h: ns3::Ipv4AddressValue::Ipv4AddressValue() [constructor]
  11.295      cls.add_constructor([])
  11.296      ## ipv4-address.h: ns3::Ipv4AddressValue::Ipv4AddressValue(ns3::Ipv4Address const & value) [constructor]
  11.297 @@ -698,12 +728,15 @@
  11.298                     'bool', 
  11.299                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  11.300                     is_virtual=True)
  11.301 -    cls.add_copy_constructor()
  11.302      return
  11.303  
  11.304  def register_Ns3Ipv4RoutingProtocol_methods(root_module, cls):
  11.305      ## ipv4.h: ns3::Ipv4RoutingProtocol::IF_INDEX_ANY [variable]
  11.306      cls.add_static_attribute('IF_INDEX_ANY', retval('uint32_t', is_const=True), is_const=True)
  11.307 +    ## ipv4.h: ns3::Ipv4RoutingProtocol::Ipv4RoutingProtocol(ns3::Ipv4RoutingProtocol const & arg0) [copy constructor]
  11.308 +    cls.add_constructor([param('ns3::Ipv4RoutingProtocol&', 'arg0', is_const=True)])
  11.309 +    ## ipv4.h: ns3::Ipv4RoutingProtocol::Ipv4RoutingProtocol() [constructor]
  11.310 +    cls.add_constructor([])
  11.311      ## ipv4.h: bool ns3::Ipv4RoutingProtocol::RequestRoute(uint32_t ifIndex, ns3::Ipv4Header const & ipHeader, ns3::Ptr<ns3::Packet> packet, ns3::Callback<void,bool,const ns3::Ipv4Route&,ns3::Ptr<ns3::Packet>,const ns3::Ipv4Header&,ns3::empty,ns3::empty> routeReply) [member function]
  11.312      cls.add_method('RequestRoute', 
  11.313                     'bool', 
  11.314 @@ -714,11 +747,11 @@
  11.315                     'bool', 
  11.316                     [param('ns3::Ipv4Address', 'destination'), param('uint32_t&', 'ifIndex')], 
  11.317                     is_pure_virtual=True, is_virtual=True)
  11.318 -    cls.add_constructor([])
  11.319 -    cls.add_copy_constructor()
  11.320      return
  11.321  
  11.322  def register_Ns3Mac48AddressValue_methods(root_module, cls):
  11.323 +    ## mac48-address.h: ns3::Mac48AddressValue::Mac48AddressValue(ns3::Mac48AddressValue const & arg0) [copy constructor]
  11.324 +    cls.add_constructor([param('ns3::Mac48AddressValue&', 'arg0', is_const=True)])
  11.325      ## mac48-address.h: ns3::Mac48AddressValue::Mac48AddressValue() [constructor]
  11.326      cls.add_constructor([])
  11.327      ## mac48-address.h: ns3::Mac48AddressValue::Mac48AddressValue(ns3::Mac48Address const & value) [constructor]
  11.328 @@ -747,10 +780,11 @@
  11.329                     'bool', 
  11.330                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  11.331                     is_virtual=True)
  11.332 -    cls.add_copy_constructor()
  11.333      return
  11.334  
  11.335  def register_Ns3Ipv4MaskValue_methods(root_module, cls):
  11.336 +    ## ipv4-address.h: ns3::Ipv4MaskValue::Ipv4MaskValue(ns3::Ipv4MaskValue const & arg0) [copy constructor]
  11.337 +    cls.add_constructor([param('ns3::Ipv4MaskValue&', 'arg0', is_const=True)])
  11.338      ## ipv4-address.h: ns3::Ipv4MaskValue::Ipv4MaskValue() [constructor]
  11.339      cls.add_constructor([])
  11.340      ## ipv4-address.h: ns3::Ipv4MaskValue::Ipv4MaskValue(ns3::Ipv4Mask const & value) [constructor]
  11.341 @@ -779,10 +813,11 @@
  11.342                     'bool', 
  11.343                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  11.344                     is_virtual=True)
  11.345 -    cls.add_copy_constructor()
  11.346      return
  11.347  
  11.348  def register_Ns3SocketAddressTag_methods(root_module, cls):
  11.349 +    ## socket.h: ns3::SocketAddressTag::SocketAddressTag(ns3::SocketAddressTag const & arg0) [copy constructor]
  11.350 +    cls.add_constructor([param('ns3::SocketAddressTag&', 'arg0', is_const=True)])
  11.351      ## socket.h: ns3::SocketAddressTag::SocketAddressTag() [constructor]
  11.352      cls.add_constructor([])
  11.353      ## socket.h: void ns3::SocketAddressTag::SetAddress(ns3::Address addr) [member function]
  11.354 @@ -824,10 +859,11 @@
  11.355                     'void', 
  11.356                     [param('std::ostream&', 'os')], 
  11.357                     is_const=True, is_virtual=True)
  11.358 -    cls.add_copy_constructor()
  11.359      return
  11.360  
  11.361  def register_Ns3InetSocketAddress_methods(root_module, cls):
  11.362 +    ## inet-socket-address.h: ns3::InetSocketAddress::InetSocketAddress(ns3::InetSocketAddress const & arg0) [copy constructor]
  11.363 +    cls.add_constructor([param('ns3::InetSocketAddress&', 'arg0', is_const=True)])
  11.364      ## inet-socket-address.h: ns3::InetSocketAddress::InetSocketAddress(ns3::Ipv4Address ipv4, uint16_t port) [constructor]
  11.365      cls.add_constructor([param('ns3::Ipv4Address', 'ipv4'), param('uint16_t', 'port')])
  11.366      ## inet-socket-address.h: ns3::InetSocketAddress::InetSocketAddress(ns3::Ipv4Address ipv4) [constructor]
  11.367 @@ -866,7 +902,6 @@
  11.368                     'ns3::InetSocketAddress', 
  11.369                     [param('ns3::Address&', 'address', is_const=True)], 
  11.370                     is_static=True)
  11.371 -    cls.add_copy_constructor()
  11.372      return
  11.373  
  11.374  def register_Ns3Ipv4Address_methods(root_module, cls):
  11.375 @@ -970,6 +1005,8 @@
  11.376      return
  11.377  
  11.378  def register_Ns3Application_methods(root_module, cls):
  11.379 +    ## application.h: ns3::Application::Application(ns3::Application const & arg0) [copy constructor]
  11.380 +    cls.add_constructor([param('ns3::Application&', 'arg0', is_const=True)])
  11.381      ## application.h: static ns3::TypeId ns3::Application::GetTypeId() [member function]
  11.382      cls.add_method('GetTypeId', 
  11.383                     'ns3::TypeId', 
  11.384 @@ -1017,10 +1054,11 @@
  11.385                     'void', 
  11.386                     [], 
  11.387                     visibility='private', is_virtual=True)
  11.388 -    cls.add_copy_constructor()
  11.389      return
  11.390  
  11.391  def register_Ns3Queue_methods(root_module, cls):
  11.392 +    ## queue.h: ns3::Queue::Queue(ns3::Queue const & arg0) [copy constructor]
  11.393 +    cls.add_constructor([param('ns3::Queue&', 'arg0', is_const=True)])
  11.394      ## queue.h: static ns3::TypeId ns3::Queue::GetTypeId() [member function]
  11.395      cls.add_method('GetTypeId', 
  11.396                     'ns3::TypeId', 
  11.397 @@ -1104,10 +1142,11 @@
  11.398                     'ns3::Ptr< const ns3::Packet >', 
  11.399                     [], 
  11.400                     is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
  11.401 -    cls.add_copy_constructor()
  11.402      return
  11.403  
  11.404  def register_Ns3Socket_methods(root_module, cls):
  11.405 +    ## socket.h: ns3::Socket::Socket(ns3::Socket const & arg0) [copy constructor]
  11.406 +    cls.add_constructor([param('ns3::Socket&', 'arg0', is_const=True)])
  11.407      ## socket.h: ns3::Socket::Socket() [constructor]
  11.408      cls.add_constructor([])
  11.409      ## socket.h: static ns3::Ptr<ns3::Socket> ns3::Socket::CreateSocket(ns3::Ptr<ns3::Node> node, ns3::TypeId tid) [member function]
  11.410 @@ -1273,10 +1312,11 @@
  11.411                     'void', 
  11.412                     [], 
  11.413                     visibility='protected')
  11.414 -    cls.add_copy_constructor()
  11.415      return
  11.416  
  11.417  def register_Ns3Ipv4Header_methods(root_module, cls):
  11.418 +    ## ipv4-header.h: ns3::Ipv4Header::Ipv4Header(ns3::Ipv4Header const & arg0) [copy constructor]
  11.419 +    cls.add_constructor([param('ns3::Ipv4Header&', 'arg0', is_const=True)])
  11.420      ## ipv4-header.h: ns3::Ipv4Header::Ipv4Header() [constructor]
  11.421      cls.add_constructor([])
  11.422      ## ipv4-header.h: void ns3::Ipv4Header::EnableChecksum() [member function]
  11.423 @@ -1416,10 +1456,11 @@
  11.424                     'uint32_t', 
  11.425                     [param('ns3::Buffer::Iterator', 'start')], 
  11.426                     is_virtual=True)
  11.427 -    cls.add_copy_constructor()
  11.428      return
  11.429  
  11.430  def register_Ns3UdpSocket_methods(root_module, cls):
  11.431 +    ## udp-socket.h: ns3::UdpSocket::UdpSocket(ns3::UdpSocket const & arg0) [copy constructor]
  11.432 +    cls.add_constructor([param('ns3::UdpSocket&', 'arg0', is_const=True)])
  11.433      ## udp-socket.h: static ns3::TypeId ns3::UdpSocket::GetTypeId() [member function]
  11.434      cls.add_method('GetTypeId', 
  11.435                     'ns3::TypeId', 
  11.436 @@ -1457,10 +1498,13 @@
  11.437                     'uint32_t', 
  11.438                     [], 
  11.439                     is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
  11.440 -    cls.add_copy_constructor()
  11.441      return
  11.442  
  11.443  def register_Ns3NetDevice_methods(root_module, cls):
  11.444 +    ## net-device.h: ns3::NetDevice::NetDevice(ns3::NetDevice const & arg0) [copy constructor]
  11.445 +    cls.add_constructor([param('ns3::NetDevice&', 'arg0', is_const=True)])
  11.446 +    ## net-device.h: ns3::NetDevice::NetDevice() [constructor]
  11.447 +    cls.add_constructor([])
  11.448      ## net-device.h: static ns3::TypeId ns3::NetDevice::GetTypeId() [member function]
  11.449      cls.add_method('GetTypeId', 
  11.450                     'ns3::TypeId', 
  11.451 @@ -1571,26 +1615,26 @@
  11.452                     'bool', 
  11.453                     [], 
  11.454                     is_pure_virtual=True, is_const=True, is_virtual=True)
  11.455 -    ## net-device.h: void ns3::NetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  11.456 +    ## net-device.h: void ns3::NetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  11.457      cls.add_method('SetReceiveCallback', 
  11.458                     'void', 
  11.459 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  11.460 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  11.461                     is_pure_virtual=True, is_virtual=True)
  11.462 -    ## net-device.h: void ns3::NetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
  11.463 +    ## net-device.h: void ns3::NetDevice::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]
  11.464      cls.add_method('SetPromiscReceiveCallback', 
  11.465                     'void', 
  11.466 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  11.467 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  11.468                     is_pure_virtual=True, is_virtual=True)
  11.469      ## net-device.h: bool ns3::NetDevice::SupportsPromiscuous() const [member function]
  11.470      cls.add_method('SupportsPromiscuous', 
  11.471                     'bool', 
  11.472                     [], 
  11.473                     is_pure_virtual=True, is_const=True, is_virtual=True)
  11.474 -    cls.add_constructor([])
  11.475 -    cls.add_copy_constructor()
  11.476      return
  11.477  
  11.478  def register_Ns3DropTailQueue_methods(root_module, cls):
  11.479 +    ## drop-tail-queue.h: ns3::DropTailQueue::DropTailQueue(ns3::DropTailQueue const & arg0) [copy constructor]
  11.480 +    cls.add_constructor([param('ns3::DropTailQueue&', 'arg0', is_const=True)])
  11.481      ## drop-tail-queue.h: static ns3::TypeId ns3::DropTailQueue::GetTypeId() [member function]
  11.482      cls.add_method('GetTypeId', 
  11.483                     'ns3::TypeId', 
  11.484 @@ -1613,10 +1657,11 @@
  11.485                     'ns3::Ptr< const ns3::Packet >', 
  11.486                     [], 
  11.487                     is_const=True, visibility='private', is_virtual=True)
  11.488 -    cls.add_copy_constructor()
  11.489      return
  11.490  
  11.491  def register_Ns3AddressValue_methods(root_module, cls):
  11.492 +    ## address.h: ns3::AddressValue::AddressValue(ns3::AddressValue const & arg0) [copy constructor]
  11.493 +    cls.add_constructor([param('ns3::AddressValue&', 'arg0', is_const=True)])
  11.494      ## address.h: ns3::AddressValue::AddressValue() [constructor]
  11.495      cls.add_constructor([])
  11.496      ## address.h: ns3::AddressValue::AddressValue(ns3::Address const & value) [constructor]
  11.497 @@ -1645,10 +1690,11 @@
  11.498                     'bool', 
  11.499                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  11.500                     is_virtual=True)
  11.501 -    cls.add_copy_constructor()
  11.502      return
  11.503  
  11.504  def register_Ns3Node_methods(root_module, cls):
  11.505 +    ## node.h: ns3::Node::Node(ns3::Node const & arg0) [copy constructor]
  11.506 +    cls.add_constructor([param('ns3::Node&', 'arg0', is_const=True)])
  11.507      ## node.h: static ns3::TypeId ns3::Node::GetTypeId() [member function]
  11.508      cls.add_method('GetTypeId', 
  11.509                     'ns3::TypeId', 
  11.510 @@ -1696,14 +1742,14 @@
  11.511                     'uint32_t', 
  11.512                     [], 
  11.513                     is_const=True)
  11.514 -    ## node.h: void ns3::Node::RegisterProtocolHandler(ns3::Callback<void, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> handler, uint16_t protocolType, ns3::Ptr<ns3::NetDevice> device, bool promiscuous=false) [member function]
  11.515 +    ## node.h: void ns3::Node::RegisterProtocolHandler(ns3::Callback<void, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> handler, uint16_t protocolType, ns3::Ptr<ns3::NetDevice> device, bool promiscuous=false) [member function]
  11.516      cls.add_method('RegisterProtocolHandler', 
  11.517                     'void', 
  11.518 -                   [param('ns3::Callback< void, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'handler'), param('uint16_t', 'protocolType'), param('ns3::Ptr< ns3::NetDevice >', 'device'), param('bool', 'promiscuous', default_value='false')])
  11.519 -    ## node.h: void ns3::Node::UnregisterProtocolHandler(ns3::Callback<void, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> handler) [member function]
  11.520 +                   [param('ns3::Callback< void, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'handler'), param('uint16_t', 'protocolType'), param('ns3::Ptr< ns3::NetDevice >', 'device'), param('bool', 'promiscuous', default_value='false')])
  11.521 +    ## node.h: void ns3::Node::UnregisterProtocolHandler(ns3::Callback<void, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> handler) [member function]
  11.522      cls.add_method('UnregisterProtocolHandler', 
  11.523                     'void', 
  11.524 -                   [param('ns3::Callback< void, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'handler')])
  11.525 +                   [param('ns3::Callback< void, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'handler')])
  11.526      ## node.h: void ns3::Node::DoDispose() [member function]
  11.527      cls.add_method('DoDispose', 
  11.528                     'void', 
  11.529 @@ -1714,10 +1760,11 @@
  11.530                     'void', 
  11.531                     [param('ns3::Ptr< ns3::NetDevice >', 'device')], 
  11.532                     visibility='private', is_virtual=True)
  11.533 -    cls.add_copy_constructor()
  11.534      return
  11.535  
  11.536  def register_Ns3Channel_methods(root_module, cls):
  11.537 +    ## channel.h: ns3::Channel::Channel(ns3::Channel const & arg0) [copy constructor]
  11.538 +    cls.add_constructor([param('ns3::Channel&', 'arg0', is_const=True)])
  11.539      ## channel.h: static ns3::TypeId ns3::Channel::GetTypeId() [member function]
  11.540      cls.add_method('GetTypeId', 
  11.541                     'ns3::TypeId', 
  11.542 @@ -1745,10 +1792,11 @@
  11.543                     'ns3::Ptr< ns3::NetDevice >', 
  11.544                     [param('uint32_t', 'i')], 
  11.545                     is_pure_virtual=True, is_const=True, is_virtual=True)
  11.546 -    cls.add_copy_constructor()
  11.547      return
  11.548  
  11.549  def register_Ns3TcpSocket_methods(root_module, cls):
  11.550 +    ## tcp-socket.h: ns3::TcpSocket::TcpSocket(ns3::TcpSocket const & arg0) [copy constructor]
  11.551 +    cls.add_constructor([param('ns3::TcpSocket&', 'arg0', is_const=True)])
  11.552      ## tcp-socket.h: static ns3::TypeId ns3::TcpSocket::GetTypeId() [member function]
  11.553      cls.add_method('GetTypeId', 
  11.554                     'ns3::TypeId', 
  11.555 @@ -1856,10 +1904,11 @@
  11.556                     'uint32_t', 
  11.557                     [], 
  11.558                     is_pure_virtual=True, is_const=True, visibility='private', is_virtual=True)
  11.559 -    cls.add_copy_constructor()
  11.560      return
  11.561  
  11.562  def register_Ns3EthernetHeader_methods(root_module, cls):
  11.563 +    ## ethernet-header.h: ns3::EthernetHeader::EthernetHeader(ns3::EthernetHeader const & arg0) [copy constructor]
  11.564 +    cls.add_constructor([param('ns3::EthernetHeader&', 'arg0', is_const=True)])
  11.565      ## ethernet-header.h: ns3::EthernetHeader::EthernetHeader(bool hasPreamble) [constructor]
  11.566      cls.add_constructor([param('bool', 'hasPreamble')])
  11.567      ## ethernet-header.h: ns3::EthernetHeader::EthernetHeader() [constructor]
  11.568 @@ -1940,10 +1989,11 @@
  11.569                     'uint32_t', 
  11.570                     [param('ns3::Buffer::Iterator', 'start')], 
  11.571                     is_virtual=True)
  11.572 -    cls.add_copy_constructor()
  11.573      return
  11.574  
  11.575  def register_Ns3SocketIpTtlTag_methods(root_module, cls):
  11.576 +    ## socket.h: ns3::SocketIpTtlTag::SocketIpTtlTag(ns3::SocketIpTtlTag const & arg0) [copy constructor]
  11.577 +    cls.add_constructor([param('ns3::SocketIpTtlTag&', 'arg0', is_const=True)])
  11.578      ## socket.h: ns3::SocketIpTtlTag::SocketIpTtlTag() [constructor]
  11.579      cls.add_constructor([])
  11.580      ## socket.h: void ns3::SocketIpTtlTag::SetTtl(uint8_t ttl) [member function]
  11.581 @@ -1985,10 +2035,11 @@
  11.582                     'void', 
  11.583                     [param('std::ostream&', 'os')], 
  11.584                     is_const=True, is_virtual=True)
  11.585 -    cls.add_copy_constructor()
  11.586      return
  11.587  
  11.588  def register_Ns3Ipv4_methods(root_module, cls):
  11.589 +    ## ipv4.h: ns3::Ipv4::Ipv4(ns3::Ipv4 const & arg0) [copy constructor]
  11.590 +    cls.add_constructor([param('ns3::Ipv4&', 'arg0', is_const=True)])
  11.591      ## ipv4.h: static ns3::TypeId ns3::Ipv4::GetTypeId() [member function]
  11.592      cls.add_method('GetTypeId', 
  11.593                     'ns3::TypeId', 
  11.594 @@ -2044,7 +2095,7 @@
  11.595      ## ipv4.h: void ns3::Ipv4::AddMulticastRoute(ns3::Ipv4Address origin, ns3::Ipv4Address group, uint32_t inputInterface, std::vector<unsigned int, std::allocator<unsigned int> > outputInterfaces) [member function]
  11.596      cls.add_method('AddMulticastRoute', 
  11.597                     'void', 
  11.598 -                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int, std::allocator< unsigned int > >', 'outputInterfaces')], 
  11.599 +                   [param('ns3::Ipv4Address', 'origin'), param('ns3::Ipv4Address', 'group'), param('uint32_t', 'inputInterface'), param('std::vector< unsigned int >', 'outputInterfaces')], 
  11.600                     is_pure_virtual=True, is_virtual=True)
  11.601      ## ipv4.h: void ns3::Ipv4::RemoveMulticastRoute(ns3::Ipv4Address origin, ns3::Ipv4Address group, uint32_t inputInterface) [member function]
  11.602      cls.add_method('RemoveMulticastRoute', 
  11.603 @@ -2176,10 +2227,11 @@
  11.604                     'uint32_t', 
  11.605                     [param('ns3::Ipv4Address', 'addr'), param('ns3::Ipv4Mask', 'mask', default_value='ns3::Ipv4Mask(((const char*)"255.255.255.255"))')], 
  11.606                     is_virtual=True)
  11.607 -    cls.add_copy_constructor()
  11.608      return
  11.609  
  11.610  def register_Ns3SocketFactory_methods(root_module, cls):
  11.611 +    ## socket-factory.h: ns3::SocketFactory::SocketFactory(ns3::SocketFactory const & arg0) [copy constructor]
  11.612 +    cls.add_constructor([param('ns3::SocketFactory&', 'arg0', is_const=True)])
  11.613      ## socket-factory.h: static ns3::TypeId ns3::SocketFactory::GetTypeId() [member function]
  11.614      cls.add_method('GetTypeId', 
  11.615                     'ns3::TypeId', 
  11.616 @@ -2192,10 +2244,11 @@
  11.617                     'ns3::Ptr< ns3::Socket >', 
  11.618                     [], 
  11.619                     is_pure_virtual=True, is_virtual=True)
  11.620 -    cls.add_copy_constructor()
  11.621      return
  11.622  
  11.623  def register_Ns3EthernetTrailer_methods(root_module, cls):
  11.624 +    ## ethernet-trailer.h: ns3::EthernetTrailer::EthernetTrailer(ns3::EthernetTrailer const & arg0) [copy constructor]
  11.625 +    cls.add_constructor([param('ns3::EthernetTrailer&', 'arg0', is_const=True)])
  11.626      ## ethernet-trailer.h: ns3::EthernetTrailer::EthernetTrailer() [constructor]
  11.627      cls.add_constructor([])
  11.628      ## ethernet-trailer.h: static void ns3::EthernetTrailer::EnableFcs(bool enable) [member function]
  11.629 @@ -2255,10 +2308,11 @@
  11.630                     'uint32_t', 
  11.631                     [param('ns3::Buffer::Iterator', 'end')], 
  11.632                     is_virtual=True)
  11.633 -    cls.add_copy_constructor()
  11.634      return
  11.635  
  11.636  def register_Ns3SimpleChannel_methods(root_module, cls):
  11.637 +    ## simple-channel.h: ns3::SimpleChannel::SimpleChannel(ns3::SimpleChannel const & arg0) [copy constructor]
  11.638 +    cls.add_constructor([param('ns3::SimpleChannel&', 'arg0', is_const=True)])
  11.639      ## simple-channel.h: static ns3::TypeId ns3::SimpleChannel::GetTypeId() [member function]
  11.640      cls.add_method('GetTypeId', 
  11.641                     'ns3::TypeId', 
  11.642 @@ -2284,10 +2338,11 @@
  11.643                     'ns3::Ptr< ns3::NetDevice >', 
  11.644                     [param('uint32_t', 'i')], 
  11.645                     is_const=True, is_virtual=True)
  11.646 -    cls.add_copy_constructor()
  11.647      return
  11.648  
  11.649  def register_Ns3LlcSnapHeader_methods(root_module, cls):
  11.650 +    ## llc-snap-header.h: ns3::LlcSnapHeader::LlcSnapHeader(ns3::LlcSnapHeader const & arg0) [copy constructor]
  11.651 +    cls.add_constructor([param('ns3::LlcSnapHeader&', 'arg0', is_const=True)])
  11.652      ## llc-snap-header.h: ns3::LlcSnapHeader::LlcSnapHeader() [constructor]
  11.653      cls.add_constructor([])
  11.654      ## llc-snap-header.h: void ns3::LlcSnapHeader::SetType(uint16_t type) [member function]
  11.655 @@ -2328,20 +2383,23 @@
  11.656                     'uint32_t', 
  11.657                     [param('ns3::Buffer::Iterator', 'start')], 
  11.658                     is_virtual=True)
  11.659 -    cls.add_copy_constructor()
  11.660      return
  11.661  
  11.662  def register_Ns3UdpSocketFactory_methods(root_module, cls):
  11.663 +    ## udp-socket-factory.h: ns3::UdpSocketFactory::UdpSocketFactory(ns3::UdpSocketFactory const & arg0) [copy constructor]
  11.664 +    cls.add_constructor([param('ns3::UdpSocketFactory&', 'arg0', is_const=True)])
  11.665 +    ## udp-socket-factory.h: ns3::UdpSocketFactory::UdpSocketFactory() [constructor]
  11.666 +    cls.add_constructor([])
  11.667      ## udp-socket-factory.h: static ns3::TypeId ns3::UdpSocketFactory::GetTypeId() [member function]
  11.668      cls.add_method('GetTypeId', 
  11.669                     'ns3::TypeId', 
  11.670                     [], 
  11.671                     is_static=True)
  11.672 -    cls.add_constructor([])
  11.673 -    cls.add_copy_constructor()
  11.674      return
  11.675  
  11.676  def register_Ns3SimpleNetDevice_methods(root_module, cls):
  11.677 +    ## simple-net-device.h: ns3::SimpleNetDevice::SimpleNetDevice(ns3::SimpleNetDevice const & arg0) [copy constructor]
  11.678 +    cls.add_constructor([param('ns3::SimpleNetDevice&', 'arg0', is_const=True)])
  11.679      ## simple-net-device.h: static ns3::TypeId ns3::SimpleNetDevice::GetTypeId() [member function]
  11.680      cls.add_method('GetTypeId', 
  11.681                     'ns3::TypeId', 
  11.682 @@ -2466,15 +2524,15 @@
  11.683                     'bool', 
  11.684                     [], 
  11.685                     is_const=True, is_virtual=True)
  11.686 -    ## simple-net-device.h: void ns3::SimpleNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  11.687 +    ## simple-net-device.h: void ns3::SimpleNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  11.688      cls.add_method('SetReceiveCallback', 
  11.689                     'void', 
  11.690 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  11.691 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  11.692                     is_virtual=True)
  11.693 -    ## simple-net-device.h: void ns3::SimpleNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
  11.694 +    ## 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]
  11.695      cls.add_method('SetPromiscReceiveCallback', 
  11.696                     'void', 
  11.697 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  11.698 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  11.699                     is_virtual=True)
  11.700      ## simple-net-device.h: bool ns3::SimpleNetDevice::SupportsPromiscuous() const [member function]
  11.701      cls.add_method('SupportsPromiscuous', 
  11.702 @@ -2486,20 +2544,23 @@
  11.703                     'void', 
  11.704                     [], 
  11.705                     visibility='protected', is_virtual=True)
  11.706 -    cls.add_copy_constructor()
  11.707      return
  11.708  
  11.709  def register_Ns3TcpSocketFactory_methods(root_module, cls):
  11.710 +    ## tcp-socket-factory.h: ns3::TcpSocketFactory::TcpSocketFactory(ns3::TcpSocketFactory const & arg0) [copy constructor]
  11.711 +    cls.add_constructor([param('ns3::TcpSocketFactory&', 'arg0', is_const=True)])
  11.712 +    ## tcp-socket-factory.h: ns3::TcpSocketFactory::TcpSocketFactory() [constructor]
  11.713 +    cls.add_constructor([])
  11.714      ## tcp-socket-factory.h: static ns3::TypeId ns3::TcpSocketFactory::GetTypeId() [member function]
  11.715      cls.add_method('GetTypeId', 
  11.716                     'ns3::TypeId', 
  11.717                     [], 
  11.718                     is_static=True)
  11.719 -    cls.add_constructor([])
  11.720 -    cls.add_copy_constructor()
  11.721      return
  11.722  
  11.723  def register_Ns3PacketSocketFactory_methods(root_module, cls):
  11.724 +    ## packet-socket-factory.h: ns3::PacketSocketFactory::PacketSocketFactory(ns3::PacketSocketFactory const & arg0) [copy constructor]
  11.725 +    cls.add_constructor([param('ns3::PacketSocketFactory&', 'arg0', is_const=True)])
  11.726      ## packet-socket-factory.h: static ns3::TypeId ns3::PacketSocketFactory::GetTypeId() [member function]
  11.727      cls.add_method('GetTypeId', 
  11.728                     'ns3::TypeId', 
  11.729 @@ -2512,7 +2573,6 @@
  11.730                     'ns3::Ptr< ns3::Socket >', 
  11.731                     [], 
  11.732                     is_virtual=True)
  11.733 -    cls.add_copy_constructor()
  11.734      return
  11.735  
  11.736  def register_functions(root_module):
    12.1 --- a/bindings/python/ns3_module_olsr.py	Fri Aug 29 14:53:38 2008 +0100
    12.2 +++ b/bindings/python/ns3_module_olsr.py	Fri Aug 29 14:56:24 2008 +0100
    12.3 @@ -205,6 +205,8 @@
    12.4      return
    12.5  
    12.6  def register_Ns3OlsrMessageHeaderMid_methods(root_module, cls):
    12.7 +    ## olsr-header.h: ns3::olsr::MessageHeader::Mid::Mid() [constructor]
    12.8 +    cls.add_constructor([])
    12.9      ## olsr-header.h: ns3::olsr::MessageHeader::Mid::Mid(ns3::olsr::MessageHeader::Mid const & arg0) [copy constructor]
   12.10      cls.add_constructor([param('ns3::olsr::MessageHeader::Mid&', 'arg0', is_const=True)])
   12.11      ## olsr-header.h: uint32_t ns3::olsr::MessageHeader::Mid::Deserialize(ns3::Buffer::Iterator start, uint32_t messageSize) [member function]
   12.12 @@ -227,10 +229,12 @@
   12.13                     [param('ns3::Buffer::Iterator', 'start')], 
   12.14                     is_const=True)
   12.15      ## olsr-header.h: ns3::olsr::MessageHeader::Mid::interfaceAddresses [variable]
   12.16 -    cls.add_instance_attribute('interfaceAddresses', 'std::vector< ns3::Ipv4Address, std::allocator< ns3::Ipv4Address > >', is_const=False)
   12.17 +    cls.add_instance_attribute('interfaceAddresses', 'std::vector< ns3::Ipv4Address >', is_const=False)
   12.18      return
   12.19  
   12.20  def register_Ns3OlsrMessageHeaderHello_methods(root_module, cls):
   12.21 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hello::Hello() [constructor]
   12.22 +    cls.add_constructor([])
   12.23      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::Hello(ns3::olsr::MessageHeader::Hello const & arg0) [copy constructor]
   12.24      cls.add_constructor([param('ns3::olsr::MessageHeader::Hello&', 'arg0', is_const=True)])
   12.25      ## olsr-header.h: uint32_t ns3::olsr::MessageHeader::Hello::Deserialize(ns3::Buffer::Iterator start, uint32_t messageSize) [member function]
   12.26 @@ -264,7 +268,7 @@
   12.27      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::hTime [variable]
   12.28      cls.add_instance_attribute('hTime', 'uint8_t', is_const=False)
   12.29      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::linkMessages [variable]
   12.30 -    cls.add_instance_attribute('linkMessages', 'std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage, std::allocator< ns3::olsr::MessageHeader::Hello::LinkMessage > >', is_const=False)
   12.31 +    cls.add_instance_attribute('linkMessages', 'std::vector< ns3::olsr::MessageHeader::Hello::LinkMessage >', is_const=False)
   12.32      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::willingness [variable]
   12.33      cls.add_instance_attribute('willingness', 'uint8_t', is_const=False)
   12.34      return
   12.35 @@ -273,12 +277,16 @@
   12.36      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::LinkMessage::linkCode [variable]
   12.37      cls.add_instance_attribute('linkCode', 'uint8_t', is_const=False)
   12.38      ## olsr-header.h: ns3::olsr::MessageHeader::Hello::LinkMessage::neighborInterfaceAddresses [variable]
   12.39 -    cls.add_instance_attribute('neighborInterfaceAddresses', 'std::vector< ns3::Ipv4Address, std::allocator< ns3::Ipv4Address > >', is_const=False)
   12.40 +    cls.add_instance_attribute('neighborInterfaceAddresses', 'std::vector< ns3::Ipv4Address >', is_const=False)
   12.41 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hello::LinkMessage::LinkMessage(ns3::olsr::MessageHeader::Hello::LinkMessage const & arg0) [copy constructor]
   12.42 +    cls.add_constructor([param('ns3::olsr::MessageHeader::Hello::LinkMessage&', 'arg0', is_const=True)])
   12.43 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hello::LinkMessage::LinkMessage() [constructor]
   12.44      cls.add_constructor([])
   12.45 -    cls.add_copy_constructor()
   12.46      return
   12.47  
   12.48  def register_Ns3OlsrMessageHeaderTc_methods(root_module, cls):
   12.49 +    ## olsr-header.h: ns3::olsr::MessageHeader::Tc::Tc() [constructor]
   12.50 +    cls.add_constructor([])
   12.51      ## olsr-header.h: ns3::olsr::MessageHeader::Tc::Tc(ns3::olsr::MessageHeader::Tc const & arg0) [copy constructor]
   12.52      cls.add_constructor([param('ns3::olsr::MessageHeader::Tc&', 'arg0', is_const=True)])
   12.53      ## olsr-header.h: uint32_t ns3::olsr::MessageHeader::Tc::Deserialize(ns3::Buffer::Iterator start, uint32_t messageSize) [member function]
   12.54 @@ -303,10 +311,12 @@
   12.55      ## olsr-header.h: ns3::olsr::MessageHeader::Tc::ansn [variable]
   12.56      cls.add_instance_attribute('ansn', 'uint16_t', is_const=False)
   12.57      ## olsr-header.h: ns3::olsr::MessageHeader::Tc::neighborAddresses [variable]
   12.58 -    cls.add_instance_attribute('neighborAddresses', 'std::vector< ns3::Ipv4Address, std::allocator< ns3::Ipv4Address > >', is_const=False)
   12.59 +    cls.add_instance_attribute('neighborAddresses', 'std::vector< ns3::Ipv4Address >', is_const=False)
   12.60      return
   12.61  
   12.62  def register_Ns3OlsrMessageHeaderHna_methods(root_module, cls):
   12.63 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hna::Hna() [constructor]
   12.64 +    cls.add_constructor([])
   12.65      ## olsr-header.h: ns3::olsr::MessageHeader::Hna::Hna(ns3::olsr::MessageHeader::Hna const & arg0) [copy constructor]
   12.66      cls.add_constructor([param('ns3::olsr::MessageHeader::Hna&', 'arg0', is_const=True)])
   12.67      ## olsr-header.h: uint32_t ns3::olsr::MessageHeader::Hna::Deserialize(ns3::Buffer::Iterator start, uint32_t messageSize) [member function]
   12.68 @@ -329,7 +339,7 @@
   12.69                     [param('ns3::Buffer::Iterator', 'start')], 
   12.70                     is_const=True)
   12.71      ## olsr-header.h: ns3::olsr::MessageHeader::Hna::associations [variable]
   12.72 -    cls.add_instance_attribute('associations', 'std::vector< ns3::olsr::MessageHeader::Hna::Association, std::allocator< ns3::olsr::MessageHeader::Hna::Association > >', is_const=False)
   12.73 +    cls.add_instance_attribute('associations', 'std::vector< ns3::olsr::MessageHeader::Hna::Association >', is_const=False)
   12.74      return
   12.75  
   12.76  def register_Ns3OlsrMessageHeaderHnaAssociation_methods(root_module, cls):
   12.77 @@ -337,11 +347,17 @@
   12.78      cls.add_instance_attribute('address', 'ns3::Ipv4Address', is_const=False)
   12.79      ## olsr-header.h: ns3::olsr::MessageHeader::Hna::Association::mask [variable]
   12.80      cls.add_instance_attribute('mask', 'ns3::Ipv4Mask', is_const=False)
   12.81 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hna::Association::Association(ns3::olsr::MessageHeader::Hna::Association const & arg0) [copy constructor]
   12.82 +    cls.add_constructor([param('ns3::olsr::MessageHeader::Hna::Association&', 'arg0', is_const=True)])
   12.83 +    ## olsr-header.h: ns3::olsr::MessageHeader::Hna::Association::Association() [constructor]
   12.84      cls.add_constructor([])
   12.85 -    cls.add_copy_constructor()
   12.86      return
   12.87  
   12.88  def register_Ns3OlsrAgent_methods(root_module, cls):
   12.89 +    ## olsr-agent.h: ns3::olsr::Agent::Agent(ns3::olsr::Agent const & arg0) [copy constructor]
   12.90 +    cls.add_constructor([param('ns3::olsr::Agent&', 'arg0', is_const=True)])
   12.91 +    ## olsr-agent.h: ns3::olsr::Agent::Agent() [constructor]
   12.92 +    cls.add_constructor([])
   12.93      ## olsr-agent.h: static ns3::TypeId ns3::olsr::Agent::GetTypeId() [member function]
   12.94      cls.add_method('GetTypeId', 
   12.95                     'ns3::TypeId', 
   12.96 @@ -362,8 +378,6 @@
   12.97                     'void', 
   12.98                     [], 
   12.99                     is_pure_virtual=True, is_virtual=True)
  12.100 -    cls.add_constructor([])
  12.101 -    cls.add_copy_constructor()
  12.102      return
  12.103  
  12.104  def register_Ns3OlsrPacketHeader_methods(root_module, cls):
    13.1 --- a/bindings/python/ns3_module_onoff.py	Fri Aug 29 14:53:38 2008 +0100
    13.2 +++ b/bindings/python/ns3_module_onoff.py	Fri Aug 29 14:56:24 2008 +0100
    13.3 @@ -51,6 +51,8 @@
    13.4      return
    13.5  
    13.6  def register_Ns3OnOffApplication_methods(root_module, cls):
    13.7 +    ## onoff-application.h: ns3::OnOffApplication::OnOffApplication(ns3::OnOffApplication const & arg0) [copy constructor]
    13.8 +    cls.add_constructor([param('ns3::OnOffApplication&', 'arg0', is_const=True)])
    13.9      ## onoff-application.h: static ns3::TypeId ns3::OnOffApplication::GetTypeId() [member function]
   13.10      cls.add_method('GetTypeId', 
   13.11                     'ns3::TypeId', 
   13.12 @@ -77,7 +79,6 @@
   13.13                     'void', 
   13.14                     [], 
   13.15                     visibility='private', is_virtual=True)
   13.16 -    cls.add_copy_constructor()
   13.17      return
   13.18  
   13.19  def register_functions(root_module):
    14.1 --- a/bindings/python/ns3_module_packet_sink.py	Fri Aug 29 14:53:38 2008 +0100
    14.2 +++ b/bindings/python/ns3_module_packet_sink.py	Fri Aug 29 14:56:24 2008 +0100
    14.3 @@ -51,6 +51,8 @@
    14.4      return
    14.5  
    14.6  def register_Ns3PacketSink_methods(root_module, cls):
    14.7 +    ## packet-sink.h: ns3::PacketSink::PacketSink(ns3::PacketSink const & arg0) [copy constructor]
    14.8 +    cls.add_constructor([param('ns3::PacketSink&', 'arg0', is_const=True)])
    14.9      ## packet-sink.h: static ns3::TypeId ns3::PacketSink::GetTypeId() [member function]
   14.10      cls.add_method('GetTypeId', 
   14.11                     'ns3::TypeId', 
   14.12 @@ -73,7 +75,6 @@
   14.13                     'void', 
   14.14                     [], 
   14.15                     visibility='private', is_virtual=True)
   14.16 -    cls.add_copy_constructor()
   14.17      return
   14.18  
   14.19  def register_functions(root_module):
    15.1 --- a/bindings/python/ns3_module_point_to_point.py	Fri Aug 29 14:53:38 2008 +0100
    15.2 +++ b/bindings/python/ns3_module_point_to_point.py	Fri Aug 29 14:56:24 2008 +0100
    15.3 @@ -54,6 +54,8 @@
    15.4      return
    15.5  
    15.6  def register_Ns3PointToPointChannel_methods(root_module, cls):
    15.7 +    ## point-to-point-channel.h: ns3::PointToPointChannel::PointToPointChannel(ns3::PointToPointChannel const & arg0) [copy constructor]
    15.8 +    cls.add_constructor([param('ns3::PointToPointChannel&', 'arg0', is_const=True)])
    15.9      ## point-to-point-channel.h: static ns3::TypeId ns3::PointToPointChannel::GetTypeId() [member function]
   15.10      cls.add_method('GetTypeId', 
   15.11                     'ns3::TypeId', 
   15.12 @@ -84,10 +86,11 @@
   15.13                     'ns3::Ptr< ns3::NetDevice >', 
   15.14                     [param('uint32_t', 'i')], 
   15.15                     is_const=True, is_virtual=True)
   15.16 -    cls.add_copy_constructor()
   15.17      return
   15.18  
   15.19  def register_Ns3PointToPointNetDevice_methods(root_module, cls):
   15.20 +    ## point-to-point-net-device.h: ns3::PointToPointNetDevice::PointToPointNetDevice(ns3::PointToPointNetDevice const & arg0) [copy constructor]
   15.21 +    cls.add_constructor([param('ns3::PointToPointNetDevice&', 'arg0', is_const=True)])
   15.22      ## point-to-point-net-device.h: static ns3::TypeId ns3::PointToPointNetDevice::GetTypeId() [member function]
   15.23      cls.add_method('GetTypeId', 
   15.24                     'ns3::TypeId', 
   15.25 @@ -228,15 +231,15 @@
   15.26                     'bool', 
   15.27                     [], 
   15.28                     is_const=True, is_virtual=True)
   15.29 -    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
   15.30 +    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
   15.31      cls.add_method('SetReceiveCallback', 
   15.32                     'void', 
   15.33 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
   15.34 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
   15.35                     is_virtual=True)
   15.36 -    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
   15.37 +    ## 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]
   15.38      cls.add_method('SetPromiscReceiveCallback', 
   15.39                     'void', 
   15.40 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
   15.41 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
   15.42                     is_virtual=True)
   15.43      ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::SupportsPromiscuous() const [member function]
   15.44      cls.add_method('SupportsPromiscuous', 
   15.45 @@ -248,7 +251,6 @@
   15.46                     'void', 
   15.47                     [], 
   15.48                     visibility='private', is_virtual=True)
   15.49 -    cls.add_copy_constructor()
   15.50      return
   15.51  
   15.52  def register_functions(root_module):
    16.1 --- a/bindings/python/ns3_module_simulator.py	Fri Aug 29 14:53:38 2008 +0100
    16.2 +++ b/bindings/python/ns3_module_simulator.py	Fri Aug 29 14:56:24 2008 +0100
    16.3 @@ -19,10 +19,14 @@
    16.4      module.add_class('Watchdog')
    16.5      ## simulator.h: ns3::Simulator [class]
    16.6      module.add_class('Simulator', is_singleton=True)
    16.7 +    ## event-impl.h: ns3::EventLock [class]
    16.8 +    module.add_class('EventLock', allow_subclassing=True)
    16.9      ## event-id.h: ns3::EventId [class]
   16.10      module.add_class('EventId')
   16.11      ## event-impl.h: ns3::EventImpl [class]
   16.12      module.add_class('EventImpl', allow_subclassing=True)
   16.13 +    ## realtime-simulator-impl.h: ns3::RealtimeEventLock [class]
   16.14 +    module.add_class('RealtimeEventLock', parent=root_module['ns3::EventLock'])
   16.15      ## high-precision-128.h: ns3::HighPrecision [class]
   16.16      module.add_class('HighPrecision')
   16.17      ## nstime.h: ns3::TimeChecker [class]
   16.18 @@ -35,14 +39,22 @@
   16.19      module.add_class('TimeValue', parent=root_module['ns3::AttributeValue'])
   16.20      ## simulator-impl.h: ns3::SimulatorImpl [class]
   16.21      module.add_class('SimulatorImpl', parent=root_module['ns3::Object'])
   16.22 +    ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl [class]
   16.23 +    module.add_class('RealtimeSimulatorImpl', parent=root_module['ns3::SimulatorImpl'])
   16.24 +    ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl::SynchronizationMode [enumeration]
   16.25 +    module.add_enum('SynchronizationMode', ['SYNC_BEST_EFFORT', 'SYNC_HARD_LIMIT'], outer_class=root_module['ns3::RealtimeSimulatorImpl'])
   16.26      ## default-simulator-impl.h: ns3::DefaultSimulatorImpl [class]
   16.27      module.add_class('DefaultSimulatorImpl', parent=root_module['ns3::SimulatorImpl'])
   16.28 +    ## synchronizer.h: ns3::Synchronizer [class]
   16.29 +    module.add_class('Synchronizer', parent=root_module['ns3::Object'])
   16.30      ## heap-scheduler.h: ns3::HeapScheduler [class]
   16.31      module.add_class('HeapScheduler', parent=root_module['ns3::Scheduler'])
   16.32      ## list-scheduler.h: ns3::ListScheduler [class]
   16.33      module.add_class('ListScheduler', parent=root_module['ns3::Scheduler'])
   16.34      ## map-scheduler.h: ns3::MapScheduler [class]
   16.35      module.add_class('MapScheduler', parent=root_module['ns3::Scheduler'])
   16.36 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer [class]
   16.37 +    module.add_class('WallClockSynchronizer', parent=root_module['ns3::Synchronizer'])
   16.38      
   16.39      ## Register a nested module for the namespace internal
   16.40      
   16.41 @@ -93,21 +105,28 @@
   16.42      register_Ns3Scalar_methods(root_module, root_module['ns3::Scalar'])
   16.43      register_Ns3Watchdog_methods(root_module, root_module['ns3::Watchdog'])
   16.44      register_Ns3Simulator_methods(root_module, root_module['ns3::Simulator'])
   16.45 +    register_Ns3EventLock_methods(root_module, root_module['ns3::EventLock'])
   16.46      register_Ns3EventId_methods(root_module, root_module['ns3::EventId'])
   16.47      register_Ns3EventImpl_methods(root_module, root_module['ns3::EventImpl'])
   16.48 +    register_Ns3RealtimeEventLock_methods(root_module, root_module['ns3::RealtimeEventLock'])
   16.49      register_Ns3HighPrecision_methods(root_module, root_module['ns3::HighPrecision'])
   16.50      register_Ns3TimeChecker_methods(root_module, root_module['ns3::TimeChecker'])
   16.51      register_Ns3Scheduler_methods(root_module, root_module['ns3::Scheduler'])
   16.52      register_Ns3SchedulerEventKey_methods(root_module, root_module['ns3::Scheduler::EventKey'])
   16.53      register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue'])
   16.54      register_Ns3SimulatorImpl_methods(root_module, root_module['ns3::SimulatorImpl'])
   16.55 +    register_Ns3RealtimeSimulatorImpl_methods(root_module, root_module['ns3::RealtimeSimulatorImpl'])
   16.56      register_Ns3DefaultSimulatorImpl_methods(root_module, root_module['ns3::DefaultSimulatorImpl'])
   16.57 +    register_Ns3Synchronizer_methods(root_module, root_module['ns3::Synchronizer'])
   16.58      register_Ns3HeapScheduler_methods(root_module, root_module['ns3::HeapScheduler'])
   16.59      register_Ns3ListScheduler_methods(root_module, root_module['ns3::ListScheduler'])
   16.60      register_Ns3MapScheduler_methods(root_module, root_module['ns3::MapScheduler'])
   16.61 +    register_Ns3WallClockSynchronizer_methods(root_module, root_module['ns3::WallClockSynchronizer'])
   16.62      return
   16.63  
   16.64  def register_Ns3Timer_methods(root_module, cls):
   16.65 +    ## timer.h: ns3::Timer::Timer(ns3::Timer const & arg0) [copy constructor]
   16.66 +    cls.add_constructor([param('ns3::Timer&', 'arg0', is_const=True)])
   16.67      ## timer.h: ns3::Timer::Timer() [constructor]
   16.68      cls.add_constructor([])
   16.69      ## timer.h: ns3::Timer::Timer(ns3::Timer::DestroyPolicy destroyPolicy) [constructor]
   16.70 @@ -170,10 +189,13 @@
   16.71      cls.add_method('Resume', 
   16.72                     'void', 
   16.73                     [])
   16.74 -    cls.add_copy_constructor()
   16.75      return
   16.76  
   16.77  def register_Ns3TimerImpl_methods(root_module, cls):
   16.78 +    ## timer-impl.h: ns3::TimerImpl::TimerImpl(ns3::TimerImpl const & arg0) [copy constructor]
   16.79 +    cls.add_constructor([param('ns3::TimerImpl&', 'arg0', is_const=True)])
   16.80 +    ## timer-impl.h: ns3::TimerImpl::TimerImpl() [constructor]
   16.81 +    cls.add_constructor([])
   16.82      ## timer-impl.h: ns3::EventId ns3::TimerImpl::Schedule(ns3::Time const & delay) [member function]
   16.83      cls.add_method('Schedule', 
   16.84                     'ns3::EventId', 
   16.85 @@ -184,8 +206,6 @@
   16.86                     'void', 
   16.87                     [], 
   16.88                     is_pure_virtual=True, is_virtual=True)
   16.89 -    cls.add_constructor([])
   16.90 -    cls.add_copy_constructor()
   16.91      return
   16.92  
   16.93  def register_Ns3Time_methods(root_module, cls):
   16.94 @@ -325,16 +345,19 @@
   16.95      return
   16.96  
   16.97  def register_Ns3Watchdog_methods(root_module, cls):
   16.98 +    ## watchdog.h: ns3::Watchdog::Watchdog(ns3::Watchdog const & arg0) [copy constructor]
   16.99 +    cls.add_constructor([param('ns3::Watchdog&', 'arg0', is_const=True)])
  16.100      ## watchdog.h: ns3::Watchdog::Watchdog() [constructor]
  16.101      cls.add_constructor([])
  16.102      ## watchdog.h: void ns3::Watchdog::Ping(ns3::Time delay) [member function]
  16.103      cls.add_method('Ping', 
  16.104                     'void', 
  16.105                     [param('ns3::Time', 'delay')])
  16.106 -    cls.add_copy_constructor()
  16.107      return
  16.108  
  16.109  def register_Ns3Simulator_methods(root_module, cls):
  16.110 +    ## simulator.h: ns3::Simulator::Simulator(ns3::Simulator const & arg0) [copy constructor]
  16.111 +    cls.add_constructor([param('ns3::Simulator&', 'arg0', is_const=True)])
  16.112      ## simulator.h: static void ns3::Simulator::SetImplementation(ns3::Ptr<ns3::SimulatorImpl> impl) [member function]
  16.113      cls.add_method('SetImplementation', 
  16.114                     'void', 
  16.115 @@ -415,7 +438,23 @@
  16.116                     'ns3::Time', 
  16.117                     [], 
  16.118                     is_static=True)
  16.119 -    cls.add_copy_constructor()
  16.120 +    return
  16.121 +
  16.122 +def register_Ns3EventLock_methods(root_module, cls):
  16.123 +    ## event-impl.h: ns3::EventLock::EventLock(ns3::EventLock const & arg0) [copy constructor]
  16.124 +    cls.add_constructor([param('ns3::EventLock&', 'arg0', is_const=True)])
  16.125 +    ## event-impl.h: ns3::EventLock::EventLock() [constructor]
  16.126 +    cls.add_constructor([])
  16.127 +    ## event-impl.h: void ns3::EventLock::Lock() [member function]
  16.128 +    cls.add_method('Lock', 
  16.129 +                   'void', 
  16.130 +                   [], 
  16.131 +                   is_pure_virtual=True, is_virtual=True)
  16.132 +    ## event-impl.h: void ns3::EventLock::Unlock() [member function]
  16.133 +    cls.add_method('Unlock', 
  16.134 +                   'void', 
  16.135 +                   [], 
  16.136 +                   is_pure_virtual=True, is_virtual=True)
  16.137      return
  16.138  
  16.139  def register_Ns3EventId_methods(root_module, cls):
  16.140 @@ -457,6 +496,8 @@
  16.141      return
  16.142  
  16.143  def register_Ns3EventImpl_methods(root_module, cls):
  16.144 +    ## event-impl.h: ns3::EventImpl::EventImpl(ns3::EventImpl const & arg0) [copy constructor]
  16.145 +    cls.add_constructor([param('ns3::EventImpl&', 'arg0', is_const=True)])
  16.146      ## event-impl.h: ns3::EventImpl::EventImpl() [constructor]
  16.147      cls.add_constructor([])
  16.148      ## event-impl.h: void ns3::EventImpl::Ref() const [member function]
  16.149 @@ -481,12 +522,38 @@
  16.150      cls.add_method('IsCancelled', 
  16.151                     'bool', 
  16.152                     [])
  16.153 +    ## event-impl.h: static void ns3::EventImpl::SetEventLock(ns3::EventLock * eventLock) [member function]
  16.154 +    cls.add_method('SetEventLock', 
  16.155 +                   'void', 
  16.156 +                   [param('ns3::EventLock *', 'eventLock')], 
  16.157 +                   is_static=True)
  16.158 +    ## event-impl.h: static void ns3::EventImpl::SetNoEventLock() [member function]
  16.159 +    cls.add_method('SetNoEventLock', 
  16.160 +                   'void', 
  16.161 +                   [], 
  16.162 +                   is_static=True)
  16.163      ## event-impl.h: void ns3::EventImpl::Notify() [member function]
  16.164      cls.add_method('Notify', 
  16.165                     'void', 
  16.166                     [], 
  16.167                     is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.168 -    cls.add_copy_constructor()
  16.169 +    return
  16.170 +
  16.171 +def register_Ns3RealtimeEventLock_methods(root_module, cls):
  16.172 +    ## realtime-simulator-impl.h: ns3::RealtimeEventLock::RealtimeEventLock(ns3::RealtimeEventLock const & arg0) [copy constructor]
  16.173 +    cls.add_constructor([param('ns3::RealtimeEventLock&', 'arg0', is_const=True)])
  16.174 +    ## realtime-simulator-impl.h: ns3::RealtimeEventLock::RealtimeEventLock() [constructor]
  16.175 +    cls.add_constructor([])
  16.176 +    ## realtime-simulator-impl.h: void ns3::RealtimeEventLock::Lock() [member function]
  16.177 +    cls.add_method('Lock', 
  16.178 +                   'void', 
  16.179 +                   [], 
  16.180 +                   is_virtual=True)
  16.181 +    ## realtime-simulator-impl.h: void ns3::RealtimeEventLock::Unlock() [member function]
  16.182 +    cls.add_method('Unlock', 
  16.183 +                   'void', 
  16.184 +                   [], 
  16.185 +                   is_virtual=True)
  16.186      return
  16.187  
  16.188  def register_Ns3HighPrecision_methods(root_module, cls):
  16.189 @@ -542,11 +609,17 @@
  16.190      return
  16.191  
  16.192  def register_Ns3TimeChecker_methods(root_module, cls):
  16.193 +    ## nstime.h: ns3::TimeChecker::TimeChecker(ns3::TimeChecker const & arg0) [copy constructor]
  16.194 +    cls.add_constructor([param('ns3::TimeChecker&', 'arg0', is_const=True)])
  16.195 +    ## nstime.h: ns3::TimeChecker::TimeChecker() [constructor]
  16.196      cls.add_constructor([])
  16.197 -    cls.add_copy_constructor()
  16.198      return
  16.199  
  16.200  def register_Ns3Scheduler_methods(root_module, cls):
  16.201 +    ## scheduler.h: ns3::Scheduler::Scheduler(ns3::Scheduler const & arg0) [copy constructor]
  16.202 +    cls.add_constructor([param('ns3::Scheduler&', 'arg0', is_const=True)])
  16.203 +    ## scheduler.h: ns3::Scheduler::Scheduler() [constructor]
  16.204 +    cls.add_constructor([])
  16.205      ## scheduler.h: static ns3::TypeId ns3::Scheduler::GetTypeId() [member function]
  16.206      cls.add_method('GetTypeId', 
  16.207                     'ns3::TypeId', 
  16.208 @@ -577,8 +650,6 @@
  16.209                     'bool', 
  16.210                     [param('ns3::EventId&', 'id', is_const=True)], 
  16.211                     is_pure_virtual=True, is_virtual=True)
  16.212 -    cls.add_constructor([])
  16.213 -    cls.add_copy_constructor()
  16.214      return
  16.215  
  16.216  def register_Ns3SchedulerEventKey_methods(root_module, cls):
  16.217 @@ -586,11 +657,15 @@
  16.218      cls.add_instance_attribute('m_ts', 'uint64_t', is_const=False)
  16.219      ## scheduler.h: ns3::Scheduler::EventKey::m_uid [variable]
  16.220      cls.add_instance_attribute('m_uid', 'uint32_t', is_const=False)
  16.221 +    ## scheduler.h: ns3::Scheduler::EventKey::EventKey(ns3::Scheduler::EventKey const & arg0) [copy constructor]
  16.222 +    cls.add_constructor([param('ns3::Scheduler::EventKey&', 'arg0', is_const=True)])
  16.223 +    ## scheduler.h: ns3::Scheduler::EventKey::EventKey() [constructor]
  16.224      cls.add_constructor([])
  16.225 -    cls.add_copy_constructor()
  16.226      return
  16.227  
  16.228  def register_Ns3TimeValue_methods(root_module, cls):
  16.229 +    ## nstime.h: ns3::TimeValue::TimeValue(ns3::TimeValue const & arg0) [copy constructor]
  16.230 +    cls.add_constructor([param('ns3::TimeValue&', 'arg0', is_const=True)])
  16.231      ## nstime.h: ns3::TimeValue::TimeValue() [constructor]
  16.232      cls.add_constructor([])
  16.233      ## nstime.h: ns3::TimeValue::TimeValue(ns3::Time const & value) [constructor]
  16.234 @@ -619,10 +694,13 @@
  16.235                     'bool', 
  16.236                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  16.237                     is_virtual=True)
  16.238 -    cls.add_copy_constructor()
  16.239      return
  16.240  
  16.241  def register_Ns3SimulatorImpl_methods(root_module, cls):
  16.242 +    ## simulator-impl.h: ns3::SimulatorImpl::SimulatorImpl(ns3::SimulatorImpl const & arg0) [copy constructor]
  16.243 +    cls.add_constructor([param('ns3::SimulatorImpl&', 'arg0', is_const=True)])
  16.244 +    ## simulator-impl.h: ns3::SimulatorImpl::SimulatorImpl() [constructor]
  16.245 +    cls.add_constructor([])
  16.246      ## simulator-impl.h: void ns3::SimulatorImpl::Destroy() [member function]
  16.247      cls.add_method('Destroy', 
  16.248                     'void', 
  16.249 @@ -713,11 +791,131 @@
  16.250                     'ns3::Ptr< ns3::Scheduler >', 
  16.251                     [], 
  16.252                     is_pure_virtual=True, is_const=True, is_virtual=True)
  16.253 +    return
  16.254 +
  16.255 +def register_Ns3RealtimeSimulatorImpl_methods(root_module, cls):
  16.256 +    ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl::RealtimeSimulatorImpl(ns3::RealtimeSimulatorImpl const & arg0) [copy constructor]
  16.257 +    cls.add_constructor([param('ns3::RealtimeSimulatorImpl&', 'arg0', is_const=True)])
  16.258 +    ## realtime-simulator-impl.h: static ns3::TypeId ns3::RealtimeSimulatorImpl::GetTypeId() [member function]
  16.259 +    cls.add_method('GetTypeId', 
  16.260 +                   'ns3::TypeId', 
  16.261 +                   [], 
  16.262 +                   is_static=True)
  16.263 +    ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl::RealtimeSimulatorImpl() [constructor]
  16.264      cls.add_constructor([])
  16.265 -    cls.add_copy_constructor()
  16.266 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Destroy() [member function]
  16.267 +    cls.add_method('Destroy', 
  16.268 +                   'void', 
  16.269 +                   [], 
  16.270 +                   is_virtual=True)
  16.271 +    ## realtime-simulator-impl.h: bool ns3::RealtimeSimulatorImpl::IsFinished() const [member function]
  16.272 +    cls.add_method('IsFinished', 
  16.273 +                   'bool', 
  16.274 +                   [], 
  16.275 +                   is_const=True, is_virtual=True)
  16.276 +    ## realtime-simulator-impl.h: ns3::Time ns3::RealtimeSimulatorImpl::Next() const [member function]
  16.277 +    cls.add_method('Next', 
  16.278 +                   'ns3::Time', 
  16.279 +                   [], 
  16.280 +                   is_const=True, is_virtual=True)
  16.281 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Stop() [member function]
  16.282 +    cls.add_method('Stop', 
  16.283 +                   'void', 
  16.284 +                   [], 
  16.285 +                   is_virtual=True)
  16.286 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Stop(ns3::Time const & time) [member function]
  16.287 +    cls.add_method('Stop', 
  16.288 +                   'void', 
  16.289 +                   [param('ns3::Time&', 'time', is_const=True)], 
  16.290 +                   is_virtual=True)
  16.291 +    ## realtime-simulator-impl.h: ns3::EventId ns3::RealtimeSimulatorImpl::Schedule(ns3::Time const & time, ns3::Ptr<ns3::EventImpl> const & event) [member function]
  16.292 +    cls.add_method('Schedule', 
  16.293 +                   'ns3::EventId', 
  16.294 +                   [param('ns3::Time&', 'time', is_const=True), param('ns3::Ptr< ns3::EventImpl >&', 'event', is_const=True)], 
  16.295 +                   is_virtual=True)
  16.296 +    ## realtime-simulator-impl.h: ns3::EventId ns3::RealtimeSimulatorImpl::ScheduleNow(ns3::Ptr<ns3::EventImpl> const & event) [member function]
  16.297 +    cls.add_method('ScheduleNow', 
  16.298 +                   'ns3::EventId', 
  16.299 +                   [param('ns3::Ptr< ns3::EventImpl >&', 'event', is_const=True)], 
  16.300 +                   is_virtual=True)
  16.301 +    ## realtime-simulator-impl.h: ns3::EventId ns3::RealtimeSimulatorImpl::ScheduleDestroy(ns3::Ptr<ns3::EventImpl> const & event) [member function]
  16.302 +    cls.add_method('ScheduleDestroy', 
  16.303 +                   'ns3::EventId', 
  16.304 +                   [param('ns3::Ptr< ns3::EventImpl >&', 'event', is_const=True)], 
  16.305 +                   is_virtual=True)
  16.306 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Remove(ns3::EventId const & ev) [member function]
  16.307 +    cls.add_method('Remove', 
  16.308 +                   'void', 
  16.309 +                   [param('ns3::EventId&', 'ev', is_const=True)], 
  16.310 +                   is_virtual=True)
  16.311 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Cancel(ns3::EventId const & ev) [member function]
  16.312 +    cls.add_method('Cancel', 
  16.313 +                   'void', 
  16.314 +                   [param('ns3::EventId&', 'ev', is_const=True)], 
  16.315 +                   is_virtual=True)
  16.316 +    ## realtime-simulator-impl.h: bool ns3::RealtimeSimulatorImpl::IsExpired(ns3::EventId const & ev) const [member function]
  16.317 +    cls.add_method('IsExpired', 
  16.318 +                   'bool', 
  16.319 +                   [param('ns3::EventId&', 'ev', is_const=True)], 
  16.320 +                   is_const=True, is_virtual=True)
  16.321 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::RunOneEvent() [member function]
  16.322 +    cls.add_method('RunOneEvent', 
  16.323 +                   'void', 
  16.324 +                   [], 
  16.325 +                   is_virtual=True)
  16.326 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::Run() [member function]
  16.327 +    cls.add_method('Run', 
  16.328 +                   'void', 
  16.329 +                   [], 
  16.330 +                   is_virtual=True)
  16.331 +    ## realtime-simulator-impl.h: ns3::Time ns3::RealtimeSimulatorImpl::Now() const [member function]
  16.332 +    cls.add_method('Now', 
  16.333 +                   'ns3::Time', 
  16.334 +                   [], 
  16.335 +                   is_const=True, is_virtual=True)
  16.336 +    ## realtime-simulator-impl.h: ns3::Time ns3::RealtimeSimulatorImpl::GetDelayLeft(ns3::EventId const & id) const [member function]
  16.337 +    cls.add_method('GetDelayLeft', 
  16.338 +                   'ns3::Time', 
  16.339 +                   [param('ns3::EventId&', 'id', is_const=True)], 
  16.340 +                   is_const=True, is_virtual=True)
  16.341 +    ## realtime-simulator-impl.h: ns3::Time ns3::RealtimeSimulatorImpl::GetMaximumSimulationTime() const [member function]
  16.342 +    cls.add_method('GetMaximumSimulationTime', 
  16.343 +                   'ns3::Time', 
  16.344 +                   [], 
  16.345 +                   is_const=True, is_virtual=True)
  16.346 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::SetScheduler(ns3::Ptr<ns3::Scheduler> scheduler) [member function]
  16.347 +    cls.add_method('SetScheduler', 
  16.348 +                   'void', 
  16.349 +                   [param('ns3::Ptr< ns3::Scheduler >', 'scheduler')], 
  16.350 +                   is_virtual=True)
  16.351 +    ## realtime-simulator-impl.h: ns3::Ptr<ns3::Scheduler> ns3::RealtimeSimulatorImpl::GetScheduler() const [member function]
  16.352 +    cls.add_method('GetScheduler', 
  16.353 +                   'ns3::Ptr< ns3::Scheduler >', 
  16.354 +                   [], 
  16.355 +                   is_const=True, is_virtual=True)
  16.356 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::SetSynchronizationMode(ns3::RealtimeSimulatorImpl::SynchronizationMode mode) [member function]
  16.357 +    cls.add_method('SetSynchronizationMode', 
  16.358 +                   'void', 
  16.359 +                   [param('ns3::RealtimeSimulatorImpl::SynchronizationMode', 'mode')])
  16.360 +    ## realtime-simulator-impl.h: ns3::RealtimeSimulatorImpl::SynchronizationMode ns3::RealtimeSimulatorImpl::GetSynchronizationMode() const [member function]
  16.361 +    cls.add_method('GetSynchronizationMode', 
  16.362 +                   'ns3::RealtimeSimulatorImpl::SynchronizationMode', 
  16.363 +                   [], 
  16.364 +                   is_const=True)
  16.365 +    ## realtime-simulator-impl.h: void ns3::RealtimeSimulatorImpl::SetHardLimit(ns3::Time limit) [member function]
  16.366 +    cls.add_method('SetHardLimit', 
  16.367 +                   'void', 
  16.368 +                   [param('ns3::Time', 'limit')])
  16.369 +    ## realtime-simulator-impl.h: ns3::Time ns3::RealtimeSimulatorImpl::GetHardLimit() const [member function]
  16.370 +    cls.add_method('GetHardLimit', 
  16.371 +                   'ns3::Time', 
  16.372 +                   [], 
  16.373 +                   is_const=True)
  16.374      return
  16.375  
  16.376  def register_Ns3DefaultSimulatorImpl_methods(root_module, cls):
  16.377 +    ## default-simulator-impl.h: ns3::DefaultSimulatorImpl::DefaultSimulatorImpl(ns3::DefaultSimulatorImpl const & arg0) [copy constructor]
  16.378 +    cls.add_constructor([param('ns3::DefaultSimulatorImpl&', 'arg0', is_const=True)])
  16.379      ## default-simulator-impl.h: static ns3::TypeId ns3::DefaultSimulatorImpl::GetTypeId() [member function]
  16.380      cls.add_method('GetTypeId', 
  16.381                     'ns3::TypeId', 
  16.382 @@ -815,10 +1013,108 @@
  16.383                     'ns3::Ptr< ns3::Scheduler >', 
  16.384                     [], 
  16.385                     is_const=True, is_virtual=True)
  16.386 -    cls.add_copy_constructor()
  16.387 +    return
  16.388 +
  16.389 +def register_Ns3Synchronizer_methods(root_module, cls):
  16.390 +    ## synchronizer.h: ns3::Synchronizer::Synchronizer(ns3::Synchronizer const & arg0) [copy constructor]
  16.391 +    cls.add_constructor([param('ns3::Synchronizer&', 'arg0', is_const=True)])
  16.392 +    ## synchronizer.h: static ns3::TypeId ns3::Synchronizer::GetTypeId() [member function]
  16.393 +    cls.add_method('GetTypeId', 
  16.394 +                   'ns3::TypeId', 
  16.395 +                   [], 
  16.396 +                   is_static=True)
  16.397 +    ## synchronizer.h: ns3::Synchronizer::Synchronizer() [constructor]
  16.398 +    cls.add_constructor([])
  16.399 +    ## synchronizer.h: bool ns3::Synchronizer::Realtime() [member function]
  16.400 +    cls.add_method('Realtime', 
  16.401 +                   'bool', 
  16.402 +                   [])
  16.403 +    ## synchronizer.h: uint64_t ns3::Synchronizer::GetCurrentRealtime() [member function]
  16.404 +    cls.add_method('GetCurrentRealtime', 
  16.405 +                   'uint64_t', 
  16.406 +                   [])
  16.407 +    ## synchronizer.h: void ns3::Synchronizer::SetOrigin(uint64_t ts) [member function]
  16.408 +    cls.add_method('SetOrigin', 
  16.409 +                   'void', 
  16.410 +                   [param('uint64_t', 'ts')])
  16.411 +    ## synchronizer.h: uint64_t ns3::Synchronizer::GetOrigin() [member function]
  16.412 +    cls.add_method('GetOrigin', 
  16.413 +                   'uint64_t', 
  16.414 +                   [])
  16.415 +    ## synchronizer.h: int64_t ns3::Synchronizer::GetDrift(uint64_t ts) [member function]
  16.416 +    cls.add_method('GetDrift', 
  16.417 +                   'int64_t', 
  16.418 +                   [param('uint64_t', 'ts')])
  16.419 +    ## synchronizer.h: bool ns3::Synchronizer::Synchronize(uint64_t tsCurrent, uint64_t tsDelay) [member function]
  16.420 +    cls.add_method('Synchronize', 
  16.421 +                   'bool', 
  16.422 +                   [param('uint64_t', 'tsCurrent'), param('uint64_t', 'tsDelay')])
  16.423 +    ## synchronizer.h: void ns3::Synchronizer::Signal() [member function]
  16.424 +    cls.add_method('Signal', 
  16.425 +                   'void', 
  16.426 +                   [])
  16.427 +    ## synchronizer.h: void ns3::Synchronizer::SetCondition(bool arg0) [member function]
  16.428 +    cls.add_method('SetCondition', 
  16.429 +                   'void', 
  16.430 +                   [param('bool', 'arg0')])
  16.431 +    ## synchronizer.h: void ns3::Synchronizer::EventStart() [member function]
  16.432 +    cls.add_method('EventStart', 
  16.433 +                   'void', 
  16.434 +                   [])
  16.435 +    ## synchronizer.h: uint64_t ns3::Synchronizer::EventEnd() [member function]
  16.436 +    cls.add_method('EventEnd', 
  16.437 +                   'uint64_t', 
  16.438 +                   [])
  16.439 +    ## synchronizer.h: void ns3::Synchronizer::DoSetOrigin(uint64_t ns) [member function]
  16.440 +    cls.add_method('DoSetOrigin', 
  16.441 +                   'void', 
  16.442 +                   [param('uint64_t', 'ns')], 
  16.443 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.444 +    ## synchronizer.h: bool ns3::Synchronizer::DoRealtime() [member function]
  16.445 +    cls.add_method('DoRealtime', 
  16.446 +                   'bool', 
  16.447 +                   [], 
  16.448 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.449 +    ## synchronizer.h: uint64_t ns3::Synchronizer::DoGetCurrentRealtime() [member function]
  16.450 +    cls.add_method('DoGetCurrentRealtime', 
  16.451 +                   'uint64_t', 
  16.452 +                   [], 
  16.453 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.454 +    ## synchronizer.h: bool ns3::Synchronizer::DoSynchronize(uint64_t nsCurrent, uint64_t nsDelay) [member function]
  16.455 +    cls.add_method('DoSynchronize', 
  16.456 +                   'bool', 
  16.457 +                   [param('uint64_t', 'nsCurrent'), param('uint64_t', 'nsDelay')], 
  16.458 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.459 +    ## synchronizer.h: void ns3::Synchronizer::DoSignal() [member function]
  16.460 +    cls.add_method('DoSignal', 
  16.461 +                   'void', 
  16.462 +                   [], 
  16.463 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.464 +    ## synchronizer.h: void ns3::Synchronizer::DoSetCondition(bool arg0) [member function]
  16.465 +    cls.add_method('DoSetCondition', 
  16.466 +                   'void', 
  16.467 +                   [param('bool', 'arg0')], 
  16.468 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.469 +    ## synchronizer.h: int64_t ns3::Synchronizer::DoGetDrift(uint64_t ns) [member function]
  16.470 +    cls.add_method('DoGetDrift', 
  16.471 +                   'int64_t', 
  16.472 +                   [param('uint64_t', 'ns')], 
  16.473 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.474 +    ## synchronizer.h: void ns3::Synchronizer::DoEventStart() [member function]
  16.475 +    cls.add_method('DoEventStart', 
  16.476 +                   'void', 
  16.477 +                   [], 
  16.478 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.479 +    ## synchronizer.h: uint64_t ns3::Synchronizer::DoEventEnd() [member function]
  16.480 +    cls.add_method('DoEventEnd', 
  16.481 +                   'uint64_t', 
  16.482 +                   [], 
  16.483 +                   is_pure_virtual=True, visibility='protected', is_virtual=True)
  16.484      return
  16.485  
  16.486  def register_Ns3HeapScheduler_methods(root_module, cls):
  16.487 +    ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler(ns3::HeapScheduler const & arg0) [copy constructor]
  16.488 +    cls.add_constructor([param('ns3::HeapScheduler&', 'arg0', is_const=True)])
  16.489      ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler() [constructor]
  16.490      cls.add_constructor([])
  16.491      ## heap-scheduler.h: void ns3::HeapScheduler::Insert(ns3::EventId const & id) [member function]
  16.492 @@ -846,10 +1142,11 @@
  16.493                     'bool', 
  16.494                     [param('ns3::EventId&', 'ev', is_const=True)], 
  16.495                     is_virtual=True)
  16.496 -    cls.add_copy_constructor()
  16.497      return
  16.498  
  16.499  def register_Ns3ListScheduler_methods(root_module, cls):
  16.500 +    ## list-scheduler.h: ns3::ListScheduler::ListScheduler(ns3::ListScheduler const & arg0) [copy constructor]
  16.501 +    cls.add_constructor([param('ns3::ListScheduler&', 'arg0', is_const=True)])
  16.502      ## list-scheduler.h: ns3::ListScheduler::ListScheduler() [constructor]
  16.503      cls.add_constructor([])
  16.504      ## list-scheduler.h: void ns3::ListScheduler::Insert(ns3::EventId const & id) [member function]
  16.505 @@ -877,10 +1174,11 @@
  16.506                     'bool', 
  16.507                     [param('ns3::EventId&', 'ev', is_const=True)], 
  16.508                     is_virtual=True)
  16.509 -    cls.add_copy_constructor()
  16.510      return
  16.511  
  16.512  def register_Ns3MapScheduler_methods(root_module, cls):
  16.513 +    ## map-scheduler.h: ns3::MapScheduler::MapScheduler(ns3::MapScheduler const & arg0) [copy constructor]
  16.514 +    cls.add_constructor([param('ns3::MapScheduler&', 'arg0', is_const=True)])
  16.515      ## map-scheduler.h: ns3::MapScheduler::MapScheduler() [constructor]
  16.516      cls.add_constructor([])
  16.517      ## map-scheduler.h: void ns3::MapScheduler::Insert(ns3::EventId const & id) [member function]
  16.518 @@ -908,7 +1206,119 @@
  16.519                     'bool', 
  16.520                     [param('ns3::EventId&', 'ev', is_const=True)], 
  16.521                     is_virtual=True)
  16.522 -    cls.add_copy_constructor()
  16.523 +    return
  16.524 +
  16.525 +def register_Ns3WallClockSynchronizer_methods(root_module, cls):
  16.526 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer::US_PER_NS [variable]
  16.527 +    cls.add_static_attribute('US_PER_NS', retval('uint64_t', is_const=True), is_const=True)
  16.528 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer::US_PER_SEC [variable]
  16.529 +    cls.add_static_attribute('US_PER_SEC', retval('uint64_t', is_const=True), is_const=True)
  16.530 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer::NS_PER_SEC [variable]
  16.531 +    cls.add_static_attribute('NS_PER_SEC', retval('uint64_t', is_const=True), is_const=True)
  16.532 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer::WallClockSynchronizer(ns3::WallClockSynchronizer const & arg0) [copy constructor]
  16.533 +    cls.add_constructor([param('ns3::WallClockSynchronizer&', 'arg0', is_const=True)])
  16.534 +    ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer::WallClockSynchronizer() [constructor]
  16.535 +    cls.add_constructor([])
  16.536 +    ## wall-clock-synchronizer.h: bool ns3::WallClockSynchronizer::DoRealtime() [member function]
  16.537 +    cls.add_method('DoRealtime', 
  16.538 +                   'bool', 
  16.539 +                   [], 
  16.540 +                   visibility='protected', is_virtual=True)
  16.541 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::DoGetCurrentRealtime() [member function]
  16.542 +    cls.add_method('DoGetCurrentRealtime', 
  16.543 +                   'uint64_t', 
  16.544 +                   [], 
  16.545 +                   visibility='protected', is_virtual=True)
  16.546 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::DoSetOrigin(uint64_t ns) [member function]
  16.547 +    cls.add_method('DoSetOrigin', 
  16.548 +                   'void', 
  16.549 +                   [param('uint64_t', 'ns')], 
  16.550 +                   visibility='protected', is_virtual=True)
  16.551 +    ## wall-clock-synchronizer.h: int64_t ns3::WallClockSynchronizer::DoGetDrift(uint64_t ns) [member function]
  16.552 +    cls.add_method('DoGetDrift', 
  16.553 +                   'int64_t', 
  16.554 +                   [param('uint64_t', 'ns')], 
  16.555 +                   visibility='protected', is_virtual=True)
  16.556 +    ## wall-clock-synchronizer.h: bool ns3::WallClockSynchronizer::DoSynchronize(uint64_t nsCurrent, uint64_t nsDelay) [member function]
  16.557 +    cls.add_method('DoSynchronize', 
  16.558 +                   'bool', 
  16.559 +                   [param('uint64_t', 'nsCurrent'), param('uint64_t', 'nsDelay')], 
  16.560 +                   visibility='protected', is_virtual=True)
  16.561 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::DoSignal() [member function]
  16.562 +    cls.add_method('DoSignal', 
  16.563 +                   'void', 
  16.564 +                   [], 
  16.565 +                   visibility='protected', is_virtual=True)
  16.566 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::DoSetCondition(bool cond) [member function]
  16.567 +    cls.add_method('DoSetCondition', 
  16.568 +                   'void', 
  16.569 +                   [param('bool', 'cond')], 
  16.570 +                   visibility='protected', is_virtual=True)
  16.571 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::DoEventStart() [member function]
  16.572 +    cls.add_method('DoEventStart', 
  16.573 +                   'void', 
  16.574 +                   [], 
  16.575 +                   visibility='protected', is_virtual=True)
  16.576 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::DoEventEnd() [member function]
  16.577 +    cls.add_method('DoEventEnd', 
  16.578 +                   'uint64_t', 
  16.579 +                   [], 
  16.580 +                   visibility='protected', is_virtual=True)
  16.581 +    ## wall-clock-synchronizer.h: bool ns3::WallClockSynchronizer::SpinWait(uint64_t arg0) [member function]
  16.582 +    cls.add_method('SpinWait', 
  16.583 +                   'bool', 
  16.584 +                   [param('uint64_t', 'arg0')], 
  16.585 +                   visibility='protected')
  16.586 +    ## wall-clock-synchronizer.h: bool ns3::WallClockSynchronizer::SleepWait(uint64_t arg0) [member function]
  16.587 +    cls.add_method('SleepWait', 
  16.588 +                   'bool', 
  16.589 +                   [param('uint64_t', 'arg0')], 
  16.590 +                   visibility='protected')
  16.591 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::DriftCorrect(uint64_t nsNow, uint64_t nsDelay) [member function]
  16.592 +    cls.add_method('DriftCorrect', 
  16.593 +                   'uint64_t', 
  16.594 +                   [param('uint64_t', 'nsNow'), param('uint64_t', 'nsDelay')], 
  16.595 +                   visibility='protected')
  16.596 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::GetRealtime() [member function]
  16.597 +    cls.add_method('GetRealtime', 
  16.598 +                   'uint64_t', 
  16.599 +                   [], 
  16.600 +                   visibility='protected')
  16.601 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::GetNormalizedRealtime() [member function]
  16.602 +    cls.add_method('GetNormalizedRealtime', 
  16.603 +                   'uint64_t', 
  16.604 +                   [], 
  16.605 +                   visibility='protected')
  16.606 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::NsToTimespec(int64_t ns, timespec * ts) [member function]
  16.607 +    cls.add_method('NsToTimespec', 
  16.608 +                   'void', 
  16.609 +                   [param('int64_t', 'ns'), param('timespec *', 'ts')], 
  16.610 +                   visibility='protected')
  16.611 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::NsToTimeval(int64_t ns, timeval * tv) [member function]
  16.612 +    cls.add_method('NsToTimeval', 
  16.613 +                   'void', 
  16.614 +                   [param('int64_t', 'ns'), param('timeval *', 'tv')], 
  16.615 +                   visibility='protected')
  16.616 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::TimespecToNs(timespec * ts) [member function]
  16.617 +    cls.add_method('TimespecToNs', 
  16.618 +                   'uint64_t', 
  16.619 +                   [param('timespec *', 'ts')], 
  16.620 +                   visibility='protected')
  16.621 +    ## wall-clock-synchronizer.h: uint64_t ns3::WallClockSynchronizer::TimevalToNs(timeval * tv) [member function]
  16.622 +    cls.add_method('TimevalToNs', 
  16.623 +                   'uint64_t', 
  16.624 +                   [param('timeval *', 'tv')], 
  16.625 +                   visibility='protected')
  16.626 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::TimespecAdd(timespec * ts1, timespec * ts2, timespec * result) [member function]
  16.627 +    cls.add_method('TimespecAdd', 
  16.628 +                   'void', 
  16.629 +                   [param('timespec *', 'ts1'), param('timespec *', 'ts2'), param('timespec *', 'result')], 
  16.630 +                   visibility='protected')
  16.631 +    ## wall-clock-synchronizer.h: void ns3::WallClockSynchronizer::TimevalAdd(timeval * tv1, timeval * tv2, timeval * result) [member function]
  16.632 +    cls.add_method('TimevalAdd', 
  16.633 +                   'void', 
  16.634 +                   [param('timeval *', 'tv1'), param('timeval *', 'tv2'), param('timeval *', 'result')], 
  16.635 +                   visibility='protected')
  16.636      return
  16.637  
  16.638  def register_functions(root_module):
    17.1 --- a/bindings/python/ns3_module_udp_echo.py	Fri Aug 29 14:53:38 2008 +0100
    17.2 +++ b/bindings/python/ns3_module_udp_echo.py	Fri Aug 29 14:56:24 2008 +0100
    17.3 @@ -54,6 +54,8 @@
    17.4      return
    17.5  
    17.6  def register_Ns3UdpEchoClient_methods(root_module, cls):
    17.7 +    ## udp-echo-client.h: ns3::UdpEchoClient::UdpEchoClient(ns3::UdpEchoClient const & arg0) [copy constructor]
    17.8 +    cls.add_constructor([param('ns3::UdpEchoClient&', 'arg0', is_const=True)])
    17.9      ## udp-echo-client.h: static ns3::TypeId ns3::UdpEchoClient::GetTypeId() [member function]
   17.10      cls.add_method('GetTypeId', 
   17.11                     'ns3::TypeId', 
   17.12 @@ -80,10 +82,11 @@
   17.13                     'void', 
   17.14                     [], 
   17.15                     visibility='private', is_virtual=True)
   17.16 -    cls.add_copy_constructor()
   17.17      return
   17.18  
   17.19  def register_Ns3UdpEchoServer_methods(root_module, cls):
   17.20 +    ## udp-echo-server.h: ns3::UdpEchoServer::UdpEchoServer(ns3::UdpEchoServer const & arg0) [copy constructor]
   17.21 +    cls.add_constructor([param('ns3::UdpEchoServer&', 'arg0', is_const=True)])
   17.22      ## udp-echo-server.h: static ns3::TypeId ns3::UdpEchoServer::GetTypeId() [member function]
   17.23      cls.add_method('GetTypeId', 
   17.24                     'ns3::TypeId', 
   17.25 @@ -106,7 +109,6 @@
   17.26                     'void', 
   17.27                     [], 
   17.28                     visibility='private', is_virtual=True)
   17.29 -    cls.add_copy_constructor()
   17.30      return
   17.31  
   17.32  def register_functions(root_module):
    18.1 --- a/bindings/python/ns3_module_wifi.py	Fri Aug 29 14:53:38 2008 +0100
    18.2 +++ b/bindings/python/ns3_module_wifi.py	Fri Aug 29 14:56:24 2008 +0100
    18.3 @@ -182,6 +182,8 @@
    18.4      return
    18.5  
    18.6  def register_Ns3WifiRemoteStation_methods(root_module, cls):
    18.7 +    ## wifi-remote-station-manager.h: ns3::WifiRemoteStation::WifiRemoteStation(ns3::WifiRemoteStation const & arg0) [copy constructor]
    18.8 +    cls.add_constructor([param('ns3::WifiRemoteStation&', 'arg0', is_const=True)])
    18.9      ## wifi-remote-station-manager.h: static ns3::TypeId ns3::WifiRemoteStation::GetTypeId() [member function]
   18.10      cls.add_method('GetTypeId', 
   18.11                     'ns3::TypeId', 
   18.12 @@ -371,10 +373,13 @@
   18.13                     'ns3::WifiMode', 
   18.14                     [], 
   18.15                     is_pure_virtual=True, visibility='private', is_virtual=True)
   18.16 -    cls.add_copy_constructor()
   18.17      return
   18.18  
   18.19  def register_Ns3WifiPhyListener_methods(root_module, cls):
   18.20 +    ## wifi-phy.h: ns3::WifiPhyListener::WifiPhyListener(ns3::WifiPhyListener const & arg0) [copy constructor]
   18.21 +    cls.add_constructor([param('ns3::WifiPhyListener&', 'arg0', is_const=True)])
   18.22 +    ## wifi-phy.h: ns3::WifiPhyListener::WifiPhyListener() [constructor]
   18.23 +    cls.add_constructor([])
   18.24      ## wifi-phy.h: void ns3::WifiPhyListener::NotifyRxStart(ns3::Time duration) [member function]
   18.25      cls.add_method('NotifyRxStart', 
   18.26                     'void', 
   18.27 @@ -400,8 +405,6 @@
   18.28                     'void', 
   18.29                     [param('ns3::Time', 'duration')], 
   18.30                     is_pure_virtual=True, is_virtual=True)
   18.31 -    cls.add_constructor([])
   18.32 -    cls.add_copy_constructor()
   18.33      return
   18.34  
   18.35  def register_Ns3ThresholdsItem_methods(root_module, cls):
   18.36 @@ -413,8 +416,10 @@
   18.37      cls.add_instance_attribute('pmtl', 'double', is_const=False)
   18.38      ## rraa-wifi-manager.h: ns3::ThresholdsItem::ewnd [variable]
   18.39      cls.add_instance_attribute('ewnd', 'uint32_t', is_const=False)
   18.40 +    ## rraa-wifi-manager.h: ns3::ThresholdsItem::ThresholdsItem(ns3::ThresholdsItem const & arg0) [copy constructor]
   18.41 +    cls.add_constructor([param('ns3::ThresholdsItem&', 'arg0', is_const=True)])
   18.42 +    ## rraa-wifi-manager.h: ns3::ThresholdsItem::ThresholdsItem() [constructor]
   18.43      cls.add_constructor([])
   18.44 -    cls.add_copy_constructor()
   18.45      return
   18.46  
   18.47  def register_Ns3SupportedRates_methods(root_module, cls):
   18.48 @@ -468,6 +473,8 @@
   18.49      return
   18.50  
   18.51  def register_Ns3IdealWifiRemoteStation_methods(root_module, cls):
   18.52 +    ## ideal-wifi-manager.h: ns3::IdealWifiRemoteStation::IdealWifiRemoteStation(ns3::IdealWifiRemoteStation const & arg0) [copy constructor]
   18.53 +    cls.add_constructor([param('ns3::IdealWifiRemoteStation&', 'arg0', is_const=True)])
   18.54      ## ideal-wifi-manager.h: ns3::IdealWifiRemoteStation::IdealWifiRemoteStation(ns3::Ptr<ns3::IdealWifiManager> stations) [constructor]
   18.55      cls.add_constructor([param('ns3::Ptr< ns3::IdealWifiManager >', 'stations')])
   18.56      ## ideal-wifi-manager.h: void ns3::IdealWifiRemoteStation::DoReportRxOk(double rxSnr, ns3::WifiMode txMode) [member function]
   18.57 @@ -520,15 +527,18 @@
   18.58                     'ns3::WifiMode', 
   18.59                     [], 
   18.60                     visibility='private', is_virtual=True)
   18.61 -    cls.add_copy_constructor()
   18.62      return
   18.63  
   18.64  def register_Ns3WifiModeChecker_methods(root_module, cls):
   18.65 +    ## wifi-mode.h: ns3::WifiModeChecker::WifiModeChecker(ns3::WifiModeChecker const & arg0) [copy constructor]
   18.66 +    cls.add_constructor([param('ns3::WifiModeChecker&', 'arg0', is_const=True)])
   18.67 +    ## wifi-mode.h: ns3::WifiModeChecker::WifiModeChecker() [constructor]
   18.68      cls.add_constructor([])
   18.69 -    cls.add_copy_constructor()
   18.70      return
   18.71  
   18.72  def register_Ns3WifiModeFactory_methods(root_module, cls):
   18.73 +    ## wifi-mode.h: ns3::WifiModeFactory::WifiModeFactory(ns3::WifiModeFactory const & arg0) [copy constructor]
   18.74 +    cls.add_constructor([param('ns3::WifiModeFactory&', 'arg0', is_const=True)])
   18.75      ## wifi-mode.h: static ns3::WifiMode ns3::WifiModeFactory::CreateBpsk(std::string uniqueName, bool isMandatory, uint32_t bandwidth, uint32_t dataRate, uint32_t phyRate) [member function]
   18.76      cls.add_method('CreateBpsk', 
   18.77                     'ns3::WifiMode', 
   18.78 @@ -539,10 +549,11 @@
   18.79                     'ns3::WifiMode', 
   18.80                     [param('std::string', 'uniqueName'), param('bool', 'isMandatory'), param('uint32_t', 'bandwidth'), param('uint32_t', 'dataRate'), param('uint32_t', 'phyRate'), param('uint8_t', 'constellationSize')], 
   18.81                     is_static=True)
   18.82 -    cls.add_copy_constructor()
   18.83      return
   18.84  
   18.85  def register_Ns3OnoeWifiRemoteStation_methods(root_module, cls):
   18.86 +    ## onoe-wifi-manager.h: ns3::OnoeWifiRemoteStation::OnoeWifiRemoteStation(ns3::OnoeWifiRemoteStation const & arg0) [copy constructor]
   18.87 +    cls.add_constructor([param('ns3::OnoeWifiRemoteStation&', 'arg0', is_const=True)])
   18.88      ## onoe-wifi-manager.h: ns3::OnoeWifiRemoteStation::OnoeWifiRemoteStation(ns3::Ptr<ns3::OnoeWifiManager> stations) [constructor]
   18.89      cls.add_constructor([param('ns3::Ptr< ns3::OnoeWifiManager >', 'stations')])
   18.90      ## onoe-wifi-manager.h: void ns3::OnoeWifiRemoteStation::DoReportRxOk(double rxSnr, ns3::WifiMode txMode) [member function]
   18.91 @@ -595,10 +606,11 @@
   18.92                     'ns3::WifiMode', 
   18.93                     [], 
   18.94                     visibility='private', is_virtual=True)
   18.95 -    cls.add_copy_constructor()
   18.96      return
   18.97  
   18.98  def register_Ns3RraaWifiRemoteStation_methods(root_module, cls):
   18.99 +    ## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation::RraaWifiRemoteStation(ns3::RraaWifiRemoteStation const & arg0) [copy constructor]
  18.100 +    cls.add_constructor([param('ns3::RraaWifiRemoteStation&', 'arg0', is_const=True)])
  18.101      ## rraa-wifi-manager.h: ns3::RraaWifiRemoteStation::RraaWifiRemoteStation(ns3::Ptr<ns3::RraaWifiManager> stations) [constructor]
  18.102      cls.add_constructor([param('ns3::Ptr< ns3::RraaWifiManager >', 'stations')])
  18.103      ## rraa-wifi-manager.h: bool ns3::RraaWifiRemoteStation::NeedRts(ns3::Ptr<const ns3::Packet> packet) [member function]
  18.104 @@ -656,7 +668,6 @@
  18.105                     'ns3::WifiMode', 
  18.106                     [], 
  18.107                     visibility='private', is_virtual=True)
  18.108 -    cls.add_copy_constructor()
  18.109      return
  18.110  
  18.111  def register_Ns3Ssid_methods(root_module, cls):
  18.112 @@ -764,6 +775,8 @@
  18.113      return
  18.114  
  18.115  def register_Ns3SsidValue_methods(root_module, cls):
  18.116 +    ## ssid.h: ns3::SsidValue::SsidValue(ns3::SsidValue const & arg0) [copy constructor]
  18.117 +    cls.add_constructor([param('ns3::SsidValue&', 'arg0', is_const=True)])
  18.118      ## ssid.h: ns3::SsidValue::SsidValue() [constructor]
  18.119      cls.add_constructor([])
  18.120      ## ssid.h: ns3::SsidValue::SsidValue(ns3::Ssid const & value) [constructor]
  18.121 @@ -792,15 +805,18 @@
  18.122                     'bool', 
  18.123                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  18.124                     is_virtual=True)
  18.125 -    cls.add_copy_constructor()
  18.126      return
  18.127  
  18.128  def register_Ns3SsidChecker_methods(root_module, cls):
  18.129 +    ## ssid.h: ns3::SsidChecker::SsidChecker(ns3::SsidChecker const & arg0) [copy constructor]
  18.130 +    cls.add_constructor([param('ns3::SsidChecker&', 'arg0', is_const=True)])
  18.131 +    ## ssid.h: ns3::SsidChecker::SsidChecker() [constructor]
  18.132      cls.add_constructor([])
  18.133 -    cls.add_copy_constructor()
  18.134      return
  18.135  
  18.136  def register_Ns3ConstantRateWifiRemoteStation_methods(root_module, cls):
  18.137 +    ## constant-rate-wifi-manager.h: ns3::ConstantRateWifiRemoteStation::ConstantRateWifiRemoteStation(ns3::ConstantRateWifiRemoteStation const & arg0) [copy constructor]
  18.138 +    cls.add_constructor([param('ns3::ConstantRateWifiRemoteStation&', 'arg0', is_const=True)])
  18.139      ## constant-rate-wifi-manager.h: ns3::ConstantRateWifiRemoteStation::ConstantRateWifiRemoteStation(ns3::Ptr<ns3::ConstantRateWifiManager> stations) [constructor]
  18.140      cls.add_constructor([param('ns3::Ptr< ns3::ConstantRateWifiManager >', 'stations')])
  18.141      ## constant-rate-wifi-manager.h: void ns3::ConstantRateWifiRemoteStation::DoReportRxOk(double rxSnr, ns3::WifiMode txMode) [member function]
  18.142 @@ -853,10 +869,13 @@
  18.143                     'ns3::WifiMode', 
  18.144                     [], 
  18.145                     visibility='private', is_virtual=True)
  18.146 -    cls.add_copy_constructor()
  18.147      return
  18.148  
  18.149  def register_Ns3PropagationLossModel_methods(root_module, cls):
  18.150 +    ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel(ns3::PropagationLossModel const & arg0) [copy constructor]
  18.151 +    cls.add_constructor([param('ns3::PropagationLossModel&', 'arg0', is_const=True)])
  18.152 +    ## propagation-loss-model.h: ns3::PropagationLossModel::PropagationLossModel() [constructor]
  18.153 +    cls.add_constructor([])
  18.154      ## propagation-loss-model.h: static ns3::TypeId ns3::PropagationLossModel::GetTypeId() [member function]
  18.155      cls.add_method('GetTypeId', 
  18.156                     'ns3::TypeId', 
  18.157 @@ -867,11 +886,11 @@
  18.158                     'double', 
  18.159                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.160                     is_pure_virtual=True, is_const=True, is_virtual=True)
  18.161 -    cls.add_constructor([])
  18.162 -    cls.add_copy_constructor()
  18.163      return
  18.164  
  18.165  def register_Ns3ArfWifiRemoteStation_methods(root_module, cls):
  18.166 +    ## arf-wifi-manager.h: ns3::ArfWifiRemoteStation::ArfWifiRemoteStation(ns3::ArfWifiRemoteStation const & arg0) [copy constructor]
  18.167 +    cls.add_constructor([param('ns3::ArfWifiRemoteStation&', 'arg0', is_const=True)])
  18.168      ## arf-wifi-manager.h: ns3::ArfWifiRemoteStation::ArfWifiRemoteStation(ns3::Ptr<ns3::ArfWifiManager> stations, int minTimerTimeout, int minSuccessThreshold) [constructor]
  18.169      cls.add_constructor([param('ns3::Ptr< ns3::ArfWifiManager >', 'stations'), param('int', 'minTimerTimeout'), param('int', 'minSuccessThreshold')])
  18.170      ## arf-wifi-manager.h: void ns3::ArfWifiRemoteStation::DoReportRxOk(double rxSnr, ns3::WifiMode txMode) [member function]
  18.171 @@ -964,10 +983,13 @@
  18.172                     'void', 
  18.173                     [], 
  18.174                     visibility='private', is_virtual=True)
  18.175 -    cls.add_copy_constructor()
  18.176      return
  18.177  
  18.178  def register_Ns3WifiMac_methods(root_module, cls):
  18.179 +    ## wifi-mac.h: ns3::WifiMac::WifiMac(ns3::WifiMac const & arg0) [copy constructor]
  18.180 +    cls.add_constructor([param('ns3::WifiMac&', 'arg0', is_const=True)])
  18.181 +    ## wifi-mac.h: ns3::WifiMac::WifiMac() [constructor]
  18.182 +    cls.add_constructor([])
  18.183      ## wifi-mac.h: static ns3::TypeId ns3::WifiMac::GetTypeId() [member function]
  18.184      cls.add_method('GetTypeId', 
  18.185                     'ns3::TypeId', 
  18.186 @@ -1104,8 +1126,6 @@
  18.187                     'void', 
  18.188                     [param('ns3::Callback< void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'linkDown')], 
  18.189                     is_pure_virtual=True, visibility='private', is_virtual=True)
  18.190 -    cls.add_constructor([])
  18.191 -    cls.add_copy_constructor()
  18.192      return
  18.193  
  18.194  def register_Ns3NqapWifiMac_methods(root_module, cls):
  18.195 @@ -1222,6 +1242,8 @@
  18.196      return
  18.197  
  18.198  def register_Ns3CompositePropagationLossModel_methods(root_module, cls):
  18.199 +    ## composite-propagation-loss-model.h: ns3::CompositePropagationLossModel::CompositePropagationLossModel(ns3::CompositePropagationLossModel const & arg0) [copy constructor]
  18.200 +    cls.add_constructor([param('ns3::CompositePropagationLossModel&', 'arg0', is_const=True)])
  18.201      ## composite-propagation-loss-model.h: static ns3::TypeId ns3::CompositePropagationLossModel::GetTypeId() [member function]
  18.202      cls.add_method('GetTypeId', 
  18.203                     'ns3::TypeId', 
  18.204 @@ -1243,10 +1265,11 @@
  18.205                     'void', 
  18.206                     [], 
  18.207                     visibility='protected', is_virtual=True)
  18.208 -    cls.add_copy_constructor()
  18.209      return
  18.210  
  18.211  def register_Ns3AmrrWifiRemoteStation_methods(root_module, cls):
  18.212 +    ## amrr-wifi-manager.h: ns3::AmrrWifiRemoteStation::AmrrWifiRemoteStation(ns3::AmrrWifiRemoteStation const & arg0) [copy constructor]
  18.213 +    cls.add_constructor([param('ns3::AmrrWifiRemoteStation&', 'arg0', is_const=True)])
  18.214      ## amrr-wifi-manager.h: ns3::AmrrWifiRemoteStation::AmrrWifiRemoteStation(ns3::Ptr<ns3::AmrrWifiManager> stations) [constructor]
  18.215      cls.add_constructor([param('ns3::Ptr< ns3::AmrrWifiManager >', 'stations')])
  18.216      ## amrr-wifi-manager.h: void ns3::AmrrWifiRemoteStation::DoReportRxOk(double rxSnr, ns3::WifiMode txMode) [member function]
  18.217 @@ -1299,10 +1322,11 @@
  18.218                     'ns3::WifiMode', 
  18.219                     [], 
  18.220                     visibility='private', is_virtual=True)
  18.221 -    cls.add_copy_constructor()
  18.222      return
  18.223  
  18.224  def register_Ns3FriisPropagationLossModel_methods(root_module, cls):
  18.225 +    ## propagation-loss-model.h: ns3::FriisPropagationLossModel::FriisPropagationLossModel(ns3::FriisPropagationLossModel const & arg0) [copy constructor]
  18.226 +    cls.add_constructor([param('ns3::FriisPropagationLossModel&', 'arg0', is_const=True)])
  18.227      ## propagation-loss-model.h: static ns3::TypeId ns3::FriisPropagationLossModel::GetTypeId() [member function]
  18.228      cls.add_method('GetTypeId', 
  18.229                     'ns3::TypeId', 
  18.230 @@ -1346,7 +1370,6 @@
  18.231                     'double', 
  18.232                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.233                     is_const=True, is_virtual=True)
  18.234 -    cls.add_copy_constructor()
  18.235      return
  18.236  
  18.237  def register_Ns3NqstaWifiMac_methods(root_module, cls):
  18.238 @@ -1466,6 +1489,8 @@
  18.239      return
  18.240  
  18.241  def register_Ns3WifiRemoteStationManager_methods(root_module, cls):
  18.242 +    ## wifi-remote-station-manager.h: ns3::WifiRemoteStationManager::WifiRemoteStationManager(ns3::WifiRemoteStationManager const & arg0) [copy constructor]
  18.243 +    cls.add_constructor([param('ns3::WifiRemoteStationManager&', 'arg0', is_const=True)])
  18.244      ## wifi-remote-station-manager.h: static ns3::TypeId ns3::WifiRemoteStationManager::GetTypeId() [member function]
  18.245      cls.add_method('GetTypeId', 
  18.246                     'ns3::TypeId', 
  18.247 @@ -1539,12 +1564,12 @@
  18.248                     is_const=True)
  18.249      ## wifi-remote-station-manager.h: __gnu_cxx::__normal_iterator<const ns3::WifiMode*,std::vector<ns3::WifiMode, std::allocator<ns3::WifiMode> > > ns3::WifiRemoteStationManager::BeginBasicModes() const [member function]
  18.250      cls.add_method('BeginBasicModes', 
  18.251 -                   '__gnu_cxx::__normal_iterator< const ns3::WifiMode*, std::vector< ns3::WifiMode, std::allocator< ns3::WifiMode > > >', 
  18.252 +                   '__gnu_cxx::__normal_iterator< const ns3::WifiMode*, std::vector< ns3::WifiMode > >', 
  18.253                     [], 
  18.254                     is_const=True)
  18.255      ## wifi-remote-station-manager.h: __gnu_cxx::__normal_iterator<const ns3::WifiMode*,std::vector<ns3::WifiMode, std::allocator<ns3::WifiMode> > > ns3::WifiRemoteStationManager::EndBasicModes() const [member function]
  18.256      cls.add_method('EndBasicModes', 
  18.257 -                   '__gnu_cxx::__normal_iterator< const ns3::WifiMode*, std::vector< ns3::WifiMode, std::allocator< ns3::WifiMode > > >', 
  18.258 +                   '__gnu_cxx::__normal_iterator< const ns3::WifiMode*, std::vector< ns3::WifiMode > >', 
  18.259                     [], 
  18.260                     is_const=True)
  18.261      ## wifi-remote-station-manager.h: bool ns3::WifiRemoteStationManager::IsLowLatency() const [member function]
  18.262 @@ -1570,10 +1595,11 @@
  18.263                     'ns3::WifiRemoteStation *', 
  18.264                     [], 
  18.265                     is_pure_virtual=True, visibility='private', is_virtual=True)
  18.266 -    cls.add_copy_constructor()
  18.267      return
  18.268  
  18.269  def register_Ns3WifiModeValue_methods(root_module, cls):
  18.270 +    ## wifi-mode.h: ns3::WifiModeValue::WifiModeValue(ns3::WifiModeValue const & arg0) [copy constructor]
  18.271 +    cls.add_constructor([param('ns3::WifiModeValue&', 'arg0', is_const=True)])
  18.272      ## wifi-mode.h: ns3::WifiModeValue::WifiModeValue() [constructor]
  18.273      cls.add_constructor([])
  18.274      ## wifi-mode.h: ns3::WifiModeValue::WifiModeValue(ns3::WifiMode const & value) [constructor]
  18.275 @@ -1602,10 +1628,11 @@
  18.276                     'bool', 
  18.277                     [param('std::string', 'value'), param('ns3::Ptr< ns3::AttributeChecker const >', 'checker')], 
  18.278                     is_virtual=True)
  18.279 -    cls.add_copy_constructor()
  18.280      return
  18.281  
  18.282  def register_Ns3OnoeWifiManager_methods(root_module, cls):
  18.283 +    ## onoe-wifi-manager.h: ns3::OnoeWifiManager::OnoeWifiManager(ns3::OnoeWifiManager const & arg0) [copy constructor]
  18.284 +    cls.add_constructor([param('ns3::OnoeWifiManager&', 'arg0', is_const=True)])
  18.285      ## onoe-wifi-manager.h: static ns3::TypeId ns3::OnoeWifiManager::GetTypeId() [member function]
  18.286      cls.add_method('GetTypeId', 
  18.287                     'ns3::TypeId', 
  18.288 @@ -1618,7 +1645,6 @@
  18.289                     'ns3::WifiRemoteStation *', 
  18.290                     [], 
  18.291                     visibility='private', is_virtual=True)
  18.292 -    cls.add_copy_constructor()
  18.293      return
  18.294  
  18.295  def register_Ns3WifiPhy_methods(root_module, cls):
  18.296 @@ -1786,6 +1812,8 @@
  18.297      return
  18.298  
  18.299  def register_Ns3WifiChannel_methods(root_module, cls):
  18.300 +    ## wifi-channel.h: ns3::WifiChannel::WifiChannel(ns3::WifiChannel const & arg0) [copy constructor]
  18.301 +    cls.add_constructor([param('ns3::WifiChannel&', 'arg0', is_const=True)])
  18.302      ## wifi-channel.h: static ns3::TypeId ns3::WifiChannel::GetTypeId() [member function]
  18.303      cls.add_method('GetTypeId', 
  18.304                     'ns3::TypeId', 
  18.305 @@ -1820,10 +1848,11 @@
  18.306                     'void', 
  18.307                     [param('ns3::Ptr< ns3::WifiPhy >', 'sender'), param('ns3::Ptr< const ns3::Packet >', 'packet'), param('double', 'txPowerDbm'), param('ns3::WifiMode', 'wifiMode'), param('ns3::WifiPreamble', 'preamble')], 
  18.308                     is_const=True)
  18.309 -    cls.add_copy_constructor()
  18.310      return
  18.311  
  18.312  def register_Ns3LogDistancePropagationLossModel_methods(root_module, cls):
  18.313 +    ## propagation-loss-model.h: ns3::LogDistancePropagationLossModel::LogDistancePropagationLossModel(ns3::LogDistancePropagationLossModel const & arg0) [copy constructor]
  18.314 +    cls.add_constructor([param('ns3::LogDistancePropagationLossModel&', 'arg0', is_const=True)])
  18.315      ## propagation-loss-model.h: static ns3::TypeId ns3::LogDistancePropagationLossModel::GetTypeId() [member function]
  18.316      cls.add_method('GetTypeId', 
  18.317                     'ns3::TypeId', 
  18.318 @@ -1853,10 +1882,11 @@
  18.319                     'double', 
  18.320                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.321                     is_const=True, is_virtual=True)
  18.322 -    cls.add_copy_constructor()
  18.323      return
  18.324  
  18.325  def register_Ns3ConstantRateWifiManager_methods(root_module, cls):
  18.326 +    ## constant-rate-wifi-manager.h: ns3::ConstantRateWifiManager::ConstantRateWifiManager(ns3::ConstantRateWifiManager const & arg0) [copy constructor]
  18.327 +    cls.add_constructor([param('ns3::ConstantRateWifiManager&', 'arg0', is_const=True)])
  18.328      ## constant-rate-wifi-manager.h: static ns3::TypeId ns3::ConstantRateWifiManager::GetTypeId() [member function]
  18.329      cls.add_method('GetTypeId', 
  18.330                     'ns3::TypeId', 
  18.331 @@ -1879,10 +1909,11 @@
  18.332                     'ns3::WifiRemoteStation *', 
  18.333                     [], 
  18.334                     visibility='private', is_virtual=True)
  18.335 -    cls.add_copy_constructor()
  18.336      return
  18.337  
  18.338  def register_Ns3AarfWifiRemoteStation_methods(root_module, cls):
  18.339 +    ## aarf-wifi-manager.h: ns3::AarfWifiRemoteStation::AarfWifiRemoteStation(ns3::AarfWifiRemoteStation const & arg0) [copy constructor]
  18.340 +    cls.add_constructor([param('ns3::AarfWifiRemoteStation&', 'arg0', is_const=True)])
  18.341      ## aarf-wifi-manager.h: ns3::AarfWifiRemoteStation::AarfWifiRemoteStation(ns3::Ptr<ns3::AarfWifiManager> stations, uint32_t minTimerThreshold, uint32_t minSuccessThreshold, double successK, uint32_t maxSuccessThreshold, double timerK) [constructor]
  18.342      cls.add_constructor([param('ns3::Ptr< ns3::AarfWifiManager >', 'stations'), param('uint32_t', 'minTimerThreshold'), param('uint32_t', 'minSuccessThreshold'), param('double', 'successK'), param('uint32_t', 'maxSuccessThreshold'), param('double', 'timerK')])
  18.343      ## aarf-wifi-manager.h: void ns3::AarfWifiRemoteStation::ReportRecoveryFailure() [member function]
  18.344 @@ -1895,10 +1926,13 @@
  18.345                     'void', 
  18.346                     [], 
  18.347                     visibility='private', is_virtual=True)
  18.348 -    cls.add_copy_constructor()
  18.349      return
  18.350  
  18.351  def register_Ns3PropagationDelayModel_methods(root_module, cls):
  18.352 +    ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel(ns3::PropagationDelayModel const & arg0) [copy constructor]
  18.353 +    cls.add_constructor([param('ns3::PropagationDelayModel&', 'arg0', is_const=True)])
  18.354 +    ## propagation-delay-model.h: ns3::PropagationDelayModel::PropagationDelayModel() [constructor]
  18.355 +    cls.add_constructor([])
  18.356      ## propagation-delay-model.h: static ns3::TypeId ns3::PropagationDelayModel::GetTypeId() [member function]
  18.357      cls.add_method('GetTypeId', 
  18.358                     'ns3::TypeId', 
  18.359 @@ -1909,8 +1943,6 @@
  18.360                     'ns3::Time', 
  18.361                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.362                     is_pure_virtual=True, is_const=True, is_virtual=True)
  18.363 -    cls.add_constructor([])
  18.364 -    cls.add_copy_constructor()
  18.365      return
  18.366  
  18.367  def register_Ns3AdhocWifiMac_methods(root_module, cls):
  18.368 @@ -2014,6 +2046,8 @@
  18.369      return
  18.370  
  18.371  def register_Ns3JakesPropagationLossModel_methods(root_module, cls):
  18.372 +    ## jakes-propagation-loss-model.h: ns3::JakesPropagationLossModel::JakesPropagationLossModel(ns3::JakesPropagationLossModel const & arg0) [copy constructor]
  18.373 +    cls.add_constructor([param('ns3::JakesPropagationLossModel&', 'arg0', is_const=True)])
  18.374      ## jakes-propagation-loss-model.h: static ns3::TypeId ns3::JakesPropagationLossModel::GetTypeId() [member function]
  18.375      cls.add_method('GetTypeId', 
  18.376                     'ns3::TypeId', 
  18.377 @@ -2034,10 +2068,11 @@
  18.378      cls.add_method('SetNOscillators', 
  18.379                     'void', 
  18.380                     [param('uint8_t', 'nOscillators')])
  18.381 -    cls.add_copy_constructor()
  18.382      return
  18.383  
  18.384  def register_Ns3WifiNetDevice_methods(root_module, cls):
  18.385 +    ## wifi-net-device.h: ns3::WifiNetDevice::WifiNetDevice(ns3::WifiNetDevice const & arg0) [copy constructor]
  18.386 +    cls.add_constructor([param('ns3::WifiNetDevice&', 'arg0', is_const=True)])
  18.387      ## wifi-net-device.h: static ns3::TypeId ns3::WifiNetDevice::GetTypeId() [member function]
  18.388      cls.add_method('GetTypeId', 
  18.389                     'ns3::TypeId', 
  18.390 @@ -2176,20 +2211,20 @@
  18.391                     'bool', 
  18.392                     [], 
  18.393                     is_const=True, is_virtual=True)
  18.394 -    ## wifi-net-device.h: void ns3::WifiNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  18.395 +    ## wifi-net-device.h: void ns3::WifiNetDevice::SetReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet const>, unsigned short, ns3::Address const&, ns3::empty, ns3::empty> cb) [member function]
  18.396      cls.add_method('SetReceiveCallback', 
  18.397                     'void', 
  18.398 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  18.399 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::empty, ns3::empty >', 'cb')], 
  18.400                     is_virtual=True)
  18.401      ## 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]
  18.402      cls.add_method('SendFrom', 
  18.403                     'bool', 
  18.404                     [param('ns3::Ptr< ns3::Packet >', 'packet'), param('ns3::Address&', 'source', is_const=True), param('ns3::Address&', 'dest', is_const=True), param('uint16_t', 'protocolNumber')], 
  18.405                     is_virtual=True)
  18.406 -    ## wifi-net-device.h: void ns3::WifiNetDevice::SetPromiscReceiveCallback(ns3::Callback<bool, ns3::Ptr<ns3::NetDevice>, ns3::Ptr<ns3::Packet>, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType> cb) [member function]
  18.407 +    ## wifi-net-device.h: void ns3::WifiNetDevice::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]
  18.408      cls.add_method('SetPromiscReceiveCallback', 
  18.409                     'void', 
  18.410 -                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr<const ns3::Packet >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  18.411 +                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType >', 'cb')], 
  18.412                     is_virtual=True)
  18.413      ## wifi-net-device.h: bool ns3::WifiNetDevice::SupportsPromiscuous() const [member function]
  18.414      cls.add_method('SupportsPromiscuous', 
  18.415 @@ -2201,10 +2236,11 @@
  18.416                     'void', 
  18.417                     [], 
  18.418                     visibility='private', is_virtual=True)
  18.419 -    cls.add_copy_constructor()
  18.420      return
  18.421  
  18.422  def register_Ns3ConstantSpeedPropagationDelayModel_methods(root_module, cls):
  18.423 +    ## propagation-delay-model.h: ns3::ConstantSpeedPropagationDelayModel::ConstantSpeedPropagationDelayModel(ns3::ConstantSpeedPropagationDelayModel const & arg0) [copy constructor]
  18.424 +    cls.add_constructor([param('ns3::ConstantSpeedPropagationDelayModel&', 'arg0', is_const=True)])
  18.425      ## propagation-delay-model.h: static ns3::TypeId ns3::ConstantSpeedPropagationDelayModel::GetTypeId() [member function]
  18.426      cls.add_method('GetTypeId', 
  18.427                     'ns3::TypeId', 
  18.428 @@ -2226,10 +2262,11 @@
  18.429                     'double', 
  18.430                     [], 
  18.431                     is_const=True)
  18.432 -    cls.add_copy_constructor()
  18.433      return
  18.434  
  18.435  def register_Ns3RandomPropagationLossModel_methods(root_module, cls):
  18.436 +    ## propagation-loss-model.h: ns3::RandomPropagationLossModel::RandomPropagationLossModel(ns3::RandomPropagationLossModel const & arg0) [copy constructor]
  18.437 +    cls.add_constructor([param('ns3::RandomPropagationLossModel&', 'arg0', is_const=True)])
  18.438      ## propagation-loss-model.h: static ns3::TypeId ns3::RandomPropagationLossModel::GetTypeId() [member function]
  18.439      cls.add_method('GetTypeId', 
  18.440                     'ns3::TypeId', 
  18.441 @@ -2242,10 +2279,11 @@
  18.442                     'double', 
  18.443                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.444                     is_const=True, is_virtual=True)
  18.445 -    cls.add_copy_constructor()
  18.446      return
  18.447  
  18.448  def register_Ns3RandomPropagationDelayModel_methods(root_module, cls):
  18.449 +    ## propagation-delay-model.h: ns3::RandomPropagationDelayModel::RandomPropagationDelayModel(ns3::RandomPropagationDelayModel const & arg0) [copy constructor]
  18.450 +    cls.add_constructor([param('ns3::RandomPropagationDelayModel&', 'arg0', is_const=True)])
  18.451      ## propagation-delay-model.h: static ns3::TypeId ns3::RandomPropagationDelayModel::GetTypeId() [member function]
  18.452      cls.add_method('GetTypeId', 
  18.453                     'ns3::TypeId', 
  18.454 @@ -2258,10 +2296,11 @@
  18.455                     'ns3::Time', 
  18.456                     [param('ns3::Ptr< ns3::MobilityModel >', 'a'), param('ns3::Ptr< ns3::MobilityModel >', 'b')], 
  18.457                     is_const=True, is_virtual=True)
  18.458 -    cls.add_copy_constructor()
  18.459      return
  18.460  
  18.461  def register_Ns3AmrrWifiManager_methods(root_module, cls):
  18.462 +    ## amrr-wifi-manager.h: ns3::AmrrWifiManager::AmrrWifiManager(ns3::AmrrWifiManager const & arg0) [copy constructor]
  18.463 +    cls.add_constructor([param('ns3::AmrrWifiManager&', 'arg0', is_const=True)])
  18.464      ## amrr-wifi-manager.h: static ns3::TypeId ns3::AmrrWifiManager::GetTypeId() [member function]
  18.465      cls.add_method('GetTypeId', 
  18.466                     'ns3::TypeId', 
  18.467 @@ -2274,10 +2313,11 @@
  18.468                     'ns3::WifiRemoteStation *', 
  18.469                     [], 
  18.470                     visibility='private', is_virtual=True)
  18.471 -    cls.add_copy_constructor()
  18.472      return
  18.473  
  18.474  def register_Ns3RraaWifiManager_methods(root_module, cls):
  18.475 +    ## rraa-wifi-manager.h: ns3::RraaWifiManager::RraaWifiManager(ns3::RraaWifiManager const & arg0) [copy constructor]
  18.476 +    cls.add_constructor([param('ns3::RraaWifiManager&', 'arg0', is_const=True)])
  18.477      ## rraa-wifi-manager.h: static ns3::TypeId ns3::RraaWifiManager::GetTypeId() [member function]
  18.478      cls.add_method('GetTypeId', 
  18.479                     'ns3::TypeId', 
  18.480 @@ -2304,10 +2344,11 @@
  18.481                     'ns3::WifiRemoteStation *', 
  18.482                     [], 
  18.483                     visibility='private', is_virtual=True)
  18.484 -    cls.add_copy_constructor()
  18.485      return
  18.486  
  18.487  def register_Ns3IdealWifiManager_methods(root_module, cls):
  18.488 +    ## ideal-wifi-manager.h: ns3::IdealWifiManager::IdealWifiManager(ns3::IdealWifiManager const & arg0) [copy constructor]
  18.489 +    cls.add_constructor([param('ns3::IdealWifiManager&', 'arg0', is_const=True)])
  18.490      ## ideal-wifi-manager.h: static ns3::TypeId ns3::IdealWifiManager::GetTypeId() [member function]
  18.491      cls.add_method('GetTypeId', 
  18.492                     'ns3::TypeId', 
  18.493 @@ -2334,10 +2375,11 @@
  18.494                     'ns3::WifiRemoteStation *', 
  18.495                     [], 
  18.496                     visibility='private', is_virtual=True)
  18.497 -    cls.add_copy_constructor()
  18.498      return
  18.499  
  18.500  def register_Ns3ArfWifiManager_methods(root_module, cls):
  18.501 +    ## arf-wifi-manager.h: ns3::ArfWifiManager::ArfWifiManager(ns3::ArfWifiManager const & arg0) [copy constructor]
  18.502 +    cls.add_constructor([param('ns3::ArfWifiManager&', 'arg0', is_const=True)])
  18.503      ## arf-wifi-manager.h: static ns3::TypeId ns3::ArfWifiManager::GetTypeId() [member function]
  18.504      cls.add_method('GetTypeId', 
  18.505                     'ns3::TypeId', 
  18.506 @@ -2350,10 +2392,11 @@
  18.507                     'ns3::WifiRemoteStation *', 
  18.508                     [], 
  18.509                     visibility='private', is_virtual=True)
  18.510 -    cls.add_copy_constructor()
  18.511      return
  18.512  
  18.513  def register_Ns3AarfWifiManager_methods(root_module, cls):
  18.514 +    ## aarf-wifi-manager.h: ns3::AarfWifiManager::AarfWifiManager(ns3::AarfWifiManager const & arg0) [copy constructor]
  18.515 +    cls.add_constructor([param('ns3::AarfWifiManager&', 'arg0', is_const=True)])
  18.516      ## aarf-wifi-manager.h: static ns3::TypeId ns3::AarfWifiManager::GetTypeId() [member function]
  18.517      cls.add_method('GetTypeId', 
  18.518                     'ns3::TypeId', 
  18.519 @@ -2366,7 +2409,6 @@
  18.520                     'ns3::WifiRemoteStation *', 
  18.521                     [], 
  18.522                     visibility='private', is_virtual=True)
  18.523 -    cls.add_copy_constructor()
  18.524      return
  18.525  
  18.526  def register_functions(root_module):
    19.1 --- a/bindings/python/ns3modulegen_generated.py	Fri Aug 29 14:53:38 2008 +0100
    19.2 +++ b/bindings/python/ns3modulegen_generated.py	Fri Aug 29 14:56:24 2008 +0100
    19.3 @@ -224,8 +224,6 @@
    19.4          ns3_module_helper__local.register_types(module)
    19.5      
    19.6      root_module.end_section('ns3_module_helper')
    19.7 -    module.add_container('std::vector< unsigned int, std::allocator< unsigned int > >', 'unsigned int')
    19.8 -    module.add_container('std::list< unsigned int, std::allocator< unsigned int > >', 'unsigned int')
    19.9      
   19.10      ## Register a nested module for the namespace internal
   19.11      
    20.1 --- a/bindings/python/wscript	Fri Aug 29 14:53:38 2008 +0100
    20.2 +++ b/bindings/python/wscript	Fri Aug 29 14:56:24 2008 +0100
    20.3 @@ -21,7 +21,7 @@
    20.4      os.environ['PYTHONPATH'] = LOCAL_PYBINDGEN_PATH
    20.5  
    20.6  ## https://launchpad.net/pybindgen/
    20.7 -REQUIRED_PYBINDGEN_VERSION = (0, 9, 0, 564)
    20.8 +REQUIRED_PYBINDGEN_VERSION = (0, 9, 0, 570)
    20.9  REQUIRED_PYGCCXML_VERSION = (0, 9, 5)
   20.10  
   20.11