bindings/python/ns3_module_point_to_point.py
author vincent@clarinet.u-strasbg.fr
Wed, 05 Nov 2008 14:49:21 -0800
changeset 3842 545ddf9398ed
parent 3731 317f9dbccc2b
child 3855 7fdcbeea6c4f
permissions -rw-r--r--
apply patch for bug 294 (GetMulticastAddr) + emu device update + rescan
gjc@3468
     1
from pybindgen import Module, FileCodeSink, param, retval, cppclass
gjc@3408
     2
gjc@3408
     3
def register_types(module):
gjc@3408
     4
    root_module = module.get_root()
gjc@3408
     5
    
gjc@3408
     6
    ## point-to-point-channel.h: ns3::PointToPointChannel [class]
gjc@3457
     7
    module.add_class('PointToPointChannel', parent=root_module['ns3::Channel'])
gjc@3408
     8
    ## point-to-point-net-device.h: ns3::PointToPointNetDevice [class]
gjc@3457
     9
    module.add_class('PointToPointNetDevice', parent=root_module['ns3::NetDevice'])
gjc@3408
    10
    
gjc@3408
    11
    ## Register a nested module for the namespace internal
gjc@3408
    12
    
gjc@3408
    13
    nested_module = module.add_cpp_namespace('internal')
gjc@3408
    14
    register_types_ns3_internal(nested_module)
gjc@3408
    15
    
gjc@3408
    16
    
gjc@3408
    17
    ## Register a nested module for the namespace TimeStepPrecision
gjc@3408
    18
    
gjc@3408
    19
    nested_module = module.add_cpp_namespace('TimeStepPrecision')
gjc@3408
    20
    register_types_ns3_TimeStepPrecision(nested_module)
gjc@3408
    21
    
gjc@3408
    22
    
gjc@3408
    23
    ## Register a nested module for the namespace Config
gjc@3408
    24
    
gjc@3408
    25
    nested_module = module.add_cpp_namespace('Config')
gjc@3408
    26
    register_types_ns3_Config(nested_module)
gjc@3408
    27
    
gjc@3408
    28
    
gjc@3408
    29
    ## Register a nested module for the namespace olsr
gjc@3408
    30
    
gjc@3408
    31
    nested_module = module.add_cpp_namespace('olsr')
gjc@3408
    32
    register_types_ns3_olsr(nested_module)
gjc@3408
    33
    
gjc@3408
    34
gjc@3408
    35
def register_types_ns3_internal(module):
gjc@3408
    36
    root_module = module.get_root()
gjc@3408
    37
    
gjc@3408
    38
gjc@3408
    39
def register_types_ns3_TimeStepPrecision(module):
gjc@3408
    40
    root_module = module.get_root()
gjc@3408
    41
    
gjc@3408
    42
gjc@3408
    43
def register_types_ns3_Config(module):
gjc@3408
    44
    root_module = module.get_root()
gjc@3408
    45
    
gjc@3408
    46
gjc@3408
    47
def register_types_ns3_olsr(module):
gjc@3408
    48
    root_module = module.get_root()
gjc@3408
    49
    
gjc@3408
    50
gjc@3408
    51
def register_methods(root_module):
gjc@3408
    52
    register_Ns3PointToPointChannel_methods(root_module, root_module['ns3::PointToPointChannel'])
gjc@3408
    53
    register_Ns3PointToPointNetDevice_methods(root_module, root_module['ns3::PointToPointNetDevice'])
gjc@3408
    54
    return
gjc@3408
    55
gjc@3408
    56
def register_Ns3PointToPointChannel_methods(root_module, cls):
gjc@3567
    57
    ## point-to-point-channel.h: ns3::PointToPointChannel::PointToPointChannel(ns3::PointToPointChannel const & arg0) [copy constructor]
gjc@3574
    58
    cls.add_constructor([param('ns3::PointToPointChannel const &', 'arg0')])
gjc@3408
    59
    ## point-to-point-channel.h: static ns3::TypeId ns3::PointToPointChannel::GetTypeId() [member function]
