3 [![release](https://github.com/karljj1/kdis/actions/workflows/release.yaml/badge.svg)](https://github.com/karljj1/kdis/actions/workflows/release.yaml)
4 [![codeql](https://github.com/karljj1/kdis/actions/workflows/codeql.yaml/badge.svg)](https://github.com/karljj1/kdis/actions/workflows/codeql.yaml)
6 Open source implementation of `DIS` (_Distributed Interactive Simulation_) `IEEE 1278.1`
10 I would love to see your contribution :heart:
12 See [CONTRIBUTING](./CONTRIBUTING.md) guidelines
18 | **Name** | **Homepage** | **Required** | **Notes** |
19 | -------------- | ---------------------------------------------- | :----------------: | ----------------------------------------------------------------------------------------------------------------- |
20 | `CXX Compiler` | | :heavy_check_mark: | [`GCC`](https://gcc.gnu.org) \| [`Clang`](https://clang.llvm.org) \| [`MSVC`](https://visualstudio.microsoft.com) |
21 | `CMake` | <https://cmake.org> | :heavy_check_mark: | _Version `>= 3.14`_ |
22 | `Clang Format` | <https://clang.llvm.org/docs/ClangFormat.html> | :x: |
23 | `Clang Tidy` | <https://clang.llvm.org/extra/clang-tidy> | :x: |
24 | `Cppcheck` | <https://github.com/danmar/cppcheck> | :x: |
25 | `Cpplint` | <https://github.com/cpplint/cpplint> | :x: | `pip install cpplint` |
26 | `cmake lang` | <https://github.com/cheshirekow/cmake_format> | :x: | `pip install cmakelang[YAML]` |
27 | `Doxygen` | <https://www.doxygen.nl> | :x: | Documentation |
31 | **Name** | **Description** | **Type** | **Default** |
32 | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ----------- |
33 | `DIS_VERSION` | `DIS` version: <br/> <ul><li>`5`<br/>_IEEE 1278.1-1995_</li><li>`6`<br/>_IEEE 1278.1A-1998_</li><li>`7`<br/>_IEEE 1278.1x-2012_</li></ul> | `STRING` | `7` |
34 | `KDIS_USE_ENUM_DESCRIPTORS` | Enumeration descriptors. <br/> Allow `enum` values to be turned into their text labels. <br/> :warning: Increase the memory footprint of the library | `BOOL` | `TRUE` |
35 | `KDIS_BUILD_DOCS` | Build documentation | `BOOL` | `FALSE` |
36 | `KDIS_BUILD_EXAMPLES` | Build examples | `BOOL` | `FALSE` |
37 | `KDIS_BUILD_TESTS` | Build tests | `BOOL` | `FALSE` |
38 | `BUILD_SHARED_LIBS` | Build shared library | `BOOL` | `TRUE` |
45 > Change build options' values as needed
51 -DCMAKE_BUILD_TYPE:STRING=Release \
52 -DDIS_VERSION:STRING=7 \
53 -DKDIS_USE_ENUM_DESCRIPTORS:BOOL=TRUE \
54 -DBUILD_SHARED_LIBS:BOOL=TRUE \
55 -DBUILD_DOCS:BOOL=FALSE \
56 -DBUILD_EXAMPLES:BOOL=FALSE \
57 -DBUILD_TESTS:BOOL=FALSE
63 > Change value of `--config` to match value of `CMAKE_BUILD_TYPE`
74 > `KDIS_BUILD_DOCS:BOOL=TRUE` required
76 File `index.html` available under [`build/docs/html`](./build/docs/html) directory
78 More information can be found in [`docs/README.md`](./docs/README.md)
83 > `KDIS_BUILD_EXAMPLES:BOOL=TRUE` required
85 More information can be found in [`examples/README.md`](./examples/README.md)
89 More information can be found in [`scripts/README.md`](./scripts/README.md)
94 > `KDIS_BUILD_TESTS:BOOL=TRUE` required
97 > Change value of `--build-config` to match value of `CMAKE_BUILD_TYPE`
102 --test-dir ./build/tests \
103 --build-config Release
106 More information can be found in [`tests/README.md`](./tests/README.md)
110 This project is licensed under the [BSD 2-Clause](https://opensource.org/license/bsd-2-clause) "Simplified" License \
111 See [LICENSE](./LICENSE) file for details