0b9b8dc40e8ab7d23654170cfa17d1c0d0da132a
[nepi.git] / src / nepi / testbeds / ns3 / factories_metadata_v3_9_RC3.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 from metadata_v3_9_RC3 import create_device, create_element, create_ipv4protocol, \
4         create_node, create_wifi_standard_model, start_application, \
5         stop_application, status_application
6
7 factories_info = dict({
8     "ns3::Ping6": dict({
9         "category": "Application",
10         "create_function": create_element,
11         "help": "",
12         "connector_types": [],
13         "stop_function": stop_application,
14         "start_function": start_application,
15         "status_function": status_application,
16         "box_attributes": ["MaxPackets",
17             "Interval",
18             "RemoteIpv6",
19             "LocalIpv6",
20             "PacketSize",
21             "StartTime",
22             "StopTime"],
23     }),
24      "ns3::UdpL4Protocol": dict({
25         "category": "Protocol",
26         "create_function": create_element,
27         "help": "",
28         "connector_types": ["node"],
29         "box_attributes": ["ProtocolNumber"],
30     }),
31      "ns3::RandomDiscPositionAllocator": dict({
32         "category": "Mobility",
33         "create_function": create_element,
34         "help": "",
35         "connector_types": [],
36         "box_attributes": ["Theta",
37             "Rho",
38             "X",
39             "Y"],
40     }),
41      "ns3::Node": dict({
42         "category": "Topology",
43         "create_function": create_node,
44         "help": "",
45         "connector_types": ["devs", "apps", "protos", "mobility"],
46         "allow_routes": True,
47         "box_attributes": [],
48     }),
49      "ns3::GridPositionAllocator": dict({
50         "category": "Mobility",
51         "create_function": create_element,
52         "help": "",
53         "connector_types": [],
54         "box_attributes": ["GridWidth",
55             "MinX",
56             "MinY",
57             "DeltaX",
58             "DeltaY",
59             "LayoutType"],
60     }),
61      "ns3::TapBridge": dict({
62         "category": "Device",
63         "create_function": create_device,
64         "help": "",
65         "connector_types": [],
66         "allow_addresses": True,
67         "box_attributes": ["Mtu",
68             "DeviceName",
69             "Gateway",
70             "IpAddress",
71             "MacAddress",
72             "Netmask",
73             "Start",
74             "Stop"],
75     }),
76      "ns3::FlowMonitor": dict({
77         "category": "",
78         "create_function": create_element,
79         "help": "",
80         "connector_types": [],
81         "box_attributes": ["MaxPerHopDelay",
82             "DelayBinWidth",
83             "JitterBinWidth",
84             "PacketSizeBinWidth",
85             "FlowInterruptionsBinWidth",
86             "FlowInterruptionsMinTime"],
87     }),
88      "ns3::ConstantVelocityMobilityModel": dict({
89         "category": "Mobility",
90         "create_function": create_element,
91         "help": "",
92         "connector_types": ["node"],
93         "box_attributes": ["Position",
94            "Velocity"],
95     }),
96      "ns3::V4Ping": dict({
97         "category": "Application",
98         "create_function": create_element,
99         "help": "",
100         "connector_types": ["node"],
101         "stop_function": stop_application,
102         "start_function": start_application,
103         "status_function": status_application,
104         "box_attributes": ["Remote",
105             "Verbose",
106             "Interval",
107             "Size",
108             "StartTime",
109             "StopTime"],
110     }),
111      "ns3::dot11s::PeerLink": dict({
112         "category": "",
113         "create_function": create_element,
114         "help": "",
115         "connector_types": [],
116         "box_attributes": ["RetryTimeout",
117             "HoldingTimeout",
118             "ConfirmTimeout",
119             "MaxRetries",
120             "MaxBeaconLoss",
121             "MaxPacketFailure"],
122     }),
123      "ns3::PointToPointNetDevice": dict({
124         "category": "Device",
125         "create_function": create_device,
126         "help": "",
127         "connector_types": ["node", "err", "queue", "chan"],
128         "allow_addresses": True,
129         "box_attributes": ["Mtu",
130             "Address",
131             "DataRate",
132             "InterframeGap"],
133         "traces": ["p2ppcap"]
134     }),
135      "ns3::NakagamiPropagationLossModel": dict({
136         "category": "Loss",
137         "create_function": create_element,
138         "help": "",
139         "connector_types": [],
140         "box_attributes": ["Distance1",
141             "Distance2",
142             "m0",
143             "m1",
144             "m2"],
145     }),
146      "ns3::AarfWifiManager": dict({
147         "category": "Manager",
148         "create_function": create_element,
149         "help": "",
150         "connector_types": [],
151         "box_attributes": ["SuccessK",
152             "TimerK",
153             "MaxSuccessThreshold",
154             "MinTimerThreshold",
155             "MinSuccessThreshold",
156             "IsLowLatency",
157             "MaxSsrc",
158             "MaxSlrc",
159             "RtsCtsThreshold",
160             "FragmentationThreshold",
161             "NonUnicastMode"],
162     }),
163      "ns3::Ipv6OptionJumbogram": dict({
164         "category": "",
165         "create_function": create_element,
166         "help": "",
167         "connector_types": [],
168         "box_attributes": ["OptionNumber"],
169     }),
170      "ns3::TwoRayGroundPropagationLossModel": dict({
171         "category": "Loss",
172         "create_function": create_element,
173         "help": "",
174         "connector_types": [],
175         "box_attributes": ["Lambda",
176             "SystemLoss",
177             "MinDistance",
178             "HeightAboveZ"],
179     }),
180      "ns3::OnOffApplication": dict({
181         "category": "Application",
182         "create_function": create_element,
183         "help": "",
184         "connector_types": ["node"],
185         "stop_function": stop_application,
186         "start_function": start_application,
187         "status_function": status_application,
188         "box_attributes": ["DataRate",
189             "PacketSize",
190             "Remote",
191             "OnTime",
192             "OffTime",
193             "MaxBytes",
194             "Protocol",
195             "StartTime",
196             "StopTime"],
197     }),
198      "ns3::AdhocWifiMac": dict({
199         "category": "Mac",
200         "create_function": create_element,
201         "help": "",
202         "connector_types": [],
203         "box_attributes": ["CtsTimeout",
204             "AckTimeout",
205             "BasicBlockAckTimeout",
206             "CompressedBlockAckTimeout",
207             "Sifs",
208             "EifsNoDifs",
209             "Slot",
210             "Pifs",
211             "MaxPropagationDelay",
212             "Ssid"],
213     }),
214      "ns3::ConstantAccelerationMobilityModel": dict({
215         "category": "Mobility",
216         "create_function": create_element,
217         "help": "",
218         "connector_types": ["node"],
219         "box_attributes": ["Position",
220             "Velocity"],
221     }),
222      "ns3::GaussMarkovMobilityModel": dict({
223         "category": "Mobility",
224         "create_function": create_element,
225         "help": "",
226         "connector_types": [],
227         "box_attributes": ["Bounds",
228             "TimeStep",
229             "Alpha",
230             "MeanVelocity",
231             "MeanDirection",
232             "MeanPitch",
233             "NormalVelocity",
234             "NormalDirection",
235             "NormalPitch",
236             "Position",
237             "Velocity"],
238     }),
239      "ns3::dot11s::HwmpProtocol": dict({
240         "category": "Protocol",
241         "create_function": create_element,
242         "help": "",
243         "connector_types": [],
244         "box_attributes": ["RandomStart",
245             "MaxQueueSize",
246             "Dot11MeshHWMPmaxPREQretries",
247             "Dot11MeshHWMPnetDiameterTraversalTime",
248             "Dot11MeshHWMPpreqMinInterval",
249             "Dot11MeshHWMPperrMinInterval",
250             "Dot11MeshHWMPactiveRootTimeout",
251             "Dot11MeshHWMPactivePathTimeout",
252             "Dot11MeshHWMPpathToRootInterval",
253             "Dot11MeshHWMPrannInterval",
254             "MaxTtl",
255             "UnicastPerrThreshold",
256             "UnicastPreqThreshold",
257             "UnicastDataThreshold",
258             "DoFlag",
259             "RfFlag"],
260     }),
261      "ns3::NscTcpL4Protocol": dict({
262         "category": "Protocol",
263         "create_function": create_element,
264         "help": "",
265         "connector_types": [],
266         "box_attributes": ["Library",
267           "ProtocolNumber"],
268     }),
269      "ns3::dot11s::AirtimeLinkMetricCalculator": dict({
270         "category": "",
271         "create_function": create_element,
272         "help": "",
273         "connector_types": [],
274         "box_attributes": ["Dot11sMeshHeaderLength"],
275     }),
276      "ns3::UanMacCw": dict({
277         "category": "",
278         "create_function": create_element,
279         "help": "",
280         "connector_types": [],
281         "box_attributes": ["CW",
282            "SlotTime"],
283     }),
284      "ns3::AthstatsWifiTraceSink": dict({
285         "category": "",
286         "create_function": create_element,
287         "help": "",
288         "connector_types": [],
289         "box_attributes": ["Interval"],
290     }),
291      "ns3::FlameStack": dict({
292         "category": "",
293         "create_function": create_element,
294         "help": "",
295         "connector_types": [],
296         "box_attributes": [],
297     }),
298      "ns3::UanMacRc": dict({
299         "category": "",
300         "create_function": create_element,
301         "help": "",
302         "connector_types": [],
303         "box_attributes": ["RetryRate",
304             "MaxFrames",
305             "QueueLimit",
306             "SIFS",
307             "NumberOfRates",
308             "MinRetryRate",
309             "RetryStep",
310             "NumberOfRetryRates",
311             "MaxPropDelay"],
312     }),
313      "ns3::WaypointMobilityModel": dict({
314         "category": "Mobility",
315         "create_function": create_element,
316         "help": "",
317         "connector_types": [],
318         "box_attributes": ["WaypointsLeft",
319             "Position",
320             "Velocity"],
321     }),
322      "ns3::FileDescriptorNetDevice": dict({
323         "category": "Device",
324         "create_function": create_device,
325         "help": "Network interface associated to a file descriptor",
326         "connector_types": ["node", "fd"],
327         "allow_addresses": True,
328         "box_attributes": ["Address"],
329         "traces": ["fdpcap"]
330     }),
331      "ns3::CsmaNetDevice": dict({
332         "category": "Device",
333         "create_function": create_device,
334         "help": "CSMA (carrier sense, multiple access) interface",
335         "connector_types": ["node", "chan", "err", "queue"],
336         "allow_addresses": True,
337         "box_attributes": ["Address",
338             "Mtu",
339             "SendEnable",
340             "ReceiveEnable"],
341         "traces": ["csmapcap", "csmapcap_promisc"]
342     }),
343      "ns3::UanPropModelThorp": dict({
344         "category": "",
345         "create_function": create_element,
346         "help": "",
347         "connector_types": [],
348         "box_attributes": ["SpreadCoef"],
349     }),
350      "ns3::NqstaWifiMac": dict({
351         "category": "Mac",
352         "create_function": create_element,
353         "help": "",
354         "connector_types": [],
355         "box_attributes": ["ProbeRequestTimeout",
356             "AssocRequestTimeout",
357             "MaxMissedBeacons",
358             "CtsTimeout",
359             "AckTimeout",
360             "BasicBlockAckTimeout",
361             "CompressedBlockAckTimeout",
362             "Sifs",
363             "EifsNoDifs",
364             "Slot",
365             "Pifs",
366             "MaxPropagationDelay",
367             "Ssid"],
368     }),
369      "ns3::Icmpv6L4Protocol": dict({
370         "category": "Protocol",
371         "create_function": create_element,
372         "help": "",
373         "connector_types": [],
374         "box_attributes": ["DAD",
375             "ProtocolNumber"],
376     }),
377      "ns3::SimpleNetDevice": dict({
378         "category": "Device",
379         "create_function": create_device,
380         "help": "",
381         "connector_types": ["node", "chan"],
382         "allow_addresses": True,
383         "box_attributes": [],
384     }),
385      "ns3::FriisPropagationLossModel": dict({
386         "category": "Loss",
387         "create_function": create_element,
388         "help": "",
389         "connector_types": [],
390         "box_attributes": ["Lambda",
391             "SystemLoss",
392             "MinDistance"],
393     }),
394      "ns3::Ipv6OptionRouterAlert": dict({
395         "category": "",
396         "create_function": create_element,
397         "help": "",
398         "connector_types": [],
399         "box_attributes": ["OptionNumber"],
400     }),
401      "ns3::UniformDiscPositionAllocator": dict({
402         "category": "Mobility",
403         "create_function": create_element,
404         "help": "",
405         "connector_types": [],
406         "box_attributes": ["rho",
407             "X",
408             "Y"],
409     }),
410      "ns3::RandomBoxPositionAllocator": dict({
411         "category": "Mobility",
412         "create_function": create_element,
413         "help": "",
414         "connector_types": [],
415         "box_attributes": ["X",
416             "Y",
417             "Z"],
418     }),
419      "ns3::Ipv6ExtensionDestination": dict({
420         "category": "",
421         "create_function": create_element,
422         "help": "",
423         "connector_types": [],
424         "box_attributes": ["ExtensionNumber"],
425     }),
426      "ns3::LoopbackNetDevice": dict({
427         "category": "Device",
428         "create_function": create_device,
429         "help": "",
430         "connector_types": [],
431         "box_attributes": [],
432     }),
433      "ns3::ConstantSpeedPropagationDelayModel": dict({
434         "category": "Delay",
435         "create_function": create_element,
436         "help": "",
437         "connector_types": ["chan"],
438         "box_attributes": ["Speed"],
439     }),
440      "ns3::Ipv6ExtensionHopByHop": dict({
441         "category": "",
442         "create_function": create_element,
443         "help": "",
444         "connector_types": [],
445         "box_attributes": ["ExtensionNumber"],
446     }),
447      "ns3::BridgeChannel": dict({
448         "category": "Channel",
449         "create_function": create_element,
450         "help": "",
451         "connector_types": [],
452         "box_attributes": [],
453     }),
454      "ns3::Radvd": dict({
455         "category": "",
456         "create_function": create_element,
457         "help": "",
458         "connector_types": [],
459         "box_attributes": ["StartTime",
460             "StopTime"],
461     }),
462      "ns3::PacketSocket": dict({
463         "category": "",
464         "create_function": create_element,
465         "help": "",
466         "connector_types": [],
467         "box_attributes": ["RcvBufSize"],
468     }),
469      "ns3::flame::FlameProtocol": dict({
470         "category": "Protocol",
471         "create_function": create_element,
472         "help": "",
473         "connector_types": [],
474         "box_attributes": ["BroadcastInterval",
475             "MaxCost"],
476     }),
477      "ns3::Cost231PropagationLossModel": dict({
478         "category": "Loss",
479         "create_function": create_element,
480         "help": "",
481         "connector_types": [],
482         "box_attributes": ["Lambda",
483             "Frequency",
484             "BSAntennaHeight",
485             "SSAntennaHeight",
486             "MinDistance"],
487     }),
488      "ns3::Ipv6ExtensionESP": dict({
489         "category": "",
490         "create_function": create_element,
491         "help": "",
492         "connector_types": [],
493         "box_attributes": ["ExtensionNumber"],
494     }),
495      "ns3::CaraWifiManager": dict({
496         "category": "Manager",
497         "create_function": create_element,
498         "help": "",
499         "connector_types": [],
500         "box_attributes": ["ProbeThreshold",
501             "FailureThreshold",
502             "SuccessThreshold",
503             "Timeout",
504             "IsLowLatency",
505             "MaxSsrc",
506             "MaxSlrc",
507             "RtsCtsThreshold",
508             "FragmentationThreshold",
509             "NonUnicastMode"],
510     
511     }),
512      "ns3::RttMeanDeviation": dict({
513         "category": "",
514         "create_function": create_element,
515         "help": "",
516         "connector_types": [],
517         "box_attributes": ["Gain",
518             "MaxMultiplier",
519             "InitialEstimation",
520             "MinRTO"],
521     }),
522      "ns3::Icmpv4L4Protocol": dict({
523         "category": "Protocol",
524         "create_function": create_element,
525         "help": "",
526         "connector_types": ["node"],
527         "box_attributes": ["ProtocolNumber"],
528     }),
529      "ns3::WaveformGenerator": dict({
530         "category": "",
531         "create_function": create_element,
532         "help": "",
533         "connector_types": [],
534         "box_attributes": ["Period",
535             "DutyCycle"],
536     }),
537      "ns3::YansWifiChannel": dict({
538         "category": "Channel",
539         "create_function": create_element,
540         "help": "",
541         "connector_types": ["phys", "delay", "loss"],
542         "box_attributes": [],
543     }),
544      "ns3::SimpleChannel": dict({
545         "category": "Channel",
546         "create_function": create_element,
547         "help": "",
548         "connector_types": ["devs"],
549         "box_attributes": [],
550     }),
551      "ns3::Ipv6ExtensionFragment": dict({
552         "category": "",
553         "create_function": create_element,
554         "help": "",
555         "connector_types": [],
556         "box_attributes": ["ExtensionNumber"],
557     }),
558      "ns3::Dot11sStack": dict({
559         "category": "",
560         "create_function": create_element,
561         "help": "",
562         "connector_types": [],
563         "box_attributes": ["Root"],
564     }),
565      "ns3::FriisSpectrumPropagationLossModel": dict({
566         "category": "Loss",
567         "create_function": create_element,
568         "help": "",
569         "connector_types": [],
570         "box_attributes": [],
571     }),
572      "ns3::RandomRectanglePositionAllocator": dict({
573         "category": "Mobility",
574         "create_function": create_element,
575         "help": "",
576         "connector_types": [],
577         "box_attributes": ["X",
578            "Y"],
579     }),
580      "ns3::NqapWifiMac": dict({
581         "category": "",
582         "create_function": create_element,
583         "help": "",
584         "connector_types": [],
585         "box_attributes": ["BeaconInterval",
586             "BeaconGeneration",
587             "CtsTimeout",
588             "AckTimeout",
589             "BasicBlockAckTimeout",
590             "CompressedBlockAckTimeout",
591             "Sifs",
592             "EifsNoDifs",
593             "Slot",
594             "Pifs",
595             "MaxPropagationDelay",
596             "Ssid"],
597     }),
598      "ns3::HierarchicalMobilityModel": dict({
599         "category": "Mobility",
600         "create_function": create_element,
601         "help": "",
602         "connector_types": ["node"],
603         "box_attributes": ["Position",
604             "Velocity"],
605     }),
606      "ns3::ThreeLogDistancePropagationLossModel": dict({
607         "category": "Loss",
608         "create_function": create_element,
609         "help": "",
610         "connector_types": [],
611         "box_attributes": ["Distance0",
612             "Distance1",
613             "Distance2",
614             "Exponent0",
615             "Exponent1",
616             "Exponent2",
617             "ReferenceLoss"],
618     }),
619      "ns3::UanNoiseModelDefault": dict({
620         "category": "",
621         "create_function": create_element,
622         "help": "",
623         "connector_types": [],
624         "box_attributes": ["Wind",
625             "Shipping"],
626     }),
627      "ns3::dot11s::HwmpRtable": dict({
628         "category": "",
629         "create_function": create_element,
630         "help": "",
631         "connector_types": [],
632         "box_attributes": [],
633     }),
634      "ns3::PacketBurst": dict({
635         "category": "",
636         "create_function": create_element,
637         "help": "",
638         "connector_types": [],
639         "box_attributes": [],
640     }),
641      "ns3::RandomPropagationDelayModel": dict({
642         "category": "Delay",
643         "create_function": create_element,
644         "help": "",
645         "connector_types": [],
646         "box_attributes": ["Variable"],
647     }),
648      "ns3::ArpL3Protocol": dict({
649         "category": "Protocol",
650         "create_function": create_element,
651         "help": "",
652         "connector_types": ["node"],
653         "box_attributes": [],
654     }),
655      "ns3::SteadyStateRandomWaypointMobilityModel": dict({
656         "category": "Mobility",
657         "create_function": create_element,
658         "help": "",
659         "connector_types": [],
660         "box_attributes": ["MinSpeed",
661             "MaxSpeed",
662             "MinPause",
663             "MaxPause",
664             "MinX",
665             "MaxX",
666             "MinY",
667             "MaxY",
668             "Position",
669             "Velocity"],
670     }),
671      "ns3::BaseStationNetDevice": dict({
672         "category": "Device",
673         "create_function": create_device,
674         "help": "",
675         "connector_types": [],
676         "allow_addresses": True,
677         "box_attributes": ["InitialRangInterval",
678             "DcdInterval",
679             "UcdInterval",
680             "IntervalT8",
681             "RangReqOppSize",
682             "BwReqOppSize",
683             "MaxRangCorrectionRetries",
684             "Mtu",
685             "RTG",
686             "TTG"],
687     }),
688      "ns3::UdpServer": dict({
689         "category": "Application",
690         "create_function": create_element,
691         "help": "",
692         "connector_types": [],
693         "stop_function": stop_application,
694         "start_function": start_application,
695         "status_function": status_application,
696         "box_attributes": ["Port",
697             "PacketWindowSize",
698             "StartTime",
699             "StopTime"],
700     }),
701      "ns3::AarfcdWifiManager": dict({
702         "category": "Manager",
703         "create_function": create_element,
704         "help": "",
705         "connector_types": [],
706         "box_attributes": ["SuccessK",
707             "TimerK",
708             "MaxSuccessThreshold",
709             "MinTimerThreshold",
710             "MinSuccessThreshold",
711             "MinRtsWnd",
712             "MaxRtsWnd",
713             "TurnOffRtsAfterRateDecrease",
714             "TurnOnRtsAfterRateIncrease",
715             "IsLowLatency",
716             "MaxSsrc",
717             "MaxSlrc",
718             "RtsCtsThreshold",
719             "FragmentationThreshold",
720             "NonUnicastMode"],
721     }),
722      "ns3::UanTransducerHd": dict({
723         "category": "",
724         "create_function": create_element,
725         "help": "",
726         "connector_types": [],
727         "box_attributes": [],
728     }),
729      "ns3::LogDistancePropagationLossModel": dict({
730         "category": "Loss",
731         "create_function": create_element,
732         "help": "",
733         "connector_types": ["prev", "next"],
734         "box_attributes": ["Exponent",
735             "ReferenceDistance",
736             "ReferenceLoss"],
737     }),
738      "ns3::EmuNetDevice": dict({
739         "category": "Device",
740         "create_function": create_device,
741         "help": "",
742         "connector_types": ["node", "queue"],
743         "box_attributes": ["Mtu",
744             "Address",
745             "DeviceName",
746             "Start",
747             "Stop",
748             "RxQueueSize"],
749     }),
750      "ns3::Ipv6ExtensionLooseRouting": dict({
751         "category": "",
752         "create_function": create_element,
753         "help": "",
754         "connector_types": [],
755         "box_attributes": ["ExtensionNumber"],
756     }),
757      "ns3::RandomWaypointMobilityModel": dict({
758         "category": "Mobility",
759         "create_function": create_element,
760         "help": "",
761         "connector_types": ["node"],
762         "box_attributes": ["Speed",
763             "Pause",
764             "Position",
765             "Velocity"],
766     }),
767      "ns3::RangePropagationLossModel": dict({
768         "category": "",
769         "create_function": create_element,
770         "help": "",
771         "connector_types": [],
772         "box_attributes": ["MaxRange"],
773     }),
774      "ns3::AlohaNoackNetDevice": dict({
775         "category": "Device",
776         "create_function": create_element,
777         "help": "",
778         "connector_types": [],
779         "allow_addresses": True,
780         "box_attributes": ["Address",
781             "Mtu"],
782     }),
783      "ns3::MatrixPropagationLossModel": dict({
784         "category": "Loss",
785         "create_function": create_element,
786         "help": "",
787         "connector_types": [],
788         "box_attributes": ["DefaultLoss"],
789     }),
790      "ns3::WifiNetDevice": dict({
791         "category": "Device",
792         "create_function": create_device,
793         "help": "",
794         "connector_types": ["node", "mac", "phy", "manager"],
795         "allow_addresses": True,
796         "box_attributes": ["Mtu"],
797     }),
798      "ns3::CsmaChannel": dict({
799         "category": "Channel",
800         "create_function": create_element,
801         "help": "",
802         "connector_types": ["devs"],
803         "box_attributes": ["DataRate",
804             "Delay"],
805     }),
806      "ns3::BridgeNetDevice": dict({
807         "category": "Device",
808         "create_function": create_device,
809         "help": "",
810         "connector_types": ["node"],
811         "allow_addresses": True,
812         "box_attributes": ["Mtu",
813            "EnableLearning",
814            "ExpirationTime"],
815     }),
816      "ns3::Ipv6ExtensionRouting": dict({
817         "category": "",
818         "create_function": create_element,
819         "help": "",
820         "connector_types": [],
821         "box_attributes": ["ExtensionNumber"],
822     }),
823      "ns3::QstaWifiMac": dict({
824         "category": "Mac",
825         "create_function": create_wifi_standard_model,
826         "help": "Station Wifi MAC Model",
827         "connector_types": ["dev"],
828         "box_attributes": ["ProbeRequestTimeout",
829             "AssocRequestTimeout",
830             "MaxMissedBeacons",
831             "CtsTimeout",
832             "AckTimeout",
833             "BasicBlockAckTimeout",
834             "CompressedBlockAckTimeout",
835             "Sifs",
836             "EifsNoDifs",
837             "Slot",
838             "Pifs",
839             "MaxPropagationDelay",
840             "Ssid"],
841     }),
842      "ns3::UdpEchoClient": dict({
843         "category": "Application",
844         "create_function": create_element,
845         "help": "",
846         "connector_types": ["node"],
847         "stop_function": stop_application,
848         "start_function": start_application,
849         "status_function": status_application,
850         "box_attributes": ["MaxPackets",
851             "Interval",
852             "RemoteAddress",
853             "RemotePort",
854             "PacketSize",
855             "StartTime",
856             "StopTime"],
857     }),
858      "ns3::UdpClient": dict({
859         "category": "Application",
860         "create_function": create_element,
861         "help": "",
862         "connector_types": [],
863         "stop_function": stop_application,
864         "start_function": start_application,
865         "status_function": status_application,
866         "box_attributes": ["MaxPackets",
867             "Interval",
868             "RemoteAddress",
869             "RemotePort",
870             "PacketSize",
871             "StartTime",
872             "StopTime"],
873     }),
874      "ns3::PointToPointChannel": dict({
875         "category": "Channel",
876         "create_function": create_element,
877         "help": "",
878         "connector_types": ["dev2"],
879         "box_attributes": ["Delay"],
880     }),
881      "ns3::Ipv6StaticRouting": dict({
882         "category": "",
883         "create_function": create_element,
884         "help": "",
885         "connector_types": [],
886         "box_attributes": [],
887     }),
888      "ns3::DropTailQueue": dict({
889         "category": "Device",
890         "create_function": create_element,
891         "help": "",
892         "connector_types": ["dev"],
893         "box_attributes": ["MaxPackets",
894            "MaxBytes"],
895     }),
896      "ns3::ConstantPositionMobilityModel": dict({
897         "category": "Mobility",
898         "create_function": create_element,
899         "help": "",
900         "connector_types": ["node"],
901         "box_attributes": ["Position",
902             "Velocity"],
903     }),
904      "ns3::FixedRssLossModel": dict({
905         "category": "Loss",
906         "create_function": create_element,
907         "help": "",
908         "connector_types": [],
909         "box_attributes": ["Rss"],
910     }),
911      "ns3::EnergySourceContainer": dict({
912         "category": "",
913         "create_function": create_element,
914         "help": "",
915         "connector_types": [],
916         "box_attributes": [],
917     }),
918      "ns3::RandomWalk2dMobilityModel": dict({
919         "category": "Mobility",
920         "create_function": create_element,
921         "help": "",
922         "connector_types": ["node"],
923         "box_attributes": ["Bounds",
924             "Time",
925             "Distance",
926             "Mode",
927             "Direction",
928             "Speed",
929             "Position",
930             "Velocity"],
931     }),
932      "ns3::ListPositionAllocator": dict({
933         "category": "",
934         "create_function": create_element,
935         "help": "",
936         "connector_types": [],
937         "box_attributes": [],
938     }),
939      "ns3::dot11s::PeerManagementProtocol": dict({
940         "category": "Protocol",
941         "create_function": create_element,
942         "help": "",
943         "connector_types": [],
944         "box_attributes": ["MaxNumberOfPeerLinks",
945             "MaxBeaconShiftValue",
946             "EnableBeaconCollisionAvoidance"],
947     }),
948      "ns3::MeshPointDevice": dict({
949         "category": "Device",
950         "create_function": create_device,
951         "help": "",
952         "connector_types": [],
953         "allow_addresses": True,
954         "box_attributes": ["Mtu"],
955     }),
956      "ns3::BasicEnergySource": dict({
957         "category": "",
958         "create_function": create_element,
959         "help": "",
960         "connector_types": [],
961         "box_attributes": ["BasicEnergySourceInitialEnergyJ",
962             "BasicEnergySupplyVoltageV",
963             "PeriodicEnergyUpdateInterval"],
964     }),
965      "ns3::Ipv6OptionPadn": dict({
966         "category": "",
967         "create_function": create_element,
968         "help": "",
969         "connector_types": [],
970         "box_attributes": ["OptionNumber"],
971     }),
972      "ns3::QapWifiMac": dict({
973         "category": "Mac",
974         "create_function": create_wifi_standard_model,
975         "help": "Access point Wifi MAC Model",
976         "connector_types": ["dev"],
977         "box_attributes": ["BeaconInterval",
978             "BeaconGeneration",
979             "CtsTimeout",
980             "AckTimeout",
981             "BasicBlockAckTimeout",
982             "CompressedBlockAckTimeout",
983             "Sifs",
984             "EifsNoDifs",
985             "Slot",
986             "Pifs",
987             "MaxPropagationDelay",
988             "Ssid"],
989     }),
990      "ns3::YansErrorRateModel": dict({
991         "category": "Error",
992         "create_function": create_element,
993         "help": "",
994         "connector_types": [],
995         "box_attributes": [],
996     }),
997      "ns3::WifiMacQueue": dict({
998         "category": "",
999         "create_function": create_element,
1000         "help": "",
1001         "connector_types": [],
1002         "box_attributes": ["MaxPacketNumber",
1003            "MaxDelay"],
1004     }),
1005      "ns3::NonCommunicatingNetDevice": dict({
1006         "category": "Device",
1007         "create_function": create_device,
1008         "help": "",
1009         "connector_types": [],
1010         "allow_addresses": True,
1011         "box_attributes": [],
1012     }),
1013      "ns3::RateErrorModel": dict({
1014         "category": "Error",
1015         "create_function": create_element,
1016         "help": "",
1017         "connector_types": [],
1018         "box_attributes": ["ErrorUnit",
1019             "ErrorRate",
1020             "RanVar",
1021             "IsEnabled"],
1022     }),
1023      "ns3::MeshWifiInterfaceMac": dict({
1024         "category": "",
1025         "create_function": create_element,
1026         "help": "",
1027         "connector_types": [],
1028         "box_attributes": ["BeaconInterval",
1029             "RandomStart",
1030             "BeaconGeneration",
1031             "CtsTimeout",
1032             "AckTimeout",
1033             "BasicBlockAckTimeout",
1034             "CompressedBlockAckTimeout",
1035             "Sifs",
1036             "EifsNoDifs",
1037             "Slot",
1038             "Pifs",
1039             "MaxPropagationDelay",
1040             "Ssid"],
1041     }),
1042      "ns3::UanPhyCalcSinrDual": dict({
1043         "category": "",
1044         "create_function": create_element,
1045         "help": "",
1046         "connector_types": [],
1047         "box_attributes": [],
1048     }),
1049      "ns3::Ipv6ExtensionAH": dict({
1050         "category": "",
1051         "create_function": create_element,
1052         "help": "",
1053         "connector_types": [],
1054         "box_attributes": ["ExtensionNumber"],
1055     }),
1056      "ns3::SingleModelSpectrumChannel": dict({
1057         "category": "Channel",
1058         "create_function": create_element,
1059         "help": "",
1060         "connector_types": [],
1061         "box_attributes": [],
1062     }),
1063      "ns3::YansWifiPhy": dict({
1064         "category": "Phy",
1065         "create_function": create_element,
1066         "help": "",
1067         "connector_types": ["dev", "err", "chan"],
1068         "box_attributes": ["EnergyDetectionThreshold",
1069             "CcaMode1Threshold",
1070             "TxGain",
1071             "RxGain",
1072             "TxPowerLevels",
1073             "TxPowerEnd",
1074             "TxPowerStart",
1075             "RxNoiseFigure",
1076             "ChannelSwitchDelay",
1077             "ChannelNumber"],
1078         "traces": ["yanswifipcap"]
1079     }),
1080      "ns3::WifiRadioEnergyModel": dict({
1081         "category": "",
1082         "create_function": create_element,
1083         "help": "",
1084         "connector_types": [],
1085         "box_attributes": ["TxCurrentA",
1086             "RxCurrentA",
1087             "IdleCurrentA",
1088             "SleepCurrentA"],
1089     }),
1090      "ns3::EdcaTxopN": dict({
1091         "category": "",
1092         "create_function": create_element,
1093         "help": "",
1094         "connector_types": [],
1095         "box_attributes": ["BlockAckThreshold",
1096             "MinCw",
1097             "MaxCw",
1098             "Aifsn"],
1099     }),
1100      "ns3::UanPhyPerGenDefault": dict({
1101         "category": "",
1102         "create_function": create_element,
1103         "help": "",
1104         "connector_types": [],
1105         "box_attributes": ["Threshold"],
1106     }),
1107      "ns3::IdealWifiManager": dict({
1108         "category": "Manager",
1109         "create_function": create_element,
1110         "help": "",
1111         "connector_types": [],
1112         "box_attributes": ["BerThreshold",
1113             "IsLowLatency",
1114             "MaxSsrc",
1115             "MaxSlrc",
1116             "RtsCtsThreshold",
1117             "FragmentationThreshold",
1118             "NonUnicastMode"],
1119     }),
1120      "ns3::MultiModelSpectrumChannel": dict({
1121         "category": "Channel",
1122         "create_function": create_element,
1123         "help": "",
1124         "connector_types": [],
1125         "box_attributes": [],
1126     }),
1127      "ns3::HalfDuplexIdealPhy": dict({
1128         "category": "Phy",
1129         "create_function": create_element,
1130         "help": "",
1131         "connector_types": [],
1132         "box_attributes": ["Rate"],
1133     }),
1134      "ns3::UanPhyCalcSinrDefault": dict({
1135         "category": "Phy",
1136         "create_function": create_element,
1137         "help": "",
1138         "connector_types": [],
1139         "box_attributes": [],
1140     }),
1141      "ns3::ReceiveListErrorModel": dict({
1142         "category": "Error",
1143         "create_function": create_element,
1144         "help": "",
1145         "connector_types": [],
1146         "box_attributes": ["IsEnabled"],
1147     }),
1148      "ns3::SpectrumAnalyzer": dict({
1149         "category": "",
1150         "create_function": create_element,
1151         "help": "",
1152         "connector_types": [],
1153         "box_attributes": ["Resolution",
1154         "NoisePowerSpectralDensity"],
1155     }),
1156      "ns3::ConstantRateWifiManager": dict({
1157         "category": "Manager",
1158         "create_function": create_element,
1159         "help": "",
1160         "connector_types": ["dev"],
1161         "box_attributes": ["DataMode",
1162             "ControlMode",
1163             "IsLowLatency",
1164             "MaxSsrc",
1165             "MaxSlrc",
1166             "RtsCtsThreshold",
1167             "FragmentationThreshold",
1168             "NonUnicastMode"],
1169     }),
1170      "ns3::Ipv6OptionPad1": dict({
1171         "category": "",
1172         "create_function": create_element,
1173         "help": "",
1174         "connector_types": [],
1175         "box_attributes": ["OptionNumber"],
1176     }),
1177      "ns3::UdpTraceClient": dict({
1178         "category": "",
1179         "create_function": create_element,
1180         "help": "",
1181         "connector_types": [],
1182         "box_attributes": ["RemoteAddress",
1183             "RemotePort",
1184             "MaxPacketSize",
1185             "StartTime",
1186             "StopTime"],
1187     }),
1188      "ns3::RraaWifiManager": dict({
1189         "category": "Manager",
1190         "create_function": create_element,
1191         "help": "",
1192         "connector_types": [],
1193         "box_attributes": ["Basic",
1194             "Timeout",
1195             "ewndFor54mbps",
1196             "ewndFor48mbps",
1197             "ewndFor36mbps",
1198             "ewndFor24mbps",
1199             "ewndFor18mbps",
1200             "ewndFor12mbps",
1201             "ewndFor9mbps",
1202             "ewndFor6mbps",
1203             "poriFor48mbps",
1204             "poriFor36mbps",
1205             "poriFor24mbps",
1206             "poriFor18mbps",
1207             "poriFor12mbps",
1208             "poriFor9mbps",
1209             "poriFor6mbps",
1210             "pmtlFor54mbps",
1211             "pmtlFor48mbps",
1212             "pmtlFor36mbps",
1213             "pmtlFor24mbps",
1214             "pmtlFor18mbps",
1215             "pmtlFor12mbps",
1216             "pmtlFor9mbps",
1217             "IsLowLatency",
1218             "MaxSsrc",
1219             "MaxSlrc",
1220             "RtsCtsThreshold",
1221             "FragmentationThreshold",
1222             "NonUnicastMode"],
1223     }),
1224      "ns3::RandomPropagationLossModel": dict({
1225         "category": "Loss",
1226         "create_function": create_element,
1227         "help": "",
1228         "connector_types": [],
1229         "box_attributes": ["Variable"],
1230     }),
1231      "ns3::UanChannel": dict({
1232         "category": "Channel",
1233         "create_function": create_element,
1234         "help": "",
1235         "connector_types": [],
1236         "box_attributes": [],
1237     }),
1238      "ns3::MinstrelWifiManager": dict({
1239         "category": "Manager",
1240         "create_function": create_element,
1241         "help": "",
1242         "connector_types": [],
1243         "box_attributes": ["UpdateStatistics",
1244             "LookAroundRate",
1245             "EWMA",
1246             "SegmentSize",
1247             "SampleColumn",
1248             "PacketLength",
1249             "IsLowLatency",
1250             "MaxSsrc",
1251             "MaxSlrc",
1252             "RtsCtsThreshold",
1253             "FragmentationThreshold",
1254             "NonUnicastMode"],
1255     }),
1256      "ns3::UanPhyDual": dict({
1257         "category": "Phy",
1258         "create_function": create_element,
1259         "help": "",
1260         "connector_types": [],
1261         "box_attributes": ["CcaThresholdPhy1",
1262             "CcaThresholdPhy2",
1263             "TxPowerPhy1",
1264             "TxPowerPhy2",
1265             "RxGainPhy1",
1266             "RxGainPhy2",
1267             "SupportedModesPhy1",
1268             "SupportedModesPhy2"],
1269     }),
1270      "ns3::ListErrorModel": dict({
1271         "category": "Error",
1272         "create_function": create_element,
1273         "help": "",
1274         "connector_types": ["dev"],
1275         "box_attributes": ["IsEnabled"],
1276     }),
1277      "ns3::VirtualNetDevice": dict({
1278         "category": "Device",
1279         "create_function": create_device,
1280         "help": "",
1281         "connector_types": [],
1282         "allow_addresses": True,
1283         "box_attributes": ["Mtu"],
1284     }),
1285      "ns3::UanPhyGen": dict({
1286         "category": "Phy",
1287         "create_function": create_element,
1288         "help": "",
1289         "connector_types": [],
1290         "box_attributes": ["CcaThreshold",
1291             "RxThreshold",
1292             "TxPower",
1293             "RxGain",
1294             "SupportedModes"],
1295     }),
1296      "ns3::Ipv6L3Protocol": dict({
1297         "category": "Protocol",
1298         "create_function": create_element,
1299         "help": "",
1300         "connector_types": [],
1301         "box_attributes": ["DefaultTtl",
1302             "IpForward"],
1303     }),
1304      "ns3::PointToPointRemoteChannel": dict({
1305         "category": "Channel",
1306         "create_function": create_element,
1307         "help": "",
1308         "connector_types": [],
1309         "box_attributes": ["Delay"],
1310     }),
1311      "ns3::UanPhyPerUmodem": dict({
1312         "category": "Phy",
1313         "create_function": create_element,
1314         "help": "",
1315         "connector_types": [],
1316         "box_attributes": [],
1317     }),
1318      "ns3::OnoeWifiManager": dict({
1319         "category": "Manager",
1320         "create_function": create_element,
1321         "help": "",
1322         "connector_types": [],
1323         "box_attributes": ["UpdatePeriod",
1324             "RaiseThreshold",
1325             "AddCreditThreshold",
1326             "IsLowLatency",
1327             "MaxSsrc",
1328             "MaxSlrc",
1329             "RtsCtsThreshold",
1330             "FragmentationThreshold",
1331             "NonUnicastMode"],
1332     }),
1333      "ns3::QadhocWifiMac": dict({
1334         "category": "Mac",
1335         "create_function": create_element,
1336         "help": "",
1337         "connector_types": [],
1338         "box_attributes": ["CtsTimeout",
1339             "AckTimeout",
1340             "BasicBlockAckTimeout",
1341             "CompressedBlockAckTimeout",
1342             "Sifs",
1343             "EifsNoDifs",
1344             "Slot",
1345             "Pifs",
1346             "MaxPropagationDelay",
1347             "Ssid"],
1348     }),
1349      "ns3::JakesPropagationLossModel": dict({
1350         "category": "Loss",
1351         "create_function": create_element,
1352         "help": "",
1353         "connector_types": [],
1354         "box_attributes": ["NumberOfRaysPerPath",
1355             "NumberOfOscillatorsPerRay",
1356             "DopplerFreq",
1357             "Distribution"],
1358     }),
1359      "ns3::PacketSink": dict({
1360         "category": "Application",
1361         "create_function": create_element,
1362         "help": "",
1363         "connector_types": ["node"],
1364         "stop_function": stop_application,
1365         "start_function": start_application,
1366         "status_function": status_application,
1367         "box_attributes": ["Local",
1368             "Protocol",
1369             "StartTime",
1370             "StopTime"],
1371     }),
1372      "ns3::RandomDirection2dMobilityModel": dict({
1373         "category": "Mobility",
1374         "create_function": create_element,
1375         "help": "",
1376         "connector_types": ["node"],
1377         "box_attributes": ["Bounds",
1378             "Speed",
1379             "Pause",
1380             "Position",
1381             "Velocity"],
1382     }),
1383      "ns3::UanMacAloha": dict({
1384         "category": "",
1385         "create_function": create_element,
1386         "help": "",
1387         "connector_types": [],
1388         "box_attributes": [],
1389     }),
1390      "ns3::MsduStandardAggregator": dict({
1391         "category": "",
1392         "create_function": create_element,
1393         "help": "",
1394         "connector_types": [],
1395         "box_attributes": ["MaxAmsduSize"],
1396     }),
1397      "ns3::DcaTxop": dict({
1398         "category": "",
1399         "create_function": create_element,
1400         "help": "",
1401         "connector_types": [],
1402         "box_attributes": ["MinCw",
1403             "MaxCw",
1404             "Aifsn"],
1405     }),
1406      "ns3::UanPhyCalcSinrFhFsk": dict({
1407         "category": "Phy",
1408         "create_function": create_element,
1409         "help": "",
1410         "connector_types": [],
1411         "box_attributes": ["NumberOfHops"],
1412     }),
1413      "ns3::UanPropModelIdeal": dict({
1414         "category": "",
1415         "create_function": create_element,
1416         "help": "",
1417         "connector_types": [],
1418         "box_attributes": [],
1419     }),
1420      "ns3::UanMacRcGw": dict({
1421         "category": "",
1422         "create_function": create_element,
1423         "help": "",
1424         "connector_types": [],
1425         "box_attributes": ["MaxReservations",
1426             "NumberOfRates",
1427             "RetryRate",
1428             "MaxPropDelay",
1429             "SIFS",
1430             "NumberOfNodes",
1431             "MinRetryRate",
1432             "RetryStep",
1433             "NumberOfRetryRates",
1434             "TotalRate",
1435             "RateStep",
1436             "FrameSize"],
1437     }),
1438      "ns3::NistErrorRateModel": dict({
1439         "category": "Error",
1440         "create_function": create_element,
1441         "help": "",
1442         "connector_types": ["phy"],
1443         "box_attributes": [],
1444     }),
1445      "ns3::Ipv4L3Protocol": dict({
1446         "category": "Protocol",
1447         "create_function": create_ipv4protocol,
1448         "help": "",
1449         "connector_types": ["node"],
1450         "box_attributes": ["DefaultTtl",
1451             "IpForward",
1452             "WeakEsModel"],
1453     }),
1454      "ns3::aodv::RoutingProtocol": dict({
1455         "category": "Protocol",
1456         "create_function": create_element,
1457         "help": "",
1458         "connector_types": [],
1459         "box_attributes": ["HelloInterval",
1460             "RreqRetries",
1461             "RreqRateLimit",
1462             "NodeTraversalTime",
1463             "NextHopWait",
1464             "ActiveRouteTimeout",
1465             "MyRouteTimeout",
1466             "BlackListTimeout",
1467             "DeletePeriod",
1468             "TimeoutBuffer",
1469             "NetDiameter",
1470             "NetTraversalTime",
1471             "PathDiscoveryTime",
1472             "MaxQueueLen",
1473             "MaxQueueTime",
1474             "AllowedHelloLoss",
1475             "GratuitousReply",
1476             "DestinationOnly",
1477             "EnableHello",
1478             "EnableBroadcast"],
1479     }),
1480      "ns3::TcpL4Protocol": dict({
1481         "category": "Protocol",
1482         "create_function": create_element,
1483         "help": "",
1484         "connector_types": ["node"],
1485         "box_attributes": ["RttEstimatorFactory",
1486             "ProtocolNumber"],
1487     }),
1488      "ns3::olsr::RoutingProtocol": dict({
1489         "category": "Protocol",
1490         "create_function": create_element,
1491         "help": "",
1492         "connector_types": [],
1493         "box_attributes": ["HelloInterval",
1494             "TcInterval",
1495             "MidInterval",
1496             "HnaInterval",
1497             "Willingness"],
1498     }),
1499      "ns3::UdpEchoServer": dict({
1500         "category": "Application",
1501         "create_function": create_element,
1502         "help": "",
1503         "connector_types": ["node"],
1504         "stop_function": stop_application,
1505         "start_function": start_application,
1506         "status_function": status_application,
1507         "box_attributes": ["Port",
1508            "StartTime",
1509            "StopTime"],
1510     }),
1511      "ns3::AmrrWifiManager": dict({
1512         "category": "Manager",
1513         "create_function": create_element,
1514         "help": "",
1515         "connector_types": [],
1516         "box_attributes": ["UpdatePeriod",
1517             "FailureRatio",
1518             "SuccessRatio",
1519             "MaxSuccessThreshold",
1520             "MinSuccessThreshold",
1521             "IsLowLatency",
1522             "MaxSsrc",
1523             "MaxSlrc",
1524             "RtsCtsThreshold",
1525             "FragmentationThreshold",
1526             "NonUnicastMode"],
1527     }),
1528      "ns3::ArfWifiManager": dict({
1529         "category": "Manager",
1530         "create_function": create_element,
1531         "help": "",
1532         "connector_types": ["dev"],
1533         "box_attributes": ["TimerThreshold",
1534             "SuccessThreshold",
1535             "IsLowLatency",
1536             "MaxSsrc",
1537             "MaxSlrc",
1538             "RtsCtsThreshold",
1539             "FragmentationThreshold",
1540             "NonUnicastMode"],
1541     }),
1542      "ns3::SubscriberStationNetDevice": dict({
1543         "category": "Device",
1544         "create_function": create_device,
1545         "help": "",
1546         "connector_types": [],
1547         "allow_addresses": True,
1548         "box_attributes": ["LostDlMapInterval",
1549             "LostUlMapInterval",
1550             "MaxDcdInterval",
1551             "MaxUcdInterval",
1552             "IntervalT1",
1553             "IntervalT2",
1554             "IntervalT3",
1555             "IntervalT7",
1556             "IntervalT12",
1557             "IntervalT20",
1558             "IntervalT21",
1559             "MaxContentionRangingRetries",
1560             "Mtu",
1561             "RTG",
1562             "TTG"],
1563     }),
1564      "ns3::flame::FlameRtable": dict({
1565         "category": "",
1566         "create_function": create_element,
1567         "help": "",
1568         "connector_types": [],
1569         "box_attributes": ["Lifetime"],
1570     }),
1571 })