├── .clang-format ├── .gitignore ├── .gitmodules ├── CMakeLists.txt ├── LICENSE ├── README.md ├── examples ├── CMakeLists.txt ├── filter.cpp └── filter_fixed_point.cpp ├── include └── embedded │ ├── circular_buffer_adapter.h │ ├── config.h │ ├── constexpr_math.h │ ├── constexpr_math │ ├── complex.h │ ├── constants.h │ ├── convolve.h │ ├── functions.h │ ├── poly.h │ └── vector.h │ ├── detail │ └── circular_buffer_adapter.h │ ├── function.h │ ├── move_wrapper.h │ ├── mutex.h │ ├── ostream_ops.h │ ├── preprocessor.h │ ├── signal │ ├── bessel.h │ ├── butterworth.h │ ├── chebyshev.h │ ├── debug_filter_coefs.h │ ├── detail │ │ ├── bessel_poles.h │ │ ├── debug_filter_coefs.h │ │ └── filter.h │ ├── filter.h │ ├── poly.h │ └── sos.h │ ├── type_traits.h │ ├── type_traits │ ├── conjunction.h │ └── is_invocable.h │ ├── typelist.h │ ├── utility │ └── integer_sequence.h │ ├── variant.h │ └── varint.h ├── scripts ├── gen-bessel-poles.py ├── gen-signal-tests.py ├── parse-filter-coefs.py └── soak.sh └── tests ├── CMakeLists.txt ├── CMakeLists.txt.gtest ├── circular_buffer_adapter.cpp ├── constexpr_complex.cpp ├── constexpr_convolve.cpp ├── constexpr_vector.cpp ├── function.cpp ├── integer_sequence.cpp ├── lock_guard.cpp ├── move_wrapper.cpp ├── signal.cpp ├── signal_bessel_double.cpp ├── signal_bessel_float.cpp ├── signal_butter_double.cpp ├── signal_butter_float.cpp ├── signal_cheby1_double.cpp ├── signal_cheby1_float.cpp ├── signal_cheby2_double.cpp ├── signal_cheby2_float.cpp ├── test_util.h ├── typelist.cpp └── varint.cpp /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/.clang-format -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /@* 2 | /tmp/ 3 | /build*/ 4 | *.log 5 | /.gdb_history 6 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/.gitmodules -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/README.md -------------------------------------------------------------------------------- /examples/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/examples/CMakeLists.txt -------------------------------------------------------------------------------- /examples/filter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/examples/filter.cpp -------------------------------------------------------------------------------- /examples/filter_fixed_point.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/examples/filter_fixed_point.cpp -------------------------------------------------------------------------------- /include/embedded/circular_buffer_adapter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/circular_buffer_adapter.h -------------------------------------------------------------------------------- /include/embedded/config.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/config.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/complex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/complex.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/constants.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/constants.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/convolve.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/convolve.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/functions.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/functions.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/poly.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/poly.h -------------------------------------------------------------------------------- /include/embedded/constexpr_math/vector.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/constexpr_math/vector.h -------------------------------------------------------------------------------- /include/embedded/detail/circular_buffer_adapter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/detail/circular_buffer_adapter.h -------------------------------------------------------------------------------- /include/embedded/function.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/function.h -------------------------------------------------------------------------------- /include/embedded/move_wrapper.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/move_wrapper.h -------------------------------------------------------------------------------- /include/embedded/mutex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/mutex.h -------------------------------------------------------------------------------- /include/embedded/ostream_ops.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/ostream_ops.h -------------------------------------------------------------------------------- /include/embedded/preprocessor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/preprocessor.h -------------------------------------------------------------------------------- /include/embedded/signal/bessel.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/bessel.h -------------------------------------------------------------------------------- /include/embedded/signal/butterworth.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/butterworth.h -------------------------------------------------------------------------------- /include/embedded/signal/chebyshev.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/chebyshev.h -------------------------------------------------------------------------------- /include/embedded/signal/debug_filter_coefs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/debug_filter_coefs.h -------------------------------------------------------------------------------- /include/embedded/signal/detail/bessel_poles.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/detail/bessel_poles.h -------------------------------------------------------------------------------- /include/embedded/signal/detail/debug_filter_coefs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/detail/debug_filter_coefs.h -------------------------------------------------------------------------------- /include/embedded/signal/detail/filter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/detail/filter.h -------------------------------------------------------------------------------- /include/embedded/signal/filter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/filter.h -------------------------------------------------------------------------------- /include/embedded/signal/poly.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/poly.h -------------------------------------------------------------------------------- /include/embedded/signal/sos.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/signal/sos.h -------------------------------------------------------------------------------- /include/embedded/type_traits.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/type_traits.h -------------------------------------------------------------------------------- /include/embedded/type_traits/conjunction.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/type_traits/conjunction.h -------------------------------------------------------------------------------- /include/embedded/type_traits/is_invocable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/type_traits/is_invocable.h -------------------------------------------------------------------------------- /include/embedded/typelist.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/typelist.h -------------------------------------------------------------------------------- /include/embedded/utility/integer_sequence.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/utility/integer_sequence.h -------------------------------------------------------------------------------- /include/embedded/variant.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/variant.h -------------------------------------------------------------------------------- /include/embedded/varint.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/include/embedded/varint.h -------------------------------------------------------------------------------- /scripts/gen-bessel-poles.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/scripts/gen-bessel-poles.py -------------------------------------------------------------------------------- /scripts/gen-signal-tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/scripts/gen-signal-tests.py -------------------------------------------------------------------------------- /scripts/parse-filter-coefs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/scripts/parse-filter-coefs.py -------------------------------------------------------------------------------- /scripts/soak.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/scripts/soak.sh -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/CMakeLists.txt.gtest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/CMakeLists.txt.gtest -------------------------------------------------------------------------------- /tests/circular_buffer_adapter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/circular_buffer_adapter.cpp -------------------------------------------------------------------------------- /tests/constexpr_complex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/constexpr_complex.cpp -------------------------------------------------------------------------------- /tests/constexpr_convolve.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/constexpr_convolve.cpp -------------------------------------------------------------------------------- /tests/constexpr_vector.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/constexpr_vector.cpp -------------------------------------------------------------------------------- /tests/function.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/function.cpp -------------------------------------------------------------------------------- /tests/integer_sequence.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/integer_sequence.cpp -------------------------------------------------------------------------------- /tests/lock_guard.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/lock_guard.cpp -------------------------------------------------------------------------------- /tests/move_wrapper.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/move_wrapper.cpp -------------------------------------------------------------------------------- /tests/signal.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal.cpp -------------------------------------------------------------------------------- /tests/signal_bessel_double.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_bessel_double.cpp -------------------------------------------------------------------------------- /tests/signal_bessel_float.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_bessel_float.cpp -------------------------------------------------------------------------------- /tests/signal_butter_double.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_butter_double.cpp -------------------------------------------------------------------------------- /tests/signal_butter_float.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_butter_float.cpp -------------------------------------------------------------------------------- /tests/signal_cheby1_double.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_cheby1_double.cpp -------------------------------------------------------------------------------- /tests/signal_cheby1_float.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_cheby1_float.cpp -------------------------------------------------------------------------------- /tests/signal_cheby2_double.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_cheby2_double.cpp -------------------------------------------------------------------------------- /tests/signal_cheby2_float.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/signal_cheby2_float.cpp -------------------------------------------------------------------------------- /tests/test_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/test_util.h -------------------------------------------------------------------------------- /tests/typelist.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/typelist.cpp -------------------------------------------------------------------------------- /tests/varint.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mhx/libembedded/HEAD/tests/varint.cpp --------------------------------------------------------------------------------