gjc@3468
    60
    cls.add_method('GetTypeId', 
gjc@3468
    61
                   'ns3::TypeId', 
gjc@3468
    62
                   [], 
gjc@3468
    63
                   is_static=True)
gjc@3408
    64
    ## point-to-point-channel.h: ns3::PointToPointChannel::PointToPointChannel() [constructor]
gjc@3468
    65
    cls.add_constructor([])
gjc@3408
    66
    ## point-to-point-channel.h: void ns3::PointToPointChannel::Attach(ns3::Ptr<ns3::PointToPointNetDevice> device) [member function]
gjc@3468
    67
    cls.add_method('Attach', 
gjc@3468
    68
                   'void', 
gjc@3468
    69
                   [param('ns3::Ptr< ns3::PointToPointNetDevice >', 'device')])
gjc@3408
    70
    ## point-to-point-channel.h: bool ns3::PointToPointChannel::TransmitStart(ns3::Ptr<ns3::Packet> p, ns3::Ptr<ns3::PointToPointNetDevice> src, ns3::Time txTime) [member function]
gjc@3468
    71
    cls.add_method('TransmitStart', 
gjc@3468
    72
                   'bool', 
gjc@3468
    73
                   [param('ns3::Ptr< ns3::Packet >', 'p'), param('ns3::Ptr< ns3::PointToPointNetDevice >', 'src'), param('ns3::Time', 'txTime')])
gjc@3408
    74
    ## point-to-point-channel.h: uint32_t ns3::PointToPointChannel::GetNDevices() const [member function]
gjc@3468
    75
    cls.add_method('GetNDevices', 
gjc@3468
    76
                   'uint32_t', 
gjc@3468
    77
                   [], 
gjc@3468
    78
                   is_const=True, is_virtual=True)
gjc@3408
    79
    ## point-to-point-channel.h: ns3::Ptr<ns3::PointToPointNetDevice> ns3::PointToPointChannel::GetPointToPointDevice(uint32_t i) const [member function]
gjc@3468
    80
    cls.add_method('GetPointToPointDevice', 
gjc@3468
    81
                   'ns3::Ptr< ns3::PointToPointNetDevice >', 
gjc@3468
    82
                   [param('uint32_t', 'i')], 
gjc@3468
    83
                   is_const=True)
gjc@3408
    84
    ## point-to-point-channel.h: ns3::Ptr<ns3::NetDevice> ns3::PointToPointChannel::GetDevice(uint32_t i) const [member function]
gjc@3468
    85
    cls.add_method('GetDevice', 
gjc@3468
    86
                   'ns3::Ptr< ns3::NetDevice >', 
gjc@3468
    87
                   [param('uint32_t', 'i')], 
gjc@3468
    88
                   is_const=True, is_virtual=True)
gjc@3408
    89
    return
gjc@3408
    90
gjc@3408
    91
def register_Ns3PointToPointNetDevice_methods(root_module, cls):
gjc@3567
    92
    ## point-to-point-net-device.h: ns3::PointToPointNetDevice::PointToPointNetDevice(ns3::PointToPointNetDevice const & arg0) [copy constructor]
gjc@3574
    93
    cls.add_constructor([param('ns3::PointToPointNetDevice const &', 'arg0')])
gjc@3408
    94
    ## point-to-point-net-device.h: static ns3::TypeId ns3::PointToPointNetDevice::GetTypeId() [member function]
gjc@3468
    95
    cls.add_method('GetTypeId', 
gjc@3468
    96
                   'ns3::TypeId', 
gjc@3468
    97
                   [], 
gjc@3468
    98
                   is_static=True)
gjc@3408
    99
    ## point-to-point-net-device.h: ns3::PointToPointNetDevice::PointToPointNetDevice() [constructor]
gjc@3468
   100
    cls.add_constructor([])
gjc@3408
   101
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetDataRate(ns3::DataRate bps) [member function]
gjc@3468
   102
    cls.add_method('SetDataRate', 
gjc@3468
   103
                   'void', 
gjc@3468
   104
                   [param('ns3::DataRate', 'bps')])
