Releases: eProsima/dev-utils
Releases · eProsima/dev-utils
v0.1.0
This release includes the following CMake projects: cmake_utils and cpp_utils.
This release includes the following features in cmake_utils project:
- Compilation macros:
compile_documentation,compile_library,compile_test_library,compile_test_documentation,compile_test_tool,compile_tool, andconfigure_test_flags. - C++ common macros:
check_cpp,check_cpp_17,set_cmake_build_type,activate_code_coverage,configure_project_cpp,custom_cpp_flags,find_external_projects, andfind_thirdparties_headeronly. - Packaging macros:
eprosima_packaging,install_resources, andeprosima_install_resources. - Project specific macros:
configure_project,set_installation_paths,load_project_settings,read_commit_hash,read_version, andconfigure_cmake_options. - Test specific macros and functions:
test_requirements,add_test_executable,add_unittest_executable,add_blackbox_executable,all_library_sources, andall_header_sources.
This release includes the following features in cpp_utils project:
- Event handler: interface to implement a handler of any kind of event.
- File watcher handler: detect changes in a given file.
- Logging event handler: implement the functionality to raise callback every time a logging message is consumed.
- Logging severe event handler: consume the log event handler events that are above a given threshold.
- Multiple event handler: encapsulate multiple event handlers.
- Periodic event handler: raise an event periodically with a specific time period.
- Signal event handler: raise a callback each time the signal specified in received.
- Signal manager: manage a specific signal given by a template specialization.
- Exceptions: allow to raise an exception of the following kinds: ConfigurationException, DisabledException, DNSException, IncosistencyException, InitializationException, TimeoutException, UnsupportedException, ValueAccessException, ValueNotAllowedException.
- Create custom enumerations.
- Math functionalities.
- OwnerPtr and LesseePtr: smart pointer with some extra functionalities.
- Thread pool implementation.
- Timer utilities.
- Atomicable and SharedAtomicable types: join any type value and mutex/shared_mutex together for commodity and readability.
- Wait handlers: allow to make multiple threads wait until another thread awakes them. The currently available event handlers are: BooleanWaitHandler, ConsumerWaitHandler, CounterWaitHandler, DBQueueWaitHandler*, and IntWaitHandler.
- Formatter utility: auxiliary function to concatenate inplace every kind of object
<<stream. - Logging module: Fast DDS logging module.
- Return codes: enumeration for different method return statements.
- Other generic cpp utils functions.
This release includes the following Continuous-Integration features:
- GitHub actions to validate the utils implementation.