Dawid Drozd
fb8e1ea745
Add experimental EventBus that isn't transaction safe
2017-08-27 22:29:40 +02:00
Dawid Drozd
f7ab55a3fa
Add EventCollector::getBus
...
We need sometimes to access to the bus. Also thanks to this we can reduce 1
field
2017-08-27 19:53:29 +02:00
Dawid Drozd
fc1dbe335f
Update EventBus to 2.1.0 inspired by Boost::MSM
...
I was wondering if it is a good step for EventBus. Of course, it will break back
compatibility again as well as it was when changing v1 -> v2, but this change is
smaller. Those changes were inspired by Boost::MSM how it handles events.
Why i decided to change:
+ It will prevent from bugs like typo in Event string eg. Event<int>{"text"}
+ If we want to change signature of Event, we won't have to update all listeners
and their signature
+ Less includes for listener. Simply in our class header we will have eg.
pointer/ref to event type not to all args
+ Strongly typed (this is always better)
+ Storing event for future reuse
+ More easy to introduce thread safe EventBus in future
+ EventBus is more simple
+ const Event forbids some kind of communication. Eg. passing and modifying
reference
+ Less errors when using std::bind
- Breaking back compatibility
- Need fixes in projects that using this lib
- Someone can add methods etc. to Event :(
- We can't generate easily multiple "types" of events like in 'for' loop
- Worst performance (still not such bad as CCNotificationCenter)
v2.1.0
2017-08-26 13:28:45 +02:00
Dawid Drozd
23ab070061
Add EventBus::notify for simple strings
v2.0.1
2017-08-25 16:02:25 +02:00
Dawid Drozd
257cc90c86
Add test for checking validating different notifications keys
2017-08-25 11:38:13 +02:00
Dawid Drozd
c4b9fcd3de
Update README.md
v2.0.0
2017-08-20 21:03:19 +02:00
Dawid Drozd
d7f9727a55
Update README
2017-08-15 21:53:35 +02:00
Dawid Drozd
cdae9b54c3
Update README
2017-08-15 21:50:49 +02:00
Dawid Drozd
8c56ebf7e7
Update travis.yml
2017-08-15 21:48:15 +02:00
Dawid Drozd
8f0b5f3b08
Fix test
2017-08-15 21:48:09 +02:00
Dawid Drozd
df155bf897
Update travis.yml
2017-08-15 21:26:23 +02:00
Dawid Drozd
4f384bb0e7
Update travis.yml
2017-08-15 21:14:33 +02:00
Dawid Drozd
be3218aa33
Update required version of cmake from 3.6 to 3.2
2017-08-15 20:40:39 +02:00
Dawid Drozd
2324408844
Add Travis CI
2017-08-15 20:35:56 +02:00
Dawid Drozd
71530ac7f5
Fix warnings from clang
2017-08-15 20:26:38 +02:00
Dawid Drozd
8f28876fd0
Add chat with gitter
2017-08-13 14:37:19 +02:00
Dawid Drozd
dc12c1c532
Update README
2017-08-06 18:16:41 +02:00
Dawid Drozd
910f9816e8
Refactoring
2017-08-06 17:30:06 +02:00
Dawid Drozd
2d14ca521d
Update documentation and naming
2017-08-06 17:24:13 +02:00
Dawid Drozd
4c667c7c46
Update performance README
2017-08-06 17:14:29 +02:00
Dawid Drozd
e8f84a6e09
Update minimum cpp version
2017-08-06 17:14:14 +02:00
Dawid Drozd
fe92d55eb0
Remove duplicated performance test
...
Removing old test that was used to compare with EventBus v1.x
2017-08-06 17:13:53 +02:00
Dawid Drozd
ffbf4b91a9
Update compile flags
2017-08-06 17:13:00 +02:00
Dawid Drozd
a46362bc6b
Update README
2017-08-06 16:32:09 +02:00
Dawid Drozd
94973b5779
EventBus 2.0.0
2017-08-06 11:22:59 +02:00
Dawid Drozd
630e220d43
Remove old Notifier aka EventBus v1.x
2017-08-06 10:51:07 +02:00
Dawid Drozd
1db41d903a
Add new implementation of EventBus
...
Simply new version breaks back compability and simply is better ;)
2017-08-06 00:14:35 +02:00
Dawid Drozd
2cb0e6e60f
Update gitignore
2017-08-05 19:39:41 +02:00
Dawid Drozd
356ba4f145
Update performance tests
2017-08-05 19:39:20 +02:00
Dawid Drozd
919bc90579
Add sample performance test
2017-08-05 13:27:35 +02:00
Dawid Drozd
be3d01c717
Add benchmark google library v1.2.0
2017-08-05 12:22:42 +02:00
Dawid Drozd
7b81d56794
Add some unit tests
2017-08-05 12:15:33 +02:00
Dawid Drozd
0012c21709
Add CATCH unit test library v1.9.6
2017-08-05 11:42:54 +02:00
Dawid Drozd
f23259a850
Update links to profiles in README
2017-08-05 02:36:12 +02:00
Dawid Drozd
0514ffd2db
Improve library as standalone
2017-08-05 02:31:42 +02:00
Dawid Drozd
0d890ce99f
Move sources to library folder
...
No code changes only moving
2017-08-04 23:52:21 +02:00
Dawid Drozd
d92ee2fe8f
Add CMakeLists
2017-08-04 23:50:35 +02:00
Stanisław Kabaciński
53d5026cad
changed variadic macro declaration style
v1.0.0
2017-07-28 12:52:10 +02:00
Dawid Drozd
cb0398a888
Update codestyle
2017-06-12 16:03:34 +02:00
Dawid Drozd
9a459caa30
Update namespace for null_deleter
2017-06-12 16:03:22 +02:00
Dawid Drozd
d14e07bd3e
Rename EventContainer to EventCollector
2016-11-14 09:24:40 +01:00
Dawid Drozd
d4b0e37a74
Use std::unique_ptr rather than raw pointers
2016-11-08 22:25:04 +01:00
Dawid Drozd
2a5c0d1ee5
Fix bug
...
_callbacks[notification.tag] creates new entry so in destructor we fail
on assert
2016-11-08 17:55:59 +01:00
Dawid Drozd
d44c38d24e
Add EventContainer for RAII
2016-10-18 21:48:44 +02:00
Dawid Drozd
e23c3b2850
Fix bug with removing listeners
2016-09-22 13:54:25 +02:00
Dawid Drozd
d6a0b8c8e5
Fix bug with getUniqueId
...
Improve API
Update old code
2016-09-04 17:10:46 +02:00
Dawid Drozd
e40d1a3674
Init with first implementation
2015-10-07 19:13:49 +02:00
Dawid Drozd
b0d3ea9ad0
Initial commit
2015-10-07 18:11:14 +02:00