gjc@3408
   105
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetInterframeGap(ns3::Time t) [member function]
gjc@3468
   106
    cls.add_method('SetInterframeGap', 
gjc@3468
   107
                   'void', 
gjc@3468
   108
                   [param('ns3::Time', 't')])
gjc@3408
   109
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::Attach(ns3::Ptr<ns3::PointToPointChannel> ch) [member function]
gjc@3468
   110
    cls.add_method('Attach', 
gjc@3468
   111
                   'bool', 
gjc@3468
   112
                   [param('ns3::Ptr< ns3::PointToPointChannel >', 'ch')])
gjc@3408
   113
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetQueue(ns3::Ptr<ns3::Queue> queue) [member function]
gjc@3468
   114
    cls.add_method('SetQueue', 
gjc@3468
   115
                   'void', 
gjc@3468
   116
                   [param('ns3::Ptr< ns3::Queue >', 'queue')])
gjc@3408
   117
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetReceiveErrorModel(ns3::Ptr<ns3::ErrorModel> em) [member function]
gjc@3468
   118
    cls.add_method('SetReceiveErrorModel', 
gjc@3468
   119
                   'void', 
gjc@3468
   120
                   [param('ns3::Ptr< ns3::ErrorModel >', 'em')])
gjc@3408
   121
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::Receive(ns3::Ptr<ns3::Packet> p) [member function]
gjc@3468
   122
    cls.add_method('Receive', 
gjc@3468
   123
                   'void', 
gjc@3468
   124
                   [param('ns3::Ptr< ns3::Packet >', 'p')])
gjc@3408
   125
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetAddress(ns3::Mac48Address addr) [member function]
gjc@3468
   126
    cls.add_method('SetAddress', 
gjc@3468
   127
                   'void', 
gjc@3468
   128
                   [param('ns3::Mac48Address', 'addr')])
gjc@3731
   129
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetFrameSize(uint16_t frameSize) [member function]
gjc@3731
   130
    cls.add_method('SetFrameSize', 
gjc@3731
   131
                   'void', 
gjc@3731
   132
                   [param('uint16_t', 'frameSize')])
gjc@3731
   133
    ## point-to-point-net-device.h: uint16_t ns3::PointToPointNetDevice::GetFrameSize() const [member function]
gjc@3731
   134
    cls.add_method('GetFrameSize', 
gjc@3731
   135
                   'uint16_t', 
gjc@3731
   136
                   [], 
gjc@3731
   137
                   is_const=True)
gjc@3408
   138
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetName(std::string const name) [member function]
gjc@3468
   139
    cls.add_method('SetName', 
gjc@3468
   140
                   'void', 
gjc@3574
   141
                   [param('std::string const', 'name')], 
gjc@3468
   142
                   is_virtual=True)
gjc@3408
   143
    ## point-to-point-net-device.h: std::string ns3::PointToPointNetDevice::GetName() const [member function]
gjc@3468
   144
    cls.add_method('GetName', 
gjc@3468
   145
                   'std::string', 
gjc@3468
   146
                   [], 
gjc@3468
   147
                   is_const=True, is_virtual=True)
gjc@3408
   148
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetIfIndex(uint32_t const index) [member function]
gjc@3468
   149
    cls.add_method('SetIfIndex', 
gjc@3468
   150
                   'void', 
gjc@3574
   151
                   [param('uint32_t const', 'index')], 
gjc@3468
   152
                   is_virtual=True)
gjc@3408
   153
    ## point-to-point-net-device.h: uint32_t ns3::PointToPointNetDevice::GetIfIndex() const [member function]
gjc@3468
   154
    cls.add_method('GetIfIndex', 
gjc@3468
   155
                   'uint32_t', 
gjc@3468
   156
                   [], 
gjc@3468
   157
                   is_const=True, is_virtual=True)
gjc@3408
   158
    ## point-to-point-net-device.h: ns3::Ptr<ns3::Channel> ns3::PointToPointNetDevice::GetChannel() const [member function]
gjc@3468
   159
    cls.add_method('GetChannel', 
gjc@3468
   160
                   'ns3::Ptr< ns3::Channel >', 
gjc@3468
   161
                   [], 
gjc@3468
   162
                   is_const=True, is_virtual=True)
