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

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.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (202.7 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

libjdrones-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl (726.2 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

libjdrones-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (204.8 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

libjdrones-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl (727.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

libjdrones-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (205.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

libjdrones-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl (725.8 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

libjdrones-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (204.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 18768a0868284b95ba7c2d975830550b5521c1378d28f2399025c16e6de3e1ed
MD5 1706d19aee93866677dd5b43e8019c3f
BLAKE2b-256 c5e550e353e0cee979571dd1328463197fbf09a22d54392883975a8b08447560

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a0424197820506f5ed672aa31258dddec6448a691e14ac6d80870193cc66920d
MD5 4024e5ba3eefc6cd05fd4e4f5291c7c7
BLAKE2b-256 17fe443cef974be8598d1c4f463c55975d38eae45226fd850d4410577891a621

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 436640a5e936661fc42fa0c3e4e62e6c4afd95fe7f86d5c5a7c634ea7f570609
MD5 94d8dc88fdaf9497b7e07dd7cf3e948f
BLAKE2b-256 458e3e11c2d3ce43dcd990043e8b542ffc3e512a8593d7c7e3608e20249fbd2a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b5e7a4b81ebb97e91ee5cf0be4d12cbebdf0f3f973ad981a00e7b609cb4ff5c6
MD5 93b6d674ad4e7a718908183f46480dc2
BLAKE2b-256 bebe1ebd906e9a8e3d00f571a3360fbcc8a4918cb869cb7508e4d2acaab3874c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb3a2e7d13c81d027724a168e64add40d035243a350042b1a124abf5ccc8ac32
MD5 884e42abeeaabb7940eeff0887e8d04a
BLAKE2b-256 30f8750ac1c1c8a3034bf66baaadb631d5a35ecc546a5a14e17cf1c37c8a3259

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 c50fe5236161a9e4aa3234f4953278859fc8618b1ba2433339e816b24baaa4d6
MD5 347d14dba6adda6ebadfb634476bf086
BLAKE2b-256 456cb43005aaaeea7c7ab98242ece0ec8f0ab3cde1500d56f4f99179ebf07e7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libjdrones-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 74eccd9599e8ae5effdebb6517f365da280fbbcf041c01a6fa84d99c5bdc1573
MD5 ac82b6cd435aca936f81a3acd5a1d4d3
BLAKE2b-256 6821e84d0ccef195a86a028f21127b8c9a67bb857eed294c0d8ba4da1e9c1c07

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