Menu

Tree [1e8d29] master /
 History

HTTPS access


File Date Author Commit
 .github 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 .vscode 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 cmake 2023-10-11 carlocorradini carlocorradini [d2cace] fix: cmake install and possible conflicting opt...
 docs 2023-10-11 carlocorradini carlocorradini [fb5adf] chore: check script, readme and better clang-fo...
 examples 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 include 2023-10-11 carlocorradini carlocorradini [fb5adf] chore: check script, readme and better clang-fo...
 scripts 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 src 2023-10-11 carlocorradini carlocorradini [fb5adf] chore: check script, readme and better clang-fo...
 tests 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 .clang-format 2023-10-11 carlocorradini carlocorradini [fb5adf] chore: check script, readme and better clang-fo...
 .clang-tidy 2023-09-27 carlocorradini carlocorradini [71c20f] chore: added clang-format, clang-tidy and cmake...
 .cmake-format 2023-09-27 carlocorradini carlocorradini [71c20f] chore: added clang-format, clang-tidy and cmake...
 .editorconfig 2023-09-27 carlocorradini carlocorradini [7bd6ce] chore: editorconfig, cppcheck, cpplint and doxy...
 .gitattributes 2023-09-27 carlocorradini carlocorradini [df3425] chore: gitattributes and gitignore
 .gitignore 2023-10-10 carlocorradini carlocorradini [e66879] feat: CMake export header
 CHANGELOG.md 2023-10-12 Karl Jones Karl Jones [a83263] Update CHANGELOG.md
 CMakeLists.txt 2023-10-11 carlocorradini carlocorradini [0358be] chore: fix clang-format and all cmake bool opti...
 CONTRIBUTING.md 2023-10-08 carlocorradini carlocorradini [ad87fa] Structure, better CMake, Clang format, Clang ti...
 CPPLINT.cfg 2023-09-27 carlocorradini carlocorradini [7bd6ce] chore: editorconfig, cppcheck, cpplint and doxy...
 Doxyfile.in 2023-09-27 carlocorradini carlocorradini [7bd6ce] chore: editorconfig, cppcheck, cpplint and doxy...
 KConfig.hpp.in 2023-10-10 carlocorradini carlocorradini [e66879] feat: CMake export header
 LICENSE 2023-09-27 carlocorradini carlocorradini [d546f0] chore: fix by git
 README.md 2023-10-11 carlocorradini carlocorradini [b5e688] docs: fix typo
 cppcheck.cppcheck 2023-10-08 carlocorradini carlocorradini [ad87fa] Structure, better CMake, Clang format, Clang ti...

Read Me

KDIS

release
codeql

Open source implementation of DIS (Distributed Interactive Simulation) IEEE 1278.1

Contributing

I would love to see your contribution ❤️

See CONTRIBUTING guidelines

Development

Requirements

Name Homepage Required Notes
CXX Compiler ✔️ GCC | Clang | MSVC
CMake https://cmake.org ✔️ Version >= 3.14
Clang Format https://clang.llvm.org/docs/ClangFormat.html
Clang Tidy https://clang.llvm.org/extra/clang-tidy
Cppcheck https://github.com/danmar/cppcheck
Cpplint https://github.com/cpplint/cpplint pip install cpplint
cmake lang https://github.com/cheshirekow/cmake_format pip install cmakelang[YAML]
Doxygen https://www.doxygen.nl Documentation

Build Options

Name Description Type Default
DIS_VERSION DIS version:
  • 5
    IEEE 1278.1-1995
  • 6
    IEEE 1278.1A-1998
  • 7
    IEEE 1278.1x-2012
STRING 7
KDIS_USE_ENUM_DESCRIPTORS Enumeration descriptors.
Allow enum values to be turned into their text labels.
⚠️ Increase the memory footprint of the library
BOOL TRUE
KDIS_BUILD_DOCS Build documentation BOOL FALSE
KDIS_BUILD_EXAMPLES Build examples BOOL FALSE
KDIS_BUILD_TESTS Build tests BOOL FALSE
BUILD_SHARED_LIBS Build shared library BOOL TRUE

Build

  1. Generate project

    [!NOTE]
    Change build options' values as needed

    sh cmake \ -S . \ -B ./build \ -DCMAKE_BUILD_TYPE:STRING=Release \ -DDIS_VERSION:STRING=7 \ -DKDIS_USE_ENUM_DESCRIPTORS:BOOL=TRUE \ -DBUILD_SHARED_LIBS:BOOL=TRUE \ -DBUILD_DOCS:BOOL=FALSE \ -DBUILD_EXAMPLES:BOOL=FALSE \ -DBUILD_TESTS:BOOL=FALSE

  2. Build project

    [!NOTE]
    Change value of --config to match value of CMAKE_BUILD_TYPE

    sh cmake \ --build ./build \ --config Release

Documentation

[!IMPORTANT]
KDIS_BUILD_DOCS:BOOL=TRUE required

File index.html available under build/docs/html directory

More information can be found in docs/README.md

Examples

[!IMPORTANT]
KDIS_BUILD_EXAMPLES:BOOL=TRUE required

More information can be found in examples/README.md

Scripts

More information can be found in scripts/README.md

Tests

[!IMPORTANT]
KDIS_BUILD_TESTS:BOOL=TRUE required

[!NOTE]
Change value of --build-config to match value of CMAKE_BUILD_TYPE

ctest \
    --verbose \
    --test-dir ./build/tests \
    --build-config Release

More information can be found in tests/README.md

License

This project is licensed under the BSD 2-Clause "Simplified" License \
See LICENSE file for details