Skip to content

Releases: ETLCPP/etl

Added array and string views

31 Dec 20:39
Compare
Choose a tag to compare

Added etl::array_view and etl::string_view

etl::array view allows a consistent API when dealing with std::array, etl::array, std::vector, etl::vector, C arrays and dynamically allocated arrays. See https://www.etlcpp.com/array_view.html

Pool : Changed alignof to etl::alignment_of

22 Dec 11:16
Compare
Choose a tag to compare

Pool
Changed alignof to etl::alignment_of

Various changes - See description

21 Dec 20:16
Compare
Choose a tag to compare

Added etl::variant_pool as a replacement for etl::factory.
Deprecated etl::factory

etl::forward_list
Renamed include guard to avoid clash with list.

Removed factory from unit tests.

multimap & multiset
Changed static const to enum.

hash & strings
Removed default function template parameter value.

FSM
Moved get_fsm_context() from public to protected in etl::state

Binary
Added sign_extend functions with shift parameter.
Added new binary.cpp for non-template functions.
Added bit<> template constant
Added bit enumerations

Debug count
Added clear()

Type lookup
Simplified codebase

Message router
Added 'successor' member to allow implementation 'Chain Of Responsibility' pattern.

IO Ports
Changes value() to read().
Rewrite of classes to improve efficiency by removing iterator indirection step.
Fixed inconsistencies in the dynamic IO port API.

Type traits
Added 'conditional_integral_constant' to complement 'conditional'

Eliminated various warnings from GCC comilation

01 Nov 19:54
Compare
Choose a tag to compare

Clean compile for GCC warnings
-Wundef
-Wshadow
-Wstrict-aliasing
-Wunused-parameter

Added C timer framework + fixed FSM bug

25 Oct 09:10
Compare
Choose a tag to compare

Added a version of etl::callback_timer for C applications.
Fixed bug in etl::fsm where on_exit_state would be called after the state had changed.

Added timer triggered messages & callback framework + others

21 Oct 08:36
Compare
Choose a tag to compare

Added timer triggered message & callback frameworks.
More compile time etl::function variants.
Separated etl::cyclic_value into runtime and compile time variants.

Added type utility classes and object factory template.

19 Sep 07:45
Compare
Choose a tag to compare

Added type utility classes and object factory template.

Added new random number generator

08 Aug 22:30
Compare
Choose a tag to compare

Added new random number generator, multiply-with-carry

Message framework and Scheduler

08 Aug 08:02
Compare
Choose a tag to compare

A set of modular template classes that can be mixed and matched together to provide message routing, message buses, finite state machines and cooperative schedulers.
All of the message framework classes are based on etl::imessage_router, allowing combinations of Router/Bus/FSM.
The framework uses CRTP to eliminate the need for most virtual functions and enable direct calls to handler functions.

Also added 'generators' for several classes to allow the maximum number of handlers or types to be set according to project requirements.

16bit DSP compatibility fixes + others

13 Jun 10:30
Compare
Choose a tag to compare

16bit DSP compatibility fixes.
Removed count options and link types from intrusive link definitions.
Combined header files for many containers.
Added more compiler checks to platform.h.
Updated to unit test project to VS2017.
Updated Code::Blocks unit test project.
Added AppVeyor cloud testing.
Various other fixes.