This is an implementation of a thread-safe class for managing a large bitset (e.g. 256bits) that provides some simple operations to manipulate and query individual bits.
For the sake of portability bitset library was not used as its not portable across different embedded architectures. Bitwise operators were used as this is portable.
Doxygen was used for the documentaion generation. The provided docker file and steps should build and run the application and source code provided dependencies are missing. Would recommend while running the container to mount the source code. This allows the user to view the doxygen report externally in the browser once they have been generated.
- cmake
- make
- doxygen
- g++
-
Clone the repo
-
Build the project
make all
-
Run the executable. From the root directory
./build/brompton
-
Run the google tests for the project through the following command
make test
-
Generate and run the docs locally through the following command
make docs
The doxygen should automatically be gennerated under the docs/ directory. The doxygen html report should automatically open up in the designated broswer of your choice with all the documentation.
-
Clone the repo
-
Within the root directory where the dockerfile lives. Build the docker image
# Build the docker image docker build -t brompton:1.0 .
-
Once the docker image is built, Run the image
# Mount the source code to create a shared link with host machine # and the docker container. docker run -it --rm -v "Entire path to the <Brompton> repo ":/brompton brompton:1.0
-
Run the following for each specific task
# To Build the project make all # To run the tests make test # To generate and view the documentation # Within the docker container cannot view the # documentation. make docs # To clean the directory run: make clean
To view the documentation on the browser once the docs have been generated. Run the following command
# Windows run
start docs/html/index.html
# Linux run same for MacOS
xdg-open docs/html/index.html