merge with HEAD
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Fri Aug 29 20:41:37 2008 -0700 (17 months ago)
changeset 3588ff3a7dc79a7e
parent 3587 01bebf28addd
parent 3586 728eb3f583b3
child 3591 2e2ad3734b58
merge with HEAD
     1.1 --- a/bindings/python/callbacks_list.py	Fri Aug 29 20:40:54 2008 -0700
     1.2 +++ b/bindings/python/callbacks_list.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     2.2 +++ b/bindings/python/ns3_module_bridge.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     3.2 +++ b/bindings/python/ns3_module_common.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     4.2 +++ b/bindings/python/ns3_module_contrib.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     5.2 +++ b/bindings/python/ns3_module_core.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     6.2 +++ b/bindings/python/ns3_module_csma.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     7.2 +++ b/bindings/python/ns3_module_global_routing.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     8.2 +++ b/bindings/python/ns3_module_helper.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
     9.2 +++ b/bindings/python/ns3_module_internet_stack.py	Fri Aug 29 20:41:37 2008 -0700
     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 20:40:54 2008 -0700
    10.2 +++ b/bindings/python/ns3_module_mobility.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    11.2 +++ b/bindings/python/ns3_module_node.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    12.2 +++ b/bindings/python/ns3_module_olsr.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    13.2 +++ b/bindings/python/ns3_module_onoff.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    14.2 +++ b/bindings/python/ns3_module_packet_sink.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    15.2 +++ b/bindings/python/ns3_module_point_to_point.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    16.2 +++ b/bindings/python/ns3_module_simulator.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    17.2 +++ b/bindings/python/ns3_module_udp_echo.py	Fri Aug 29 20:41:37 2008 -0700
    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 20:40:54 2008 -0700
    18.2 +++ b/bindings/python/ns3_module_wifi.py	Fri Aug 29 20:41:37 2008 -0700
    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.25