gjc@3408
   163
    ## point-to-point-net-device.h: ns3::Address ns3::PointToPointNetDevice::GetAddress() const [member function]
gjc@3468
   164
    cls.add_method('GetAddress', 
gjc@3468
   165
                   'ns3::Address', 
gjc@3468
   166
                   [], 
gjc@3468
   167
                   is_const=True, is_virtual=True)
gjc@3408
   168
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::SetMtu(uint16_t const mtu) [member function]
gjc@3468
   169
    cls.add_method('SetMtu', 
gjc@3468
   170
                   'bool', 
gjc@3574
   171
                   [param('uint16_t const', 'mtu')], 
gjc@3468
   172
                   is_virtual=True)
gjc@3408
   173
    ## point-to-point-net-device.h: uint16_t ns3::PointToPointNetDevice::GetMtu() const [member function]
gjc@3468
   174
    cls.add_method('GetMtu', 
gjc@3468
   175
                   'uint16_t', 
gjc@3468
   176
                   [], 
gjc@3468
   177
                   is_const=True, is_virtual=True)
gjc@3408
   178
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::IsLinkUp() const [member function]
gjc@3468
   179
    cls.add_method('IsLinkUp', 
gjc@3468
   180
                   'bool', 
gjc@3468
   181
                   [], 
gjc@3468
   182
                   is_const=True, is_virtual=True)
gjc@3408
   183
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetLinkChangeCallback(ns3::Callback<void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty> callback) [member function]
gjc@3468
   184
    cls.add_method('SetLinkChangeCallback', 
gjc@3468
   185
                   'void', 
gjc@3468
   186
                   [param('ns3::Callback< void, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty >', 'callback')], 
gjc@3468
   187
                   is_virtual=True)
gjc@3408
   188
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::IsBroadcast() const [member function]
gjc@3468
   189
    cls.add_method('IsBroadcast', 
gjc@3468
   190
                   'bool', 
gjc@3468
   191
                   [], 
gjc@3468
   192
                   is_const=True, is_virtual=True)
gjc@3408
   193
    ## point-to-point-net-device.h: ns3::Address ns3::PointToPointNetDevice::GetBroadcast() const [member function]
gjc@3468
   194
    cls.add_method('GetBroadcast', 
gjc@3468
   195
                   'ns3::Address', 
gjc@3468
   196
                   [], 
gjc@3468
   197
                   is_const=True, is_virtual=True)
gjc@3408
   198
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::IsMulticast() const [member function]
gjc@3468
   199
    cls.add_method('IsMulticast', 
gjc@3468
   200
                   'bool', 
gjc@3468
   201
                   [], 
gjc@3468
   202
                   is_const=True, is_virtual=True)
vincent@3842
   203
    ## point-to-point-net-device.h: ns3::Address ns3::PointToPointNetDevice::GetMulticast(ns3::Ipv4Address multicastGroup) const [member function]
gjc@3468
   204
    cls.add_method('GetMulticast', 
gjc@3468
   205
                   'ns3::Address', 
gjc@3468
   206
                   [param('ns3::Ipv4Address', 'multicastGroup')], 
gjc@3468
   207
                   is_const=True, is_virtual=True)
gjc@3408
   208
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::IsPointToPoint() const [member function]
gjc@3468
   209
    cls.add_method('IsPointToPoint', 
gjc@3468
   210
                   'bool', 
gjc@3468
   211
                   [], 
gjc@3468
   212
                   is_const=True, is_virtual=True)
gjc@3408
   213
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::Send(ns3::Ptr<ns3::Packet> packet, ns3::Address const & dest, uint16_t protocolNumber) [member function]
gjc@3468
   214
    cls.add_method('Send', 
gjc@3468
   215
                   'bool', 
gjc@3574
   216
                   [param('ns3::Ptr< ns3::Packet >', 'packet'), param('ns3::Address const &', 'dest'), param('uint16_t', 'protocolNumber')], 
gjc@3468
   217
                   is_virtual=True)
