Commit Graph

471 Commits

Author SHA1 Message Date
Tom Henderson
fa9e6cc531 core: (fixes #233) Align Config::ConnectWithoutContext with Config::Connect 2020-09-12 15:20:03 -07:00
Peter Barnes
35350ab51d core: (fixes #210): add simulation time and node printers to NS_FATAL... 2020-09-03 08:04:02 +00:00
Peter Barnes
c7c2e76d41 core: (fixes #247) unlimited arguments in MakeEnumChecker 2020-08-24 18:50:07 +00:00
Jordan Dorham
81b740721f Merge pull request #15 in S3/s3-simulator from S3-19-time-arithmetic-implement to develop
Squashed commit of the following:

commit 1162a5c942c7c2a366883a3b4f5f47feface9344
Author: Peter D. Barnes, Jr <barnes26@llnl.gov>
Date:   Wed Mar 18 16:44:50 2020 -0700

    core: assert Time > 0 in operator< (Time, EventId) refinement

commit 83161ebb6f56fd467498528a5b54f2d6ef1bceba
Author: Peter D. Barnes, Jr <barnes26@llnl.gov>
Date:   Wed Mar 18 15:59:38 2020 -0700

    core: check-style nstime.h

commit d8a0c906997bd7608e19dfd93484477c9b121a67
Author: Peter D. Barnes, Jr <barnes26@llnl.gov>
Date:   Wed Mar 18 15:56:34 2020 -0700

    core: assert Time > 0 in operator< (Time, EventId)

commit 466e66031b6f26e7aaede00be7d8c692382f2b04
Author: Peter D. Barnes, Jr <barnes26@llnl.gov>
Date:   Wed Mar 18 14:41:02 2020 -0700

    core: check-style

commit 5fd40536a23ef683d9eb673a45b492efbe175750
Author: Peter D. Barnes, Jr <barnes26@llnl.gov>
Date:   Wed Mar 18 14:21:33 2020 -0700

    core: operator<(Time, EventId), and doxy
2020-08-20 08:43:40 +00:00
Mathew Bielejeski
5d13b2b80c build: Create version.cache file with dummy data when git tags are absent
* Change version tag and ClosestTag values to be ns-3.xx
* Fix string values to have the proper format
* Allow check-version to proceed even if git task is not present
* Remove git package requirement from Docker containers
* Create git_ns3_version_info task only when HAVE_NS3_REPO is defined
* Change tag glob from ns-3* to ns-3.[0-9]*
* Use version tag to make output consistent with waf --check-version
2020-08-18 15:39:34 -07:00
Mathew Bielejeski
32e95f8228 Make build information accessible by programs by extracting data from the local git repository (or a standalone file if a git repository is not present).
Changes

* Adds a new class named Version to the core module
* Adds a template file to the core module named version-defines.h.in
* Adds --PrintVersion and --version arguments to the CommandLine class.
* Creates a new waf tool which queries the local git repository and extracts build information from itCreate a waf task to extract version information from git repository
2020-08-11 20:20:05 +00:00
Ryan Mast
e5a8cf811b core: Replace missed uses of I with cairo_I 2020-07-01 09:53:05 -07:00
Tom Henderson
77f3d96ad8 Fixes for clang compilation 2020-06-08 17:28:07 -07:00
Steven Smith
dded72e02e build: (fixes #217) Guard compilation of example used as a test
* Added documentation to ExampleAsTestSuite on the need for this guarding
* Updated with Peter's patch for examples-as-test placeholders in wscripts
2020-06-08 09:35:50 -07:00
Tom Henderson
d3e20db1e8 core: Remove cast (conversion operator) for Time objects
Updates the fix committed in 852a612c due to Python bindings compilation issues
Discussion of this issue can be found in merge request !323 (issue #215)
2020-06-07 11:36:06 -07:00
Stefano Avallone
f67f219510 core: Fix overload resolution for Simulator::Schedule variants 2020-06-07 11:33:39 -07:00
Peter Barnes
5dab92583b doc: Time and space complexity of the various Schedulers 2020-06-03 20:37:22 +00:00
Peter Barnes
852a612c33 core: avoid implicit Time conversions 2020-06-03 18:13:09 +00:00
Peter Barnes
0c4ace3b18 ShowProgress burnin 2020-06-02 15:50:09 +00:00
BHASKAR K
c316c0de8c core: Include typedefs for int64_t and uint64_t 2020-06-01 22:02:45 +05:30
Vivek Jain
97dd10ea59 core: use variadic template for CreateObject 2020-05-28 22:18:55 +00:00
Steven Smith
3a15ad78b8 core: Add test suite support for running examples as tests with comparison of output for regression testing 2020-05-26 21:42:16 +00:00
Peter D. Barnes, Jr
a0ab57db12 doc: fix doxy warnings on introspected-command-line.h 2020-05-20 13:08:27 -07:00
hax0kartik (GCI 2019)
1f3735f6f0 Replace calls to Scheduler::Remove(EventId) with EventId::Cancel 2020-05-13 00:08:08 +00:00
Peter D. Barnes, Jr
fa7d6a894e core: (fixes #143): EmpiricalRandomVariable should ensure that the CDF ends with 1.0
After discussion it was decided that this is not an error,
but should be better documented.
2020-05-12 21:25:08 +00:00
Peter D. Barnes, Jr
b7deb42a65 core: refactor EmpricialRandomVariable and provide example 2020-05-12 21:25:08 +00:00
InquisitivePenguin (GCI 2019)
6ec2093986 core: (fixes 2725) EmpiricalRandomVariable must not interpolate CDF 2020-05-12 21:25:07 +00:00
Peter D. Barnes, Jr
c9769dc400 core: refactor reverse ordering in calendar scheduler
Refactor to clarify the core algorithms and isolate the
forward/reverse differences to one section.

This also lets the insertion order to be set by Attribute.

Benchmarking this appears to be marginally faster than
Alexander Krotov's original version.  It's not clear why;
should be marginally slower.
2020-05-12 12:05:01 -07:00
kr0n0s (GCI 2019)
f42687c4f7 core: make insertion order of CalendarScheduler configurable 2020-05-12 12:05:01 -07:00
Alexander Krotov
1f6a710dbd core: Port calendar scheduler improvement from NS-2.
It reverses the order of insertion sort in buckets.
2020-05-12 12:05:01 -07:00
Peter D. Barnes, Jr
32d820e8c7 (minor) various bits of fix-ups 2020-05-11 18:19:19 -07:00
Peter Barnes
1d47a14c14 Tag uses of NS_DEPRECATED by release 2020-05-11 20:12:51 +00:00
Tom Henderson
1c8671ef81 core: (fixes #190) Suppress checking aggregates for Object base class 2020-05-06 07:56:04 -07:00
Peter Barnes
4df94a8377 core: (fixes 2916): Specialize CommandLine parsing of uint8_t 2020-05-05 15:57:26 +00:00
Peter Barnes
1e2c2ad12d Murmur3 2020-05-05 15:47:30 +00:00
Tommaso Pecorella
2918a0d9b3 (core): Fix compilation error. 2020-05-02 11:25:51 +00:00
Peter Barnes
5879700a90 core: (fixes 2815) Config::Connect should throw warnings
This patch logs unconditionally when a trace path doesn't exist.

We also provide FailSafe versions of Config::Connect and
Config::ConnectWithoutContext. These should be used
when you can't be sure that a trace path exists in the current model.

This resolves the warnings from AnimationInterface::ConnectCallbacks()

Credit to "InquisitivePenguin (GCI 2019) <>" for diagnosing this issue,
opening the way to a solution.
2020-05-01 23:54:30 +00:00
Peter D. Barnes, Jr
2d1a05b405 core: fix ordering in PriorityQueueScheduler 2020-05-01 23:50:34 +00:00
Peter D. Barnes, Jr
df90b17e3b core: PriorityQueueScheduler: add complexity, move impl to .cc 2020-05-01 23:50:34 +00:00
ra1nst0rm3d
9c95f815ba core: implement Remove for PriorityQueueScheduler 2020-05-01 23:50:34 +00:00
Alexander Krotov
82b555582e core: PriorityQueueScheduler based on std::priority_queue
This has a stub for Remove, which just cancels the event.

In turn this causes the simulator test case to fail, because of
the sanity check at the end of DefaultSimulatorImpl::Run.
2020-05-01 23:50:34 +00:00
Alexander Krotov
4434c65c7a core: Event and EventKey comparison operators 2020-05-01 23:50:34 +00:00
Peter D. Barnes, Jr
b23be18b3b Use CommandLine cmd (__FILE__) instead of COMMANDLINE macro.
This in effect replaces commit 5e624d550
2020-05-01 14:42:53 -07:00
Peter D. Barnes, Jr
885dc2297a core: add missing includes 2020-05-01 14:23:04 -07:00
Peter D. Barnes, Jr
20f5e442ed doc: Add CommandLine::Usage to the doxygen for every example 2020-04-27 16:20:09 -07:00
Peter D. Barnes, Jr
e070724fe4 core: regularize usage of getenv 2020-04-27 16:20:09 -07:00
Peter D. Barnes, Jr
da6e6b340f docs: various fixes for broken links, removed AttributeValue types 2020-04-27 16:20:09 -07:00
Peter D. Barnes, Jr
fddf3eaac4 doc: various doxygen fixups in core 2020-04-10 17:30:25 -07:00
Peter D. Barnes, Jr
2fb2ed1689 doc: use \pname{} instead of \p when referring to arguments. 2020-04-10 17:30:25 -07:00
Peter D. Barnes, Jr
6888c76550 core: refactor EnumChecker 2020-04-10 17:30:25 -07:00
Alexander Krotov
b0c443112f core: fix undefined behaviour sanitizer warning
m_information.push_back copies supportLevel value, so it should be
initialized to some valid value.
2020-04-09 22:51:32 +03:00
Peter Barnes
9c7ff4adba core: (fixes #168): change preprocessor symbol 'I' conflicting with <complex> 2020-04-07 20:51:57 +00:00
Peter D. Barnes, Jr
063d86c096 core: clear check-style -l3 errors 2020-03-25 15:18:01 -07:00
Alexander Krotov
78d7fa3d12 Add missing sys/select.h include
Required for select(), fd_set etc. on Alpine Linux.
2020-03-25 15:53:02 +03:00
Peter D. Barnes, Jr
f9b25ac56a core: CommandLine Callback typedef 2020-03-12 17:50:40 -07:00