{"id":18927939,"url":"https://github.com/karljj1/kdis","last_synced_at":"2025-04-15T13:34:32.343Z","repository":{"id":42050091,"uuid":"458791953","full_name":"karljj1/kdis","owner":"karljj1","description":"A complete open source C++11 implementation of DIS (Distributed Interactive Simulation, IEEE 1278.1). The 1278.1-2012 (\"DIS7\"), 1278.1A-1998 (\"DIS6\"), and 1278.1-1995 (\"DIS5\") versions of the standard are fully implemented including enumerations and utilities to guide your DIS app development.","archived":false,"fork":false,"pushed_at":"2025-03-21T07:02:10.000Z","size":3981,"stargazers_count":32,"open_issues_count":19,"forks_count":12,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-28T22:25:09.668Z","etag":null,"topics":["cpp","data-formats","dis","kdis","networking","protocols","simulation"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/karljj1.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-13T11:41:22.000Z","updated_at":"2025-03-25T10:28:35.000Z","dependencies_parsed_at":"2023-10-17T04:25:00.946Z","dependency_job_id":"30aa8944-c7d1-4538-ab59-9bb67ecae7d2","html_url":"https://github.com/karljj1/kdis","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karljj1%2Fkdis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karljj1%2Fkdis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karljj1%2Fkdis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karljj1%2Fkdis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/karljj1","download_url":"https://codeload.github.com/karljj1/kdis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249080703,"owners_count":21209563,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","data-formats","dis","kdis","networking","protocols","simulation"],"created_at":"2024-11-08T11:21:51.417Z","updated_at":"2025-04-15T13:34:32.335Z","avatar_url":"https://github.com/karljj1.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# KDIS\n\n[![version](https://img.shields.io/github/v/release/karljj1/kdis?label=version)](https://github.com/karljj1/kdis/releases/latest)\n[![release](https://github.com/karljj1/kdis/actions/workflows/release.yaml/badge.svg)](https://github.com/karljj1/kdis/actions/workflows/release.yaml)\n[![codecov](https://codecov.io/gh/karljj1/kdis/branch/master/graph/badge.svg)](https://codecov.io/gh/karljj1/kdis)\n\nOpen source implementation of `DIS` (_Distributed Interactive Simulation_) `IEEE 1278.1`\n\n## Contributing\n\nI would love to see your contribution :heart:\n\nSee [CONTRIBUTING](./CONTRIBUTING.md) guidelines\n\n## Development\n\n### Requirements\n\n| **Name**       | **Homepage**                                   |    **Required**    | **Notes**                     |\n| :------------- | :--------------------------------------------- | :----------------: | :---------------------------- |\n| `CXX Compiler` |                                                | :heavy_check_mark: | _`\u003e= C++11`_                  |\n| `CMake`        | \u003chttps://cmake.org\u003e                            | :heavy_check_mark: | _`\u003e= 3.14`_                   |\n| `Clang Format` | \u003chttps://clang.llvm.org/docs/ClangFormat.html\u003e |        :x:         |                               |\n| `Clang Tidy`   | \u003chttps://clang.llvm.org/extra/clang-tidy\u003e      |        :x:         |                               |\n| `cmake lang`   | \u003chttps://github.com/cheshirekow/cmake_format\u003e  |        :x:         | `pip install cmakelang[YAML]` |\n| `Doxygen`      | \u003chttps://www.doxygen.nl\u003e                       |        :x:         | Documentation                 |\n\n### Build Options\n\n| **Name**                    | **Description**                                                                                                                                      | **Type** | **Default**                                                                                    | **Notes**                                                                                                                       |\n| :-------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- | :------- | :--------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ |\n| `DIS_VERSION`               | `DIS` version: \u003cbr/\u003e \u003cul\u003e\u003cli\u003e`5`\u003cbr/\u003e_IEEE 1278.1-1995_\u003c/li\u003e\u003cli\u003e`6`\u003cbr/\u003e_IEEE 1278.1A-1998_\u003c/li\u003e\u003cli\u003e`7`\u003cbr/\u003e_IEEE 1278.1x-2012_\u003c/li\u003e\u003c/ul\u003e            | `STRING` | `7`                                                                                            |                                                                                                                                 |\n| `KDIS_USE_ENUM_DESCRIPTORS` | Enumeration descriptors. \u003cbr/\u003e Allow `enum` values to be turned into their text labels. \u003cbr/\u003e :warning: Increase the memory footprint of the library | `BOOL`   | `ON`                                                                                           |                                                                                                                                 |\n| `KDIS_BUILD_INSTALL`        | Build install                                                                                                                                        | `BOOL`   | [PROJECT_IS_TOP_LEVEL](https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html) |                                                                                                                                 |\n| `KDIS_BUILD_DOCS`           | Build documentation                                                                                                                                  | `BOOL`   | [PROJECT_IS_TOP_LEVEL](https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html) | [`Doxygen`](https://www.doxygen.nl) is required                                                                                 |\n| `KDIS_BUILD_EXAMPLES`       | Build examples                                                                                                                                       | `BOOL`   | [PROJECT_IS_TOP_LEVEL](https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html) |                                                                                                                                 |\n| `KDIS_BUILD_TESTS`          | Build tests                                                                                                                                          | `BOOL`   | [PROJECT_IS_TOP_LEVEL](https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html) |                                                                                                                                 |\n| `KDIS_BUILD_TESTS_COVERAGE` | Build tests coverage                                                                                                                                 | `BOOL`   | [PROJECT_IS_TOP_LEVEL](https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html) | Build option `KDIS_BUILD_TESTS` must be `ON`. \u003cbr/\u003e [`LCOV`](https://github.com/linux-test-project/lcov) is required            |\n| `BUILD_SHARED_LIBS`         | Build shared library                                                                                                                                 | `BOOL`   | `ON`                                                                                           | See [BUILD_SHARED_LIBS](https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html) documentation for more information |\n\n### Build\n\n1. Generate project\n\n    \u003e [!TIP]\n    \u003e Change build options' values as needed\n\n    ```sh\n    cmake \\\n        -S . \\\n        -B ./build \\\n        -DCMAKE_BUILD_TYPE:STRING=Release \\\n        -DDIS_VERSION:STRING=7 \\\n        -DKDIS_USE_ENUM_DESCRIPTORS:BOOL=ON \\\n        -DKDIS_BUILD_INSTALL:BOOL=OFF \\\n        -DKDIS_BUILD_DOCS:BOOL=OFF \\\n        -DKDIS_BUILD_EXAMPLES:BOOL=OFF \\\n        -DKDIS_BUILD_TESTS:BOOL=OFF \\\n        -DKDIS_BUILD_TESTS_COVERAGE:BOOL=OFF \\\n        -DBUILD_SHARED_LIBS:BOOL=ON\n    ```\n\n1. Build project\n\n    \u003e [!NOTE]\n    \u003e Change value of `--config` to match value of `CMAKE_BUILD_TYPE`\n\n    ```sh\n    cmake \\\n        --build ./build \\\n        --config Release\n    ```\n\n## Documentation\n\n\u003e [!IMPORTANT]\n\u003e `KDIS_BUILD_DOCS:BOOL=ON` required\n\nFile `index.html` available under [`build/html`](./build/html) directory\n\n```sh\ncmake \\\n    --build ./build \\\n    --target KDIS_docs\n```\n\n## Examples\n\n\u003e [!IMPORTANT]\n\u003e `KDIS_BUILD_EXAMPLES:BOOL=ON` required\n\nMore information can be found in [`examples/README.md`](./examples/README.md)\n\n## Tests\n\n\u003e [!IMPORTANT]\n\u003e `KDIS_BUILD_TESTS:BOOL=ON` required\n\n\u003e [!NOTE]\n\u003e Change value of `--build-config` to match value of `CMAKE_BUILD_TYPE`\n\nMore information can be found in [`tests/README.md`](./tests/README.md)\n\n```sh\nctest \\\n    --verbose \\\n    --test-dir ./build/tests \\\n    --build-config Release\n```\n\n### Coverage\n\n\u003e [!IMPORTANT]\n\u003e `KDIS_BUILD_TESTS_COVERAGE:BOOL=ON` required\n\nFile `index.html` available under [`build/kdis_coverage`](./build/kdis_coverage) directory\n\n```sh\ncmake \\\n    --build ./build \\\n    --config Debug \\\n    --target KDIS_coverage\n```\n\nMore information can be found in [`tests/README.md`](./tests/README.md)\n\n## Scripts\n\nMore information can be found in [`scripts/README.md`](./scripts/README.md)\n\n## License\n\nThis project is licensed under the [BSD 2-Clause](https://opensource.org/license/bsd-2-clause) \"Simplified\" License \\\nSee [LICENSE](./LICENSE) file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarljj1%2Fkdis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkarljj1%2Fkdis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarljj1%2Fkdis/lists"}