bindings/python/ns3_module_simulator.py
changeset 3584 4eb48239b4dc
parent 3574 b6804efbe16b
child 3731 317f9dbccc2b
equal deleted inserted replaced
3583:b6cf80679b72 3584:4eb48239b4dc
     7     module.add_class('Timer')
     7     module.add_class('Timer')
     8     ## timer.h: ns3::Timer::DestroyPolicy [enumeration]
     8     ## timer.h: ns3::Timer::DestroyPolicy [enumeration]
     9     module.add_enum('DestroyPolicy', ['CANCEL_ON_DESTROY', 'REMOVE_ON_DESTROY', 'CHECK_ON_DESTROY'], outer_class=root_module['ns3::Timer'])
     9     module.add_enum('DestroyPolicy', ['CANCEL_ON_DESTROY', 'REMOVE_ON_DESTROY', 'CHECK_ON_DESTROY'], outer_class=root_module['ns3::Timer'])
    10     ## timer.h: ns3::Timer::State [enumeration]
    10     ## timer.h: ns3::Timer::State [enumeration]
    11     module.add_enum('State', ['RUNNING', 'EXPIRED', 'SUSPENDED'], outer_class=root_module['ns3::Timer'])
    11     module.add_enum('State', ['RUNNING', 'EXPIRED', 'SUSPENDED'], outer_class=root_module['ns3::Timer'])
       
    12     ## event-impl.h: ns3::EventImpl [class]
       
    13     module.add_class('EventImpl', allow_subclassing=True)
    12     ## timer-impl.h: ns3::TimerImpl [class]
    14     ## timer-impl.h: ns3::TimerImpl [class]
    13     module.add_class('TimerImpl', allow_subclassing=True)
    15     module.add_class('TimerImpl', allow_subclassing=True)
    14     ## nstime.h: ns3::TimeUnit<1> [class]
    16     ## nstime.h: ns3::TimeUnit<1> [class]
    15     module.add_class('Time')
    17     module.add_class('Time')
    16     ## nstime.h: ns3::TimeUnit<0> [class]
    18     ## nstime.h: ns3::TimeUnit<0> [class]
    21     module.add_class('Simulator', is_singleton=True)
    23     module.add_class('Simulator', is_singleton=True)
    22     ## event-impl.h: ns3::EventLock [class]
    24     ## event-impl.h: ns3::EventLock [class]
    23     module.add_class('EventLock', allow_subclassing=True)
    25     module.add_class('EventLock', allow_subclassing=True)
    24     ## event-id.h: ns3::EventId [class]
    26     ## event-id.h: ns3::EventId [class]
    25     module.add_class('EventId')
    27     module.add_class('EventId')
    26     ## event-impl.h: ns3::EventImpl [class]
       
    27     module.add_class('EventImpl', allow_subclassing=True)
       
    28     ## realtime-simulator-impl.h: ns3::RealtimeEventLock [class]
    28     ## realtime-simulator-impl.h: ns3::RealtimeEventLock [class]
    29     module.add_class('RealtimeEventLock', parent=root_module['ns3::EventLock'])
    29     module.add_class('RealtimeEventLock', parent=root_module['ns3::EventLock'])
    30     ## high-precision-128.h: ns3::HighPrecision [class]
    30     ## high-precision-128.h: ns3::HighPrecision [class]
    31     module.add_class('HighPrecision')
    31     module.add_class('HighPrecision')
    32     ## nstime.h: ns3::TimeChecker [class]
    32     ## nstime.h: ns3::TimeChecker [class]
    45     module.add_enum('SynchronizationMode', ['SYNC_BEST_EFFORT', 'SYNC_HARD_LIMIT'], outer_class=root_module['ns3::RealtimeSimulatorImpl'])
    45     module.add_enum('SynchronizationMode', ['SYNC_BEST_EFFORT', 'SYNC_HARD_LIMIT'], outer_class=root_module['ns3::RealtimeSimulatorImpl'])
    46     ## default-simulator-impl.h: ns3::DefaultSimulatorImpl [class]
    46     ## default-simulator-impl.h: ns3::DefaultSimulatorImpl [class]
    47     module.add_class('DefaultSimulatorImpl', parent=root_module['ns3::SimulatorImpl'])
    47     module.add_class('DefaultSimulatorImpl', parent=root_module['ns3::SimulatorImpl'])
    48     ## synchronizer.h: ns3::Synchronizer [class]
    48     ## synchronizer.h: ns3::Synchronizer [class]
    49     module.add_class('Synchronizer', parent=root_module['ns3::Object'])
    49     module.add_class('Synchronizer', parent=root_module['ns3::Object'])
       
    50     ## list-scheduler.h: ns3::ListScheduler [class]
       
    51     module.add_class('ListScheduler', parent=root_module['ns3::Scheduler'])
    50     ## heap-scheduler.h: ns3::HeapScheduler [class]
    52     ## heap-scheduler.h: ns3::HeapScheduler [class]
    51     module.add_class('HeapScheduler', parent=root_module['ns3::Scheduler'])
    53     module.add_class('HeapScheduler', parent=root_module['ns3::Scheduler'])
    52     ## list-scheduler.h: ns3::ListScheduler [class]
       
    53     module.add_class('ListScheduler', parent=root_module['ns3::Scheduler'])
       
    54     ## map-scheduler.h: ns3::MapScheduler [class]
    54     ## map-scheduler.h: ns3::MapScheduler [class]
    55     module.add_class('MapScheduler', parent=root_module['ns3::Scheduler'])
    55     module.add_class('MapScheduler', parent=root_module['ns3::Scheduler'])
    56     ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer [class]
    56     ## wall-clock-synchronizer.h: ns3::WallClockSynchronizer [class]
    57     module.add_class('WallClockSynchronizer', parent=root_module['ns3::Synchronizer'])
    57     module.add_class('WallClockSynchronizer', parent=root_module['ns3::Synchronizer'])
    58     
    58     
    98     root_module = module.get_root()
    98     root_module = module.get_root()
    99     
    99     
   100 
   100 
   101 def register_methods(root_module):
   101 def register_methods(root_module):
   102     register_Ns3Timer_methods(root_module, root_module['ns3::Timer'])
   102     register_Ns3Timer_methods(root_module, root_module['ns3::Timer'])
       
   103     register_Ns3EventImpl_methods(root_module, root_module['ns3::EventImpl'])
   103     register_Ns3TimerImpl_methods(root_module, root_module['ns3::TimerImpl'])
   104     register_Ns3TimerImpl_methods(root_module, root_module['ns3::TimerImpl'])
   104     register_Ns3Time_methods(root_module, root_module['ns3::Time'])
   105     register_Ns3Time_methods(root_module, root_module['ns3::Time'])
   105     register_Ns3Scalar_methods(root_module, root_module['ns3::Scalar'])
   106     register_Ns3Scalar_methods(root_module, root_module['ns3::Scalar'])
   106     register_Ns3Watchdog_methods(root_module, root_module['ns3::Watchdog'])
   107     register_Ns3Watchdog_methods(root_module, root_module['ns3::Watchdog'])
   107     register_Ns3Simulator_methods(root_module, root_module['ns3::Simulator'])
   108     register_Ns3Simulator_methods(root_module, root_module['ns3::Simulator'])
   108     register_Ns3EventLock_methods(root_module, root_module['ns3::EventLock'])
   109     register_Ns3EventLock_methods(root_module, root_module['ns3::EventLock'])
   109     register_Ns3EventId_methods(root_module, root_module['ns3::EventId'])
   110     register_Ns3EventId_methods(root_module, root_module['ns3::EventId'])
   110     register_Ns3EventImpl_methods(root_module, root_module['ns3::EventImpl'])
       
   111     register_Ns3RealtimeEventLock_methods(root_module, root_module['ns3::RealtimeEventLock'])
   111     register_Ns3RealtimeEventLock_methods(root_module, root_module['ns3::RealtimeEventLock'])
   112     register_Ns3HighPrecision_methods(root_module, root_module['ns3::HighPrecision'])
   112     register_Ns3HighPrecision_methods(root_module, root_module['ns3::HighPrecision'])
   113     register_Ns3TimeChecker_methods(root_module, root_module['ns3::TimeChecker'])
   113     register_Ns3TimeChecker_methods(root_module, root_module['ns3::TimeChecker'])
   114     register_Ns3Scheduler_methods(root_module, root_module['ns3::Scheduler'])
   114     register_Ns3Scheduler_methods(root_module, root_module['ns3::Scheduler'])
   115     register_Ns3SchedulerEventKey_methods(root_module, root_module['ns3::Scheduler::EventKey'])
   115     register_Ns3SchedulerEventKey_methods(root_module, root_module['ns3::Scheduler::EventKey'])
   116     register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue'])
   116     register_Ns3TimeValue_methods(root_module, root_module['ns3::TimeValue'])
   117     register_Ns3SimulatorImpl_methods(root_module, root_module['ns3::SimulatorImpl'])
   117     register_Ns3SimulatorImpl_methods(root_module, root_module['ns3::SimulatorImpl'])
   118     register_Ns3RealtimeSimulatorImpl_methods(root_module, root_module['ns3::RealtimeSimulatorImpl'])
   118     register_Ns3RealtimeSimulatorImpl_methods(root_module, root_module['ns3::RealtimeSimulatorImpl'])
   119     register_Ns3DefaultSimulatorImpl_methods(root_module, root_module['ns3::DefaultSimulatorImpl'])
   119     register_Ns3DefaultSimulatorImpl_methods(root_module, root_module['ns3::DefaultSimulatorImpl'])
   120     register_Ns3Synchronizer_methods(root_module, root_module['ns3::Synchronizer'])
   120     register_Ns3Synchronizer_methods(root_module, root_module['ns3::Synchronizer'])
       
   121     register_Ns3ListScheduler_methods(root_module, root_module['ns3::ListScheduler'])
   121     register_Ns3HeapScheduler_methods(root_module, root_module['ns3::HeapScheduler'])
   122     register_Ns3HeapScheduler_methods(root_module, root_module['ns3::HeapScheduler'])
   122     register_Ns3ListScheduler_methods(root_module, root_module['ns3::ListScheduler'])
       
   123     register_Ns3MapScheduler_methods(root_module, root_module['ns3::MapScheduler'])
   123     register_Ns3MapScheduler_methods(root_module, root_module['ns3::MapScheduler'])
   124     register_Ns3WallClockSynchronizer_methods(root_module, root_module['ns3::WallClockSynchronizer'])
   124     register_Ns3WallClockSynchronizer_methods(root_module, root_module['ns3::WallClockSynchronizer'])
   125     return
   125     return
   126 
   126 
   127 def register_Ns3Timer_methods(root_module, cls):
   127 def register_Ns3Timer_methods(root_module, cls):
   187                    [])
   187                    [])
   188     ## timer.h: void ns3::Timer::Resume() [member function]
   188     ## timer.h: void ns3::Timer::Resume() [member function]
   189     cls.add_method('Resume', 
   189     cls.add_method('Resume', 
   190                    'void', 
   190                    'void', 
   191                    [])
   191                    [])
       
   192     return
       
   193 
       
   194 def register_Ns3EventImpl_methods(root_module, cls):
       
   195     ## event-impl.h: ns3::EventImpl::EventImpl(ns3::EventImpl const & arg0) [copy constructor]
       
   196     cls.add_constructor([param('ns3::EventImpl const &', 'arg0')])
       
   197     ## event-impl.h: ns3::EventImpl::EventImpl() [constructor]
       
   198     cls.add_constructor([])
       
   199     ## event-impl.h: void ns3::EventImpl::Ref() const [member function]
       
   200     cls.add_method('Ref', 
       
   201                    'void', 
       
   202                    [], 
       
   203                    is_const=True)
       
   204     ## event-impl.h: void ns3::EventImpl::Unref() const [member function]
       
   205     cls.add_method('Unref', 
       
   206                    'void', 
       
   207                    [], 
       
   208                    is_const=True)
       
   209     ## event-impl.h: void ns3::EventImpl::Invoke() [member function]
       
   210     cls.add_method('Invoke', 
       
   211                    'void', 
       
   212                    [])
       
   213     ## event-impl.h: void ns3::EventImpl::Cancel() [member function]
       
   214     cls.add_method('Cancel', 
       
   215                    'void', 
       
   216                    [])
       
   217     ## event-impl.h: bool ns3::EventImpl::IsCancelled() [member function]
       
   218     cls.add_method('IsCancelled', 
       
   219                    'bool', 
       
   220                    [])
       
   221     ## event-impl.h: static void ns3::EventImpl::SetEventLock(ns3::EventLock * eventLock) [member function]
       
   222     cls.add_method('SetEventLock', 
       
   223                    'void', 
       
   224                    [param('ns3::EventLock *', 'eventLock')], 
       
   225                    is_static=True)
       
   226     ## event-impl.h: static void ns3::EventImpl::SetNoEventLock() [member function]
       
   227     cls.add_method('SetNoEventLock', 
       
   228                    'void', 
       
   229                    [], 
       
   230                    is_static=True)
       
   231     ## event-impl.h: void ns3::EventImpl::Notify() [member function]
       
   232     cls.add_method('Notify', 
       
   233                    'void', 
       
   234                    [], 
       
   235                    is_pure_virtual=True, visibility='protected', is_virtual=True)
   192     return
   236     return
   193 
   237 
   194 def register_Ns3TimerImpl_methods(root_module, cls):
   238 def register_Ns3TimerImpl_methods(root_module, cls):
   195     ## timer-impl.h: ns3::TimerImpl::TimerImpl(ns3::TimerImpl const & arg0) [copy constructor]
   239     ## timer-impl.h: ns3::TimerImpl::TimerImpl(ns3::TimerImpl const & arg0) [copy constructor]
   196     cls.add_constructor([param('ns3::TimerImpl const &', 'arg0')])
   240     cls.add_constructor([param('ns3::TimerImpl const &', 'arg0')])
   493     ## event-id.h: uint32_t ns3::EventId::GetUid() const [member function]
   537     ## event-id.h: uint32_t ns3::EventId::GetUid() const [member function]
   494     cls.add_method('GetUid', 
   538     cls.add_method('GetUid', 
   495                    'uint32_t', 
   539                    'uint32_t', 
   496                    [], 
   540                    [], 
   497                    is_const=True)
   541                    is_const=True)
   498     return
       
   499 
       
   500 def register_Ns3EventImpl_methods(root_module, cls):
       
   501     ## event-impl.h: ns3::EventImpl::EventImpl(ns3::EventImpl const & arg0) [copy constructor]
       
   502     cls.add_constructor([param('ns3::EventImpl const &', 'arg0')])
       
   503     ## event-impl.h: ns3::EventImpl::EventImpl() [constructor]
       
   504     cls.add_constructor([])
       
   505     ## event-impl.h: void ns3::EventImpl::Ref() const [member function]
       
   506     cls.add_method('Ref', 
       
   507                    'void', 
       
   508                    [], 
       
   509                    is_const=True)
       
   510     ## event-impl.h: void ns3::EventImpl::Unref() const [member function]
       
   511     cls.add_method('Unref', 
       
   512                    'void', 
       
   513                    [], 
       
   514                    is_const=True)
       
   515     ## event-impl.h: void ns3::EventImpl::Invoke() [member function]
       
   516     cls.add_method('Invoke', 
       
   517                    'void', 
       
   518                    [])
       
   519     ## event-impl.h: void ns3::EventImpl::Cancel() [member function]
       
   520     cls.add_method('Cancel', 
       
   521                    'void', 
       
   522                    [])
       
   523     ## event-impl.h: bool ns3::EventImpl::IsCancelled() [member function]
       
   524     cls.add_method('IsCancelled', 
       
   525                    'bool', 
       
   526                    [])
       
   527     ## event-impl.h: static void ns3::EventImpl::SetEventLock(ns3::EventLock * eventLock) [member function]
       
   528     cls.add_method('SetEventLock', 
       
   529                    'void', 
       
   530                    [param('ns3::EventLock *', 'eventLock')], 
       
   531                    is_static=True)
       
   532     ## event-impl.h: static void ns3::EventImpl::SetNoEventLock() [member function]
       
   533     cls.add_method('SetNoEventLock', 
       
   534                    'void', 
       
   535                    [], 
       
   536                    is_static=True)
       
   537     ## event-impl.h: void ns3::EventImpl::Notify() [member function]
       
   538     cls.add_method('Notify', 
       
   539                    'void', 
       
   540                    [], 
       
   541                    is_pure_virtual=True, visibility='protected', is_virtual=True)
       
   542     return
   542     return
   543 
   543 
   544 def register_Ns3RealtimeEventLock_methods(root_module, cls):
   544 def register_Ns3RealtimeEventLock_methods(root_module, cls):
   545     ## realtime-simulator-impl.h: ns3::RealtimeEventLock::RealtimeEventLock(ns3::RealtimeEventLock const & arg0) [copy constructor]
   545     ## realtime-simulator-impl.h: ns3::RealtimeEventLock::RealtimeEventLock(ns3::RealtimeEventLock const & arg0) [copy constructor]
   546     cls.add_constructor([param('ns3::RealtimeEventLock const &', 'arg0')])
   546     cls.add_constructor([param('ns3::RealtimeEventLock const &', 'arg0')])
  1112                    'uint64_t', 
  1112                    'uint64_t', 
  1113                    [], 
  1113                    [], 
  1114                    is_pure_virtual=True, visibility='protected', is_virtual=True)
  1114                    is_pure_virtual=True, visibility='protected', is_virtual=True)
  1115     return
  1115     return
  1116 
  1116 
       
  1117 def register_Ns3ListScheduler_methods(root_module, cls):
       
  1118     ## list-scheduler.h: ns3::ListScheduler::ListScheduler(ns3::ListScheduler const & arg0) [copy constructor]
       
  1119     cls.add_constructor([param('ns3::ListScheduler const &', 'arg0')])
       
  1120     ## list-scheduler.h: ns3::ListScheduler::ListScheduler() [constructor]
       
  1121     cls.add_constructor([])
       
  1122     ## list-scheduler.h: void ns3::ListScheduler::Insert(ns3::EventId const & id) [member function]
       
  1123     cls.add_method('Insert', 
       
  1124                    'void', 
       
  1125                    [param('ns3::EventId const &', 'id')], 
       
  1126                    is_virtual=True)
       
  1127     ## list-scheduler.h: bool ns3::ListScheduler::IsEmpty() const [member function]
       
  1128     cls.add_method('IsEmpty', 
       
  1129                    'bool', 
       
  1130                    [], 
       
  1131                    is_const=True, is_virtual=True)
       
  1132     ## list-scheduler.h: ns3::EventId ns3::ListScheduler::PeekNext() const [member function]
       
  1133     cls.add_method('PeekNext', 
       
  1134                    'ns3::EventId', 
       
  1135                    [], 
       
  1136                    is_const=True, is_virtual=True)
       
  1137     ## list-scheduler.h: ns3::EventId ns3::ListScheduler::RemoveNext() [member function]
       
  1138     cls.add_method('RemoveNext', 
       
  1139                    'ns3::EventId', 
       
  1140                    [], 
       
  1141                    is_virtual=True)
       
  1142     ## list-scheduler.h: bool ns3::ListScheduler::Remove(ns3::EventId const & ev) [member function]
       
  1143     cls.add_method('Remove', 
       
  1144                    'bool', 
       
  1145                    [param('ns3::EventId const &', 'ev')], 
       
  1146                    is_virtual=True)
       
  1147     return
       
  1148 
  1117 def register_Ns3HeapScheduler_methods(root_module, cls):
  1149 def register_Ns3HeapScheduler_methods(root_module, cls):
  1118     ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler(ns3::HeapScheduler const & arg0) [copy constructor]
  1150     ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler(ns3::HeapScheduler const & arg0) [copy constructor]
  1119     cls.add_constructor([param('ns3::HeapScheduler const &', 'arg0')])
  1151     cls.add_constructor([param('ns3::HeapScheduler const &', 'arg0')])
  1120     ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler() [constructor]
  1152     ## heap-scheduler.h: ns3::HeapScheduler::HeapScheduler() [constructor]
  1121     cls.add_constructor([])
  1153     cls.add_constructor([])
  1138     cls.add_method('RemoveNext', 
  1170     cls.add_method('RemoveNext', 
  1139                    'ns3::EventId', 
  1171                    'ns3::EventId', 
  1140                    [], 
  1172                    [], 
  1141                    is_virtual=True)
  1173                    is_virtual=True)
  1142     ## heap-scheduler.h: bool ns3::HeapScheduler::Remove(ns3::EventId const & ev) [member function]
  1174     ## heap-scheduler.h: bool ns3::HeapScheduler::Remove(ns3::EventId const & ev) [member function]
  1143     cls.add_method('Remove', 
       
  1144                    'bool', 
       
  1145                    [param('ns3::EventId const &', 'ev')], 
       
  1146                    is_virtual=True)
       
  1147     return
       
  1148 
       
  1149 def register_Ns3ListScheduler_methods(root_module, cls):
       
  1150     ## list-scheduler.h: ns3::ListScheduler::ListScheduler(ns3::ListScheduler const & arg0) [copy constructor]
       
  1151     cls.add_constructor([param('ns3::ListScheduler const &', 'arg0')])
       
  1152     ## list-scheduler.h: ns3::ListScheduler::ListScheduler() [constructor]
       
  1153     cls.add_constructor([])
       
  1154     ## list-scheduler.h: void ns3::ListScheduler::Insert(ns3::EventId const & id) [member function]
       
  1155     cls.add_method('Insert', 
       
  1156                    'void', 
       
  1157                    [param('ns3::EventId const &', 'id')], 
       
  1158                    is_virtual=True)
       
  1159     ## list-scheduler.h: bool ns3::ListScheduler::IsEmpty() const [member function]
       
  1160     cls.add_method('IsEmpty', 
       
  1161                    'bool', 
       
  1162                    [], 
       
  1163                    is_const=True, is_virtual=True)
       
  1164     ## list-scheduler.h: ns3::EventId ns3::ListScheduler::PeekNext() const [member function]
       
  1165     cls.add_method('PeekNext', 
       
  1166                    'ns3::EventId', 
       
  1167                    [], 
       
  1168                    is_const=True, is_virtual=True)
       
  1169     ## list-scheduler.h: ns3::EventId ns3::ListScheduler::RemoveNext() [member function]
       
  1170     cls.add_method('RemoveNext', 
       
  1171                    'ns3::EventId', 
       
  1172                    [], 
       
  1173                    is_virtual=True)
       
  1174     ## list-scheduler.h: bool ns3::ListScheduler::Remove(ns3::EventId const & ev) [member function]
       
  1175     cls.add_method('Remove', 
  1175     cls.add_method('Remove', 
  1176                    'bool', 
  1176                    'bool', 
  1177                    [param('ns3::EventId const &', 'ev')], 
  1177                    [param('ns3::EventId const &', 'ev')], 
  1178                    is_virtual=True)
  1178                    is_virtual=True)
  1179     return
  1179     return