John Wellbelove
a742749849
Merge branch 'development'
2017-11-01 09:33:17 +00:00
John Wellbelove
0c65164483
Added is_null_router() & is_bus() to imessage_router
2017-10-27 11:11:22 +01:00
John Wellbelove
1c769b0fb2
Amalgamated ecl_timer_list into ecl_timer
2017-10-27 11:10:27 +01:00
John Wellbelove
ed8b47dacd
Added etl::generic_pool top level template class.
2017-10-26 10:42:13 +01:00
John Wellbelove
20753250fb
Fix bug in compare_exchange_weak where 'expected' was not modified on fail.
2017-10-25 21:19:40 +01:00
John Wellbelove
ca3236ef2f
Merge remote-tracking branch 'origin/feature/timer_triggered' into development
...
# Conflicts:
# test/codeblocks/ETL.cbp
2017-10-24 11:28:22 +01:00
John Wellbelove
61d3835f9d
Remove warnings
2017-10-21 09:07:41 +01:00
John Wellbelove
3e536e5946
Merge branch 'development'
2017-10-21 08:55:25 +01:00
John Wellbelove
8c05843b30
Merge remote-tracking branch 'origin/master' into development
...
# Conflicts:
# test/codeblocks/ETL.cbp
# test/codeblocks/ETL.depend
# test/test_callback_timer.cpp
# test/test_message_timer.cpp
2017-10-21 08:38:52 +01:00
John Wellbelove
f9e4fd8730
Removed internal 'tick_count' member from timers.
...
Fixed usage of atomic guard variables. Calls load() instead of relying on implicit cast.
Fixed Windows threading issue for callback and message timer tests.
2017-10-20 22:08:25 +01:00
John Wellbelove
cc26d5e6ba
Fixed corner case when no timer is active for around 2^32 ticks and the internal tick count rolls over just after a new timer is started.
...
Also tick(uint32_t count) was not returning the correct value when tick processing did not occur.
2017-10-19 18:17:56 +01:00
John Wellbelove
e174276556
Fix bug if timer list is empty for 49+ days. (Internal tick count rollover)
2017-10-19 10:31:27 +01:00
John Wellbelove
8455e108bc
Merge remote-tracking branch 'origin/feature/Timer_triggered_messages' into development
...
# Conflicts:
# examples/ArmTimerCallbacks/RTE/Device/STM32F401RETx/startup_stm32f401xe.s
# examples/ArmTimerCallbacks/RTE/Device/STM32F401RETx/system_stm32f4xx.c
# examples/FunctionInterruptSimulation/FunctionInterruptSimulation.cpp
# examples/FunctionInterruptSimulation/vs2017/FunctionInterruptSimulation.sln
# examples/FunctionInterruptSimulation/vs2017/FunctionInterruptSimulation.vcxproj
# examples/FunctionInterruptSimulation/vs2017/FunctionInterruptSimulation.vcxproj.filters
# test/codeblocks/ETL.cbp
# test/codeblocks/ETL.depend
# test/codeblocks/ETL.layout
# test/test_cyclic_value.cpp
# test/vs2017/etl.vcxproj
# test/vs2017/etl.vcxproj.filters
2017-10-18 09:02:46 +01:00
John Wellbelove
53412f898f
Added etl::function variants that take both the instance and member function at compile time.
2017-10-11 13:22:11 +01:00
John Wellbelove
49fe0054d2
Created compile time and runtime variants of cyclic_value.
2017-10-02 19:48:30 +01:00
John Wellbelove
66843b75d3
Removed Keil projects
2017-10-02 19:45:55 +01:00
John Wellbelove
d6e3d2766f
Added a compare template that defines <=, >, >= in terms of std::less or a user supplied comparison class.
2017-09-30 19:43:53 +01:00
John Wellbelove
9da7e3cd5d
Changed SIZE to MAX_SIZE for MSVC compatibility
2017-09-30 18:53:40 +01:00
John Wellbelove
cb6153c95a
Allow factory to create non-class types.
2017-09-29 20:35:11 +01:00
John Wellbelove
c6876f65d1
Added a compare template that defines <=, >, >= in terms of std::less or a user supplied comparison class.
2017-09-28 11:11:49 +01:00
John Wellbelove
24e661c63a
Removed constraint for types to derived from base class.
2017-09-28 10:49:07 +01:00
John Wellbelove
8f8dbf7771
Improved efficiency for large advances.
...
Added static assert for integral types.
2017-09-21 19:46:26 +01:00
John Wellbelove
7dcf6b50a7
Added pop_into to intrusive_queue
...
Added pop_into to intrusive_stack
Added reverse to intrusive_stack
2017-09-21 14:05:30 +01:00
John Wellbelove
c6e1e9ac00
Added pop_into(iqueue&) to queue
...
Added pop_into(istack&) to stack
Added reverse() to stack.
2017-09-19 20:21:03 +01:00
John Wellbelove
1803dca3eb
Ignored
2017-09-19 08:37:27 +01:00
John Wellbelove
51b5675e6a
Added static runtime get_id_from_type member functions.
2017-09-19 08:31:44 +01:00
John Wellbelove
ae57448c3e
Made invalid id or types a compile time error.
2017-09-18 10:50:05 +01:00
John Wellbelove
f8ff224365
Fixed formatting typo.
...
Added missing files to projects.
2017-09-17 18:01:37 +01:00
John Wellbelove
a9e61444a9
Changed create_from_id to return actual derived type.
2017-09-17 16:08:49 +01:00
John Wellbelove
84f5fd946e
Fixed GCC warning.
...
Fixed formatting typo.
2017-09-17 12:56:57 +01:00
John Wellbelove
873998518c
Modified factory to accept non-contiguous type ids.
...
Added support for compile time type-to-id id-to-type type-to-type mapping
2017-09-17 12:43:45 +01:00
John Wellbelove
b885ad3d33
Added 'pop_into' member functions.
2017-09-14 16:27:32 +01:00
John Wellbelove
29c9b658d7
Modified factory pattern
2017-09-13 13:17:11 +01:00
John Wellbelove
dcefb938c4
Changed max_items to max_size
2017-09-13 13:16:50 +01:00
John Wellbelove
7ee5acee18
Added factory pattern
2017-09-11 21:17:33 +01:00
John Wellbelove
259dbfa741
Added type size test and error to ipool::allocate
2017-08-25 14:27:20 +01:00
John Wellbelove
267408445b
Added ETL extension etl::types to allow extraction of various types from a specified type.
2017-08-25 11:10:54 +01:00
John Wellbelove
b145adb4eb
Added additional generator scripts.
2017-08-25 11:09:23 +01:00
John Wellbelove
ab9f3ce538
Changed the way nullptr is defined for Arduino projects.
2017-08-22 09:36:10 +01:00
John Wellbelove
8f7656a5df
Fixed incompatibility in unit test for Code:Blocks
2017-08-22 01:05:25 +01:00
John Wellbelove
41eae71bd3
Simplified etl::parameter_type to remove unnecessary second template parameter.
2017-08-21 10:22:14 +01:00
John Wellbelove
38bcc1e06e
Merge branch 'feature/Function' into development
2017-08-19 12:44:24 +01:00
John Wellbelove
1de9ad262a
Added etl::function callback wrappers that take function pointers at compile time.
2017-08-19 11:36:56 +01:00
John Wellbelove
b437414fff
Added constant test
2017-08-18 16:52:26 +01:00
John Wellbelove
5c040ad21c
Changed project due to header name change.
2017-08-18 16:45:48 +01:00
John Wellbelove
6f13324c64
Added integral_limits to tests.
2017-08-18 16:44:42 +01:00
John Wellbelove
7f4d5c25d5
Added code to keep Code::Blocks happy
2017-08-18 16:44:19 +01:00
John Wellbelove
f4cc4c6fe3
Added integer square root template constant.
2017-08-18 12:58:51 +01:00
John Wellbelove
087c685f81
Added etl::constant helper class.
2017-08-18 12:58:25 +01:00
John Wellbelove
d313ec0da0
Modified Windows check.
2017-08-17 18:19:16 +01:00