Skip to main content

A C++ library to speed up jdrones computations

Project description

libjdrones

CI

A fast quadcopter support library written in C++ for jdrones.

Installation

If you're simply looking for python, run pip install libjdrones.

Else, to install the C++ library run

git clone  https://github.com/iwishiwasaneagle/libjdrones
cd libjdrones
cmake \
    -B build
    -DCMAKE_BUILD_TYPE=Release \
    .
cmake \
    --build build \
    --target install

With conda, be sure to add -DCMAKE_INSTALL_PREFIX=${CONDA_PREFIX} -DCMAKE_PREFIX_PATH=${CONDA_PREFIX} to ensure that it is correctly installed in the env.

Dependencies

Eigen3

Please see the official documentation.

pybind

The minimum version of pybind11 depends on the version of python. It is advised to either install from source or using pip (pip install "pybind11[global]>=2.11.0").

WARNING: Ubuntu 22.04 only ships with pybind11@v2.9.1.

Python pybind11-dev
3.10 2.9.0
3.11 2.10.0
3.12 2.11.0

google benchmark

Please see the official documentation

Run tests

Catch2>=v3.4.0 is required (see CI.yml)

cmake -B build \
  -DJDRONES_ENABLE_UNIT_TESTING=ON \
  -DCMAKE_BUILD_TYPE=Debug
cmake --build build -j $(nproc)
ctest --test-dir build

With coverage

Add -DJDRONES_ENABLE_CODE_COVERAGE=ON to the initial cmake call.

lcov --capture --directory build --output-file coverage.info
lcov --remove coverage.info --output-file coverage.info '/usr/*' '*/test/*' '*/extern/*' '*/geos/*'
genhtml coverage.info -o build/html
firefox build/html/index.html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

libjdrones-0.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (360.8 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

libjdrones-0.1.1-cp312-cp312-musllinux_1_1_x86_64.whl (887.6 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

libjdrones-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (367.2 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

libjdrones-0.1.1-cp311-cp311-musllinux_1_1_x86_64.whl (890.2 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

libjdrones-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (366.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

libjdrones-0.1.1-cp310-cp310-musllinux_1_1_x86_64.whl (888.6 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

libjdrones-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (365.7 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

File details

Details for the file libjdrones-0.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 19ae5bf5736d13666304e4a87f854a236ca15a682e424edc89c66cdb508fbb45
MD5 feefdb43fb91732e59c695f430a362f6
BLAKE2b-256 fd1937db4006a3ba8c2e6f496206beb9ec4b9d4f949345060ec3470928e76f22

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 efcb2c60d75ff72adf3367c9387c67bc0e01221c0b96a3a45d03a3bb42a9b90d
MD5 e16b2800970857423a78aec9c14f0eab
BLAKE2b-256 57b8a3505138536cf1c37398306a2fbc5a691d5d3b2af8dc4f16e2406e67bd1f

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c4661d8171b1db039d982c903b1b1e5c32e686c5fa57bc7556001752a2ccb041
MD5 c3782d44e6ba0711f1e09fbf070a863f
BLAKE2b-256 14daf77ab74f63a175034745be1de6b9ec38e10db328ffd539ee41af9c6864ae

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 346caecdbbd527ac1567203a86b898376f01fb541d857513c5331b694c981445
MD5 7a66c72c4f8f35130af4dc6319913098
BLAKE2b-256 22083316c4e429d501a37f3bd5798651122423de142f3a7adc7d8697e74d7d2c

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8d8e1f027c4a94b81b5b7e38c05aed08107c6d98fdc0e91f53cb90c43cb137db
MD5 5eb99d59b3733a4fce59a7e6e57f8613
BLAKE2b-256 c5d075baaa4fca6a373173c973f3f43e386c7ad12cd52c32c938f032e91a38de

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 13a25611b468a1607557465f5c2ffbb9a1409c337140c7d22a44e5bd517cf3e3
MD5 0a9e8cbba624b8581d3d0ce02d958c6d
BLAKE2b-256 6fefe7dcad99f2058e326f1fbd6d37ba2f199ee80f8e6470b218afa9379bbd41

See more details on using hashes here.

File details

Details for the file libjdrones-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libjdrones-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9c21b78be496e9ae0d222b56ae53cac9542cdf7cedb91f1556850ea6ca82ae8
MD5 05c2d37ed7696867a53b5eb43d3b0f37
BLAKE2b-256 2522f4c71726717ab1ed4fa569859d0c00b6161de8fee89727fd37d2e3f8655f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page