gjc@3457
   218
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::SendFrom(ns3::Ptr<ns3::Packet> packet, ns3::Address const & source, ns3::Address const & dest, uint16_t protocolNumber) [member function]
gjc@3468
   219
    cls.add_method('SendFrom', 
gjc@3468
   220
                   'bool', 
gjc@3574
   221
                   [param('ns3::Ptr< ns3::Packet >', 'packet'), param('ns3::Address const &', 'source'), param('ns3::Address const &', 'dest'), param('uint16_t', 'protocolNumber')], 
gjc@3468
   222
                   is_virtual=True)
gjc@3408
   223
    ## point-to-point-net-device.h: ns3::Ptr<ns3::Node> ns3::PointToPointNetDevice::GetNode() const [member function]
gjc@3468
   224
    cls.add_method('GetNode', 
gjc@3468
   225
                   'ns3::Ptr< ns3::Node >', 
gjc@3468
   226
                   [], 
gjc@3468
   227
                   is_const=True, is_virtual=True)
gjc@3408
   228
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::SetNode(ns3::Ptr<ns3::Node> node) [member function]
gjc@3468
   229
    cls.add_method('SetNode', 
gjc@3468
   230
                   'void', 
gjc@3468
   231
                   [param('ns3::Ptr< ns3::Node >', 'node')], 
gjc@3468
   232
                   is_virtual=True)
gjc@3408
   233
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::NeedsArp() const [member function]
gjc@3468
   234
    cls.add_method('NeedsArp', 
gjc@3468
   235
                   'bool', 
gjc@3468
   236
                   [], 
gjc@3468
   237
                   is_const=True, is_virtual=True)
gjc@3567
   238
    ## 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]
gjc@3468
   239
    cls.add_method('SetReceiveCallback', 
gjc@3468
   240
                   'void', 
gjc@3731
   241
                   [param('ns3::Callback< bool, ns3::Ptr< ns3::NetDevice >, ns3::Ptr< ns3::Packet const >, unsigned short, ns3::Address const &, ns3::empty, ns3::empty >', 'cb')], 
gjc@3468
   242
                   is_virtual=True)
gjc@3567
   243
    ## 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]
gjc@3480
   244
    cls.add_method('SetPromiscReceiveCallback', 
gjc@3480
   245
                   'void', 
gjc@3731
   246
                   [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')], 
gjc@3480
   247
                   is_virtual=True)
mathieu@3584
   248
    ## point-to-point-net-device.h: bool ns3::PointToPointNetDevice::SupportsSendFrom() const [member function]
mathieu@3584
   249
    cls.add_method('SupportsSendFrom', 
gjc@3480
   250
                   'bool', 
gjc@3480
   251
                   [], 
gjc@3480
   252
                   is_const=True, is_virtual=True)
gjc@3408
   253
    ## point-to-point-net-device.h: void ns3::PointToPointNetDevice::DoDispose() [member function]
gjc@3468
   254
    cls.add_method('DoDispose', 
gjc@3468
   255
                   'void', 
gjc@3468
   256
                   [], 
gjc@3468
   257
                   visibility='private', is_virtual=True)
gjc@3408
   258
    return
gjc@3408
   259
gjc@3408
   260
def register_functions(root_module):
gjc@3408
   261
    module = root_module
gjc@3408
   262
    register_functions_ns3_internal(module.get_submodule('internal'), root_module)
gjc@3408
   263
    register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module)
gjc@3408
   264
    register_functions_ns3_Config(module.get_submodule('Config'), root_module)
gjc@3408
   265
    register_functions_ns3_olsr(module.get_submodule('olsr'), root_module)
gjc@3408
   266
    return
gjc@3408
   267
gjc@3408
   268
def register_functions_ns3_internal(module, root_module):
gjc@3408
   269
    return
gjc@3408
   270
gjc@3408
   271
def register_functions_ns3_TimeStepPrecision(module, root_module):
gjc@3408
   272
    return
gjc@3408
   273
gjc@3408
   274
def register_functions_ns3_Config(module, root_module):
gjc@3408
   275
    return
gjc@3408
   276
gjc@3408
   277
def register_functions_ns3_olsr(module, root_module):
gjc@3408
   278
    return
gjc@3408
   279