3149 Commits

Author SHA1 Message Date
John Wellbelove
2f39ebdafd Expanded compiled variants for scripts 2021-08-13 16:37:47 +01:00
John Wellbelove
417c3b9e77 Expanded compiled variants for scripts 2021-08-13 16:32:43 +01:00
John Wellbelove
6ff560a416 Merge branch 'feature/variadic-message-router' into development
# Conflicts:
#	.gitignore
#	include/etl/bip_buffer_spsc_atomic.h
#	include/etl/version.h
#	library.json
#	library.properties
#	support/Release notes.txt
#	test/etl_profile.h
#	test/runsanitychecks.sh
#	test/runtests.sh
#	test/vs2019/etl.vcxproj.filters
2021-08-11 15:50:43 +01:00
John Wellbelove
988cd95440 Added C++17 variadic versions of etl::message_router ans etl::fsm
Fixed meson.build
2021-08-11 15:48:17 +01:00
John Wellbelove
5904687e6d Variadic FSM 2021-08-10 20:25:27 +01:00
John Wellbelove
774384e316 Fixes after merge 2021-08-10 12:37:33 +01:00
John Wellbelove
27f5204032 Added 'Force C++03' macro 2021-08-10 11:31:14 +01:00
John Wellbelove
30f0f58178 meson build fix 2021-08-10 11:25:54 +01:00
John Wellbelove
f413fd1a21 Fixes after merge 2021-08-10 11:20:00 +01:00
John Wellbelove
ca322551f3 Variadic message_packet 2021-08-10 10:49:32 +01:00
John Wellbelove
2056628b93 Updated version numbers 2021-08-10 10:49:32 +01:00
John Wellbelove
3044fb24f9 Added configuration for forcing C++03 code 2021-08-10 10:49:32 +01:00
John Wellbelove
ecff863087 notify_observers() takes universal reference for C++11 and above 2021-08-10 10:49:11 +01:00
John Wellbelove
a7786e08af Updated type traits generator 2021-08-10 10:49:11 +01:00
John Wellbelove
beb95851f2 Refactoring of type traits for GCC compatibility 2021-08-10 10:49:11 +01:00
John Wellbelove
79ffe63b1c Refactoring of type traits for GCC compatibility 2021-08-10 10:49:10 +01:00
John Wellbelove
8181cec767 Updated version numbers 2021-08-10 10:49:10 +01:00
John Wellbelove
53ad78768f Changed variant files names 2021-08-10 10:48:11 +01:00
John Wellbelove
b5c282699d Type traits refactor 2021-08-10 10:46:13 +01:00
Benedek Kupper
3363da4f91 Feature/bip buffer spsc atomic (#402 follow-up) (#404)
* bip_buffer_spsc_atomic: fix compiler failure

The previous commit changed the pointer being const (cannot change where
the pointer is pointing after construction) to the referred data
to be const (the buffer itself is not writeable), which causes compiler
issue with the tests.

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: whitespace cleanup for consistency

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: clear() destroys the unread data

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>

* bip_buffer_spsc_atomic: add destructor

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-08-10 10:38:23 +01:00
John Wellbelove
1789e4937d Changes before merging to development 2021-08-10 10:38:23 +01:00
Benedek Kupper
7a067ba816 introduce bip buffer spsc atomic (#402)
Based on the works of Andrea Lattuada and James Munns:
https://blog.systems.ethz.ch/blog/2019/the-design-and-implementation-of-a-lock-free-ring-buffer-with-contiguous-reservations.html
Whose design was inspired by Simon Cooke:
https://www.codeproject.com/Articles/3479/The-Bip-Buffer-The-Circular-Buffer-with-a-Twist

Signed-off-by: Benedek Kupper <benedek.kupper@streamunlimited.com>
2021-08-10 10:38:22 +01:00
John Wellbelove
98cd1e4fe7 Added configuration for forcing C++03 code 2021-08-05 16:53:33 +01:00
John Wellbelove
d40a67776f notify_observers() takes universal reference for C++11 and above 2021-08-05 16:52:35 +01:00
John Wellbelove
c265e82bbe Updated type traits generator 20.15.0 2021-08-05 09:23:02 +01:00
John Wellbelove
629e864c8a Refactoring of type traits for GCC compatibility 2021-08-04 19:01:08 +01:00
John Wellbelove
b779696eb9 Refactoring of type traits for GCC compatibility 2021-08-04 18:47:42 +01:00
John Wellbelove
026a365f8e Updated version numbers 2021-08-04 10:27:22 +01:00
John Wellbelove
0d5f30b97e Merge branch 'master' into feature/bip-buffer-spsc-atomic
# Conflicts:
#	test/vs2019/etl.vcxproj.filters
2021-08-02 12:22:01 +01:00
John Wellbelove
86d1bd7890 etl::message_packet update 2021-08-01 20:01:30 +01:00
John Wellbelove
c868acaa9b Updated versions 2021-08-01 20:01:30 +01:00
John Wellbelove
a0c18c56af Changed std::forward to etl::forward 2021-08-01 20:01:29 +01:00
John Wellbelove
8c24b42ccf Type traits refactor 2021-08-01 20:01:29 +01:00
John Wellbelove
8986f80cb0 Merge branch 'development'
# Conflicts:
#	include/etl/version.h
#	library.json
#	library.properties
#	meson.build
20.14.1
2021-08-01 19:43:42 +01:00
John Wellbelove
78239ec2ef Updated versions 2021-08-01 19:39:14 +01:00
John Wellbelove
c1f7edeee6 Changed std::forward to etl::forward 2021-08-01 19:37:03 +01:00
John Wellbelove
e92f93b57f Variadic message_packet 2021-07-31 10:38:21 +01:00
John Wellbelove
35ac4cb239 Variadic message_packet 2021-07-29 17:20:40 +01:00
John Wellbelove
9fbb6c8008 Type traits refactor 2021-07-29 14:29:00 +01:00
John Wellbelove
b886ee381b Updated version numbers 2021-07-29 14:29:00 +01:00
John Wellbelove
734f14a8ec Changed variant files names 2021-07-29 14:29:00 +01:00
John Wellbelove
da1daf64e2 Type traits refactor 2021-07-29 14:28:59 +01:00
John Wellbelove
2c11956311 Updated version numbers 20.14.0 2021-07-29 14:27:41 +01:00
John Wellbelove
031b3e7eda Changed variant files names 2021-07-29 14:15:49 +01:00
John Wellbelove
fd89f51621 Type traits refactor 2021-07-29 11:34:16 +01:00
John Wellbelove
1702a6e043 Type traits refactor 2021-07-27 18:17:42 +01:00
John Wellbelove
8f570d81cd Work in progress 2021-07-26 09:29:11 +01:00
John Wellbelove
017095bef3 Merge branch 'master' into development
# Conflicts:
#	support/Release notes.txt
#	test/vs2019/etl.vcxproj.filters
2021-07-23 13:48:52 +01:00
John Wellbelove
23b8ffcd20 updated version numbers 2021-07-23 13:39:24 +01:00
John Wellbelove
7a061a43cd Altered 'unhandled' delegate to tbe the last in the array for the constexpr vspecialisation. 20.13.0 2021-07-23 12:50:17 +01:00