merge
This commit is contained in:
@@ -25,12 +25,18 @@ New user-visible features
|
||||
- ns-3-click: it's now possible to (i) have Click pull random numbers from
|
||||
ns-3 and (ii) have ns-3 set "defines" in Click via the simulation file
|
||||
(see src/click/examples/nsclick-defines.cc).
|
||||
- Waf shipped with ns-3 has been upgraded to version 1.7.10 and custom
|
||||
pkg-config generator has been replaced by Waf's builtin tool.
|
||||
- create-module.py script has been updated to work with waf 1.7 and support
|
||||
for creating modules with names containing dashes has been added.
|
||||
|
||||
Bugs fixed
|
||||
----------
|
||||
- bug 1566 - WiFi SNR tag improvements
|
||||
- Bug 1582 - IPv6 raw socket return value is not like Linux socket
|
||||
- bug 1585 - Length field of A-MSDU subframe header endianness
|
||||
- Bug 1409 - Add an attribute "SystemId" to configure the ID for MPI
|
||||
- Bug 1612 - pyviz (visualizer) will not be installed
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
@@ -201,11 +201,12 @@ public:
|
||||
%(CAPITALIZED)sTestSuite::%(CAPITALIZED)sTestSuite ()
|
||||
: TestSuite ("%(MODULE)s", UNIT)
|
||||
{
|
||||
AddTestCase (new %(CAPITALIZED)sTestCase1);
|
||||
// TestDuration for TestCase can be QUICK, EXTENSIVE or TAKES_FOREVER
|
||||
AddTestCase (new %(CAPITALIZED)sTestCase1, TestCase::QUICK);
|
||||
}
|
||||
|
||||
// Do not forget to allocate an instance of this TestSuite
|
||||
static %(CAPITALIZED)sTestSuite %(MODULE)sTestSuite;
|
||||
static %(CAPITALIZED)sTestSuite %(COMPOUND)sTestSuite;
|
||||
|
||||
'''
|
||||
|
||||
@@ -318,7 +319,10 @@ def main(argv):
|
||||
parser.print_help()
|
||||
return 1
|
||||
|
||||
modname = args[0]
|
||||
modname = args[0].lower()
|
||||
if False in [word.isalnum() for word in modname.split("-")]:
|
||||
print >> sys.stderr, "Module name should only contain alphanumeric characters and dashes"
|
||||
return 2
|
||||
assert os.path.sep not in modname
|
||||
|
||||
moduledir = os.path.join(os.path.dirname(__file__), modname)
|
||||
@@ -327,6 +331,8 @@ def main(argv):
|
||||
print >> sys.stderr, "Module %r already exists" % (modname,)
|
||||
return 2
|
||||
|
||||
print "Creating module %r" % (modname,)
|
||||
|
||||
os.mkdir(moduledir)
|
||||
wscript = file(os.path.join(moduledir, "wscript"), "wt")
|
||||
wscript.write(WSCRIPT_TEMPLATE % dict(MODULE=modname))
|
||||
@@ -355,7 +361,10 @@ def main(argv):
|
||||
testdir = os.path.join(moduledir, "test")
|
||||
os.mkdir(testdir)
|
||||
test_cc = file(os.path.join(moduledir, "test", "%s-test-suite.cc" % modname), "wt")
|
||||
test_cc.write(TEST_CC_TEMPLATE % dict(MODULE=modname, CAPITALIZED=''.join([word.capitalize() for word in modname.split('-')])))
|
||||
test_cc.write(TEST_CC_TEMPLATE % dict(MODULE=modname,
|
||||
CAPITALIZED=''.join([word.capitalize() for word in modname.split('-')]),
|
||||
COMPOUND=''.join([modname.split('-')[0]] + [word.capitalize() for word in modname.split('-')[1:]]),
|
||||
))
|
||||
test_cc.close()
|
||||
|
||||
|
||||
|
||||
@@ -62,6 +62,11 @@ Node::GetTypeId (void)
|
||||
UintegerValue (0),
|
||||
MakeUintegerAccessor (&Node::m_id),
|
||||
MakeUintegerChecker<uint32_t> ())
|
||||
.AddAttribute ("SystemId", "The systemId of this node: a unique integer used for parallel simulations.",
|
||||
TypeId::ATTR_GET|TypeId::ATTR_SET,
|
||||
UintegerValue (0),
|
||||
MakeUintegerAccessor (&Node::m_sid),
|
||||
MakeUintegerChecker<uint32_t> ())
|
||||
;
|
||||
return tid;
|
||||
}
|
||||
|
||||
@@ -78,7 +78,7 @@ public:
|
||||
};
|
||||
|
||||
SequenceNumberTestCase::SequenceNumberTestCase ()
|
||||
: TestCase ("SequenceNumber")
|
||||
: TestCase ("Sequence number test case")
|
||||
{
|
||||
m_oldval = 0;
|
||||
m_newval = 0;
|
||||
@@ -184,7 +184,7 @@ static class SequenceNumberTestSuite : public TestSuite
|
||||
{
|
||||
public:
|
||||
SequenceNumberTestSuite ()
|
||||
: TestSuite ("SequenceNumber", UNIT)
|
||||
: TestSuite ("sequence-number", UNIT)
|
||||
{
|
||||
AddTestCase (new SequenceNumberTestCase (), TestCase::QUICK);
|
||||
}
|
||||
|
||||
@@ -71,4 +71,27 @@ def build(bld):
|
||||
])
|
||||
headers.source.append('model/pyviz.h')
|
||||
|
||||
vissrc = [
|
||||
'visualizer/base.py',
|
||||
'visualizer/core.py',
|
||||
'visualizer/higcontainer.py',
|
||||
'visualizer/hud.py',
|
||||
'visualizer/__init__.py',
|
||||
'visualizer/svgitem.py',
|
||||
]
|
||||
pyviz = bld(features='py')
|
||||
pyviz.source = vissrc
|
||||
pyviz.install_path = '${PYTHONARCHDIR}/visualizer'
|
||||
|
||||
visplugin_src = [
|
||||
'visualizer/plugins/interface_statistics.py',
|
||||
'visualizer/plugins/ipv4_routing_table.py',
|
||||
'visualizer/plugins/olsr.py',
|
||||
'visualizer/plugins/show_last_packets.py',
|
||||
'visualizer/plugins/wifi_intrastructure_link.py'
|
||||
]
|
||||
pyvizplug = bld(features='py')
|
||||
pyvizplug.source = visplugin_src
|
||||
pyvizplug.install_path = '${PYTHONARCHDIR}/visualizer/plugins'
|
||||
|
||||
bld.ns3_python_bindings()
|
||||
|
||||
Reference in New Issue
Block a user