author | Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
Sat, 04 Jul 2009 08:15:48 +0200 | |
changeset 4654 | 2eaebe77d66b |
parent 4589 | c9374dcfd09a |
permissions | -rw-r--r-- |
4474
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
1 |
from pybindgen import Module, FileCodeSink, param, retval, cppclass, typehandlers |
3408 | 2 |
|
3 |
def register_types(module): |
|
4 |
root_module = module.get_root() |
|
5 |
||
6 |
## udp-echo-client.h: ns3::UdpEchoClient [class] |
|
3457 | 7 |
module.add_class('UdpEchoClient', parent=root_module['ns3::Application']) |
3408 | 8 |
## udp-echo-server.h: ns3::UdpEchoServer [class] |
3457 | 9 |
module.add_class('UdpEchoServer', parent=root_module['ns3::Application']) |
3408 | 10 |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
11 |
## Register a nested module for the namespace Config |
3408 | 12 |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
13 |
nested_module = module.add_cpp_namespace('Config') |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
14 |
register_types_ns3_Config(nested_module) |
3408 | 15 |
|
16 |
||
17 |
## Register a nested module for the namespace TimeStepPrecision |
|
18 |
||
19 |
nested_module = module.add_cpp_namespace('TimeStepPrecision') |
|
20 |
register_types_ns3_TimeStepPrecision(nested_module) |
|
21 |
||
22 |
||
4474
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
23 |
## Register a nested module for the namespace addressUtils |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
24 |
|
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
25 |
nested_module = module.add_cpp_namespace('addressUtils') |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
26 |
register_types_ns3_addressUtils(nested_module) |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
27 |
|
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
28 |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
29 |
## Register a nested module for the namespace internal |
3408 | 30 |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
31 |
nested_module = module.add_cpp_namespace('internal') |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
32 |
register_types_ns3_internal(nested_module) |
3408 | 33 |
|
34 |
||
35 |
## Register a nested module for the namespace olsr |
|
36 |
||
37 |
nested_module = module.add_cpp_namespace('olsr') |
|
38 |
register_types_ns3_olsr(nested_module) |
|
39 |
||
40 |
||
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
41 |
def register_types_ns3_Config(module): |
3408 | 42 |
root_module = module.get_root() |
43 |
||
44 |
||
45 |
def register_types_ns3_TimeStepPrecision(module): |
|
46 |
root_module = module.get_root() |
|
47 |
||
48 |
||
4474
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
49 |
def register_types_ns3_addressUtils(module): |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
50 |
root_module = module.get_root() |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
51 |
|
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
52 |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
53 |
def register_types_ns3_internal(module): |
3408 | 54 |
root_module = module.get_root() |
55 |
||
56 |
||
57 |
def register_types_ns3_olsr(module): |
|
58 |
root_module = module.get_root() |
|
59 |
||
60 |
||
61 |
def register_methods(root_module): |
|
62 |
register_Ns3UdpEchoClient_methods(root_module, root_module['ns3::UdpEchoClient']) |
|
63 |
register_Ns3UdpEchoServer_methods(root_module, root_module['ns3::UdpEchoServer']) |
|
64 |
return |
|
65 |
||
66 |
def register_Ns3UdpEchoClient_methods(root_module, cls): |
|
4241
c35796bc0b4b
rescan python
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4218
diff
changeset
|
67 |
## udp-echo-client.h: ns3::UdpEchoClient::UdpEchoClient(ns3::UdpEchoClient const & arg0) [copy constructor] |
c35796bc0b4b
rescan python
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4218
diff
changeset
|
68 |
cls.add_constructor([param('ns3::UdpEchoClient const &', 'arg0')]) |
3408 | 69 |
## udp-echo-client.h: static ns3::TypeId ns3::UdpEchoClient::GetTypeId() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
70 |
cls.add_method('GetTypeId', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
71 |
'ns3::TypeId', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
72 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
73 |
is_static=True) |
3408 | 74 |
## udp-echo-client.h: ns3::UdpEchoClient::UdpEchoClient() [constructor] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
75 |
cls.add_constructor([]) |
3408 | 76 |
## udp-echo-client.h: void ns3::UdpEchoClient::SetRemote(ns3::Ipv4Address ip, uint16_t port) [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
77 |
cls.add_method('SetRemote', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
78 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
79 |
[param('ns3::Ipv4Address', 'ip'), param('uint16_t', 'port')]) |
4589 | 80 |
## udp-echo-client.h: void ns3::UdpEchoClient::SetDataSize(uint32_t dataSize) [member function] |
81 |
cls.add_method('SetDataSize', |
|
82 |
'void', |
|
83 |
[param('uint32_t', 'dataSize')]) |
|
84 |
## udp-echo-client.h: uint32_t ns3::UdpEchoClient::GetDataSize() const [member function] |
|
85 |
cls.add_method('GetDataSize', |
|
86 |
'uint32_t', |
|
87 |
[], |
|
88 |
is_const=True) |
|
89 |
## udp-echo-client.h: void ns3::UdpEchoClient::SetFill(std::string fill) [member function] |
|
90 |
cls.add_method('SetFill', |
|
91 |
'void', |
|
92 |
[param('std::string', 'fill')]) |
|
93 |
## udp-echo-client.h: void ns3::UdpEchoClient::SetFill(uint8_t fill, uint32_t dataSize) [member function] |
|
94 |
cls.add_method('SetFill', |
|
95 |
'void', |
|
96 |
[param('uint8_t', 'fill'), param('uint32_t', 'dataSize')]) |
|
97 |
## udp-echo-client.h: void ns3::UdpEchoClient::SetFill(uint8_t * fill, uint32_t fillSize, uint32_t dataSize) [member function] |
|
98 |
cls.add_method('SetFill', |
|
99 |
'void', |
|
100 |
[param('uint8_t *', 'fill'), param('uint32_t', 'fillSize'), param('uint32_t', 'dataSize')]) |
|
3408 | 101 |
## udp-echo-client.h: void ns3::UdpEchoClient::DoDispose() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
102 |
cls.add_method('DoDispose', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
103 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
104 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
105 |
visibility='protected', is_virtual=True) |
3408 | 106 |
## udp-echo-client.h: void ns3::UdpEchoClient::StartApplication() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
107 |
cls.add_method('StartApplication', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
108 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
109 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
110 |
visibility='private', is_virtual=True) |
3408 | 111 |
## udp-echo-client.h: void ns3::UdpEchoClient::StopApplication() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
112 |
cls.add_method('StopApplication', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
113 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
114 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
115 |
visibility='private', is_virtual=True) |
3408 | 116 |
return |
117 |
||
118 |
def register_Ns3UdpEchoServer_methods(root_module, cls): |
|
4241
c35796bc0b4b
rescan python
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4218
diff
changeset
|
119 |
## udp-echo-server.h: ns3::UdpEchoServer::UdpEchoServer(ns3::UdpEchoServer const & arg0) [copy constructor] |
c35796bc0b4b
rescan python
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4218
diff
changeset
|
120 |
cls.add_constructor([param('ns3::UdpEchoServer const &', 'arg0')]) |
3408 | 121 |
## udp-echo-server.h: static ns3::TypeId ns3::UdpEchoServer::GetTypeId() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
122 |
cls.add_method('GetTypeId', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
123 |
'ns3::TypeId', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
124 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
125 |
is_static=True) |
3408 | 126 |
## udp-echo-server.h: ns3::UdpEchoServer::UdpEchoServer() [constructor] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
127 |
cls.add_constructor([]) |
3408 | 128 |
## udp-echo-server.h: void ns3::UdpEchoServer::DoDispose() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
129 |
cls.add_method('DoDispose', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
130 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
131 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
132 |
visibility='protected', is_virtual=True) |
3408 | 133 |
## udp-echo-server.h: void ns3::UdpEchoServer::StartApplication() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
134 |
cls.add_method('StartApplication', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
135 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
136 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
137 |
visibility='private', is_virtual=True) |
3408 | 138 |
## udp-echo-server.h: void ns3::UdpEchoServer::StopApplication() [member function] |
3468
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
139 |
cls.add_method('StopApplication', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
140 |
'void', |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
141 |
[], |
0bb5275704fc
Python: new pybindgen, rescan API definitions, new API definition files are more multi-line and hopefully easier to read
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3457
diff
changeset
|
142 |
visibility='private', is_virtual=True) |
3408 | 143 |
return |
144 |
||
145 |
def register_functions(root_module): |
|
146 |
module = root_module |
|
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
147 |
register_functions_ns3_Config(module.get_submodule('Config'), root_module) |
3408 | 148 |
register_functions_ns3_TimeStepPrecision(module.get_submodule('TimeStepPrecision'), root_module) |
4474
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
149 |
register_functions_ns3_addressUtils(module.get_submodule('addressUtils'), root_module) |
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
150 |
register_functions_ns3_internal(module.get_submodule('internal'), root_module) |
3408 | 151 |
register_functions_ns3_olsr(module.get_submodule('olsr'), root_module) |
152 |
return |
|
153 |
||
3855
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
154 |
def register_functions_ns3_Config(module, root_module): |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
155 |
return |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
156 |
|
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
157 |
def register_functions_ns3_TimeStepPrecision(module, root_module): |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
158 |
return |
7fdcbeea6c4f
Python: require new pybindgen and re-scan API to make the list of free functions and namespaces sorted.
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
3574
diff
changeset
|
159 |
|
4474
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
160 |
def register_functions_ns3_addressUtils(module, root_module): |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
161 |
return |
19e2b7ff3482
bindings/ changes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4454
diff
changeset
|
162 |
|
3408 | 163 |
def register_functions_ns3_internal(module, root_module): |
164 |
return |
|
165 |
||
166 |
def register_functions_ns3_olsr(module, root_module): |
|
167 |
return |
|
168 |