Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/massimo-marino/circular-buffer
A C++17 implementation of a circular buffer
https://github.com/massimo-marino/circular-buffer
circular-buffer clang cpp cpp14 cpp17 cpp1z producer-consumer
Last synced: about 10 hours ago
JSON representation
A C++17 implementation of a circular buffer
- Host: GitHub
- URL: https://github.com/massimo-marino/circular-buffer
- Owner: massimo-marino
- License: gpl-3.0
- Created: 2017-09-14T15:28:58.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-20T15:06:54.000Z (4 months ago)
- Last Synced: 2024-05-20T17:38:05.987Z (4 months ago)
- Topics: circular-buffer, clang, cpp, cpp14, cpp17, cpp1z, producer-consumer
- Language: C++
- Homepage:
- Size: 45.9 KB
- Stars: 6
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# circular-buffer
C++17/20 implementation of a circular buffer#### Requirements
`cmake` is used to compile the sources.
The cmake file compiles with `C++20`.
The unit tests are implemented in googletest: be sure you have installed googletest to compile.
#### Install
```bash
$ git clone https://github.com/massimo-marino/circular-buffer.git
$ cd circular-buffer
$ mkdir build
$ cd build
$ cmake ..
$ make
```#### Run Unit Tests
```bash
$ cd src/unitTests
$ ./unitTests
```#### Run Example
Remove `-DDO_LOGS` from `CMAKE_CXX_FLAGS` in the cmake file to see no logs printed at run-time.
```bash
$ cd ../example
$ ./circular-buffer-example
```