pacemaker is a lightweight C++ wrapper around the ETAS INCA COM API. It lets you programmatically register the calibration parameters, set their values in real time, and control measurement recordings, without touching INCA's GUI.
To start, clone the repository and move into the root directory
git clone https://github.com/marcope-98/pacemaker.git
cd pacemakerNote
An MSVC compiler must be avaible on your system. For a portable alternative, see PortableBuildTools by Data-Oriented-House.
cmake -B build -S . ^
-DETAS_INCACOM_TLB="<path/to/incacom.tlb>" ^
-DCMAKE_BUILD_TYPE="<Release|Debug|RelWithDebInfo|MinSizeRel>"
cmake --build build --target pacemakerYou can supply a incacom.tlb file via ETAS_INCACOM_TLB CMake variable, by specifying its absolute path. Otherwise a find module will take care of finding its location in regedit.
Due to backward compatibility issues, only ETAS INCA 7.4 and later installations are supported.
Build the tests target and then run the test suite via CTest:
cmake -B build -S . ^
-DPACEMAKER_BUILD_TESTS=ON
cmake --build build --target tests
ctest --test-dir build --output-on-failureThe CMake option PACEMAKER_BUILD_TESTS is ON by default in case the project is the top level project.
To run a specific test by name or pattern, use the -R flag
ctest --test-dir build --output-on-failure -R <test-name>Tip
Add -j <N> to run up to N tests in parallel, or --rerun-failed to only re-execute tests that failed in the previous run
The Software Requirements Specification (SRS) and Test Specification (TS) documents are written in LaTeX and built using latexmk perl script via MiKTeX.
Dependencies:
- MiKTeX: LaTeX distribution (install
latexmkvia its package manager) - Strawberry perl: Perl runtime for Windows
cmake -B build -S . ^
-DMIKTEX_BINARY_PATH="<path/tp/miktex/bin>" ^
-DPACEMAKER_BUILD_REQUIREMENTS=ON
cmake --build build --target requirementsMIKTEX_BINARY_PATH is only required for portable MiKTeX installations.
The CMake option PACEMAKER_BUILD_REQUIREMENTS is ON by default in case the project is the top level project.
API documentation is generated with Doxygen and Graphviz.
cmake -B build -S . ^
-DDOXYGEN_EXECUTABLE="<path/to/doxygen>" ^
-DDOXYGEN_DOT_EXECUTABLE="<path/to/dot>" ^
-DPACEMAKER_BUILD_DOCS=ON
cmake --build build --target docsNote
DOXYGEN_EXECUTABLE and DOXYGEN_DOT_EXECUTABLE are only required for portable installations
The CMake option PACEMAKER_BUILD_REQUIREMENTS is ON by default in case the project is the top level project.
We welcome contributions from everyone in the community! To get started, please read our CONTRIBUTING.md guide. Whether you're adding a new feature, improving documentation, or fixing a bug, your help and feedback are invaluable.
- Marco Peressutti - @marcope-98