Commit Graph

401 Commits

Author SHA1 Message Date
Peter Barker 6b7e04da06 AP_Common: Bitmask: remove copy operator and constructor 2018-11-05 12:17:55 +09:00
Lucas De Marchi cb10d1d27b AP_Common: allow more than one WITH_SEMAPHORE per context
Let the variable have a random name since we are not going to reference
it. This allows more than one WITH_SEMAPHORE() per context and also to
avoid shadowing if we open inner contexts.
2018-09-06 08:23:02 +10:00
Lucas De Marchi 1715714488 AP_Common: make WithSemaphore use an AP_HAL::Semaphore reference
We don't need the specialized one inside WithSemaphore, so use the
abstract one which allows us to more easily convert between current API
and the HAL_Semaphore one.

While at it also remove additional pragma and allow constructor to
receive a pointer for convenience (we will just dereference it).
2018-09-06 08:23:02 +10:00
Andrew Tridgell 0aeceb22d9 AP_Common: added #pragma once to Semaphores.h 2018-08-25 15:44:36 +10:00
Andrew Tridgell 912e4f16ec AP_Common: added #pragma once 2018-08-23 08:21:48 +10:00
Andrew Tridgell 5ac15714fd AP_Common: moved WITH_SEMAPHORE to Semaphore.h 2018-08-16 12:40:10 +10:00
Andrew Tridgell 6f058e8c0d AP_Common: added WithSemaphore class 2018-08-16 12:40:10 +10:00
Lucas De Marchi 88df4d127e AP_Common: remove ARRAY_SIZE_SIMPLE
Now this is basically ARRAY_SIZE, so remove it.
2018-08-04 15:31:55 +10:00
Lucas De Marchi 57ee0e29f6 AP_Common: simplify ARRAY_SIZE
This rolls back to the simpler version of ARRAY_SIZE. The more complex
one helps catching bugs when we use pointers when we are expecting an
array, but can't stand arrays with 0 elements.  I'm not aware of bugs it
actually caught on ArduPilot, although it did for me in other projects.

I think this is better than having a separate "_SIMPLE" version of the
macro and spread its usage... the trend is just to use the simpler
version anyway.
2018-08-04 15:31:55 +10:00
Peter Barker 6ba1678c5e AP_Common: AP_FWVersion: create singleton 2018-06-18 19:10:37 +01:00
Peter Barker dc202c1ff9 AP_Common: Location: use AP_AHRS singleton 2018-06-01 16:18:33 +01:00
Peter Barker 9a345160c1 AP_Common: fail attempts to use frame-above-home if home is not set 2018-06-01 16:18:33 +01:00
Peter Barker 28b4794816 AP_Common: remove unused HomeState 2018-05-29 14:38:45 +10:00
Francisco Ferreira f8756fac6b AP_Common: remove Qualcomm board support 2018-05-17 09:57:20 +10:00
Pierre Kancir 79cd137625 AP_Common: remove AP_AHRS_NavEKF include from location class 2018-04-11 08:59:50 +09:00
Andrew Tridgell 93bd546e6c AP_Common: fixed cygwin ChibiOS build
handle short path length errors
2018-03-02 17:11:31 +11:00
Andrew Tridgell 7aeab8f5a8 AP_Common: added ARRAY_SIZE_SIMPLE()
this works with zero length arrays
2018-01-15 11:46:02 +11:00
Peter Barker 302e5c6871 AP_Common: have get_vector_xy_from_origin_NE take a Vector2f rather than 3f
Also, rename it from get_vector_xy_from_origin_NED
2017-12-15 01:24:13 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas 5a0ffe94d2 AP_Common: NFC spell in comments 2017-11-27 23:13:34 +09:00
Patrick José Pereira 9693da751e AP_common: Add stdio.h when using SITL_printf
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-10-24 22:55:56 +01:00
Lucas De Marchi 54a4a78795 AP_Common: do not include version.h/ap_version.h
The interface provided by each vehicle should be used to get the
version.
2017-09-23 21:37:45 -07:00
Lucas De Marchi 370e10281b AP_Common: AP_FWVersion: add pointers to git hash strings
Keeping the hash strings on this struct allow to handle them
the same way on common code and remove ifdefs.
2017-09-23 21:37:45 -07:00
squilter 1a9bccaaa7 AP_Common: fix Bitmask out-of-range values 2017-09-09 14:05:41 +09:00
Randy Mackay 963c9c93fe AP_Common: constify bitmask 2017-09-09 14:05:41 +09:00
Randy Mackay f187df225a AP_Common: add setall, count and size methods to Bitmask 2017-09-09 14:05:41 +09:00
Peter Barker 445777429b AP_FWVersion: add structure to hold firmware version 2017-08-30 15:54:46 +01:00
Randy Mackay aaac6b3692 AP_Common: Bitmask formatting fix 2017-08-30 20:07:04 +09:00
Lucas De Marchi 3102247a85 AP_Common: add FALLTHROUGH define 2017-08-22 23:59:13 -07:00
Andrew Tridgell 71158e3e74 AP_Common: added #pragma once 2017-05-06 15:21:14 +10:00
Pierre Kancir 2200302081 AP_Common: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
murata 50eead63cc AP_Common: Unify from print or println to printf. 2017-01-27 18:20:22 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 8419045aea Spell in comments 2017-01-06 10:57:39 -08:00
Lucas De Marchi b0ddf81687 Remove stdbool.h include for C++ sources
This header is not needed in our C++ sources.
2016-12-16 11:38:52 -08:00
Andrew Tridgell 6adad11e2f AP_Common: added simple bitmask class 2016-12-02 09:49:39 +11:00
murata f9add59b58 Global: Aggregate the same definitions.
Global: Aggregate the same definitions.
2016-11-09 11:46:55 -03:00
Lucas De Marchi 6b88f3367b AP_Common: remove AP_PRODUCT_ID_* macros
These are not used anymore.
2016-11-09 17:08:05 +11:00
Lucas De Marchi 2e4c1818a3 AP_Common: add missing O_CLOEXEC definition
O_CLOEXEC is not available on Nuttx, nor it makes sense there. Define it
as 0, so we can use it in code.
2016-11-07 12:37:30 -03:00
murata c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Lucas De Marchi ae53920e5b build: don't build examples with old build system
We currently check examples are buildable with waf which doesn't need
the libraries to be specified in a make.inc file.  Having the makefiles
there is misleading since people try to build and realize the build is
broken.
2016-10-11 13:03:08 +11:00
Leandro Pereira 0f865a019a AP_HAL_Linux: Add Pollable/Poller
Add system's polling infrastructure to be notified whenever a
file descriptor is ready to be read from or written to.

Adds a few classes:
  * Poller, as an interface to epoll()
  * Pollable, as an interface to a file descriptor
2016-07-30 00:55:27 -03:00
Tom Pittenger b78255cc25 AP_Common: avoid using AP_Math is_zero() because it is classless
- because it is classless it can not be called like AP_Math::is_zero() and will then conflict with local definition of is_zero()
2016-07-20 22:32:47 -07:00
Tom Pittenger 3edd95b99b AP_Common: add Location::is_zero and ::zero member functions 2016-07-20 22:32:47 -07:00
Lucas De Marchi 471de28967 AP_Common: provide minimal byteswap.h and endian.h 2016-07-08 19:49:32 -03:00
Lucas De Marchi c728b6c164 AP_Common: missing/fenv: fix coding style 2016-07-07 11:35:18 -03:00
Siddharth Bharat Purohit 484db9ff82 AP_Common: add replacements for fe control functions systems without them 2016-07-07 11:35:18 -03:00
Lucas De Marchi 1962acad49 AP_Common: simplify ARRAY_SUBSCRIPT macro
Add DEFINE prefix, since this macro is defining these operators and
remove the parameter since we will always use it to access a
union/struct as a byte array.
2016-06-23 21:02:05 -03:00
Gustavo Jose de Sousa 5154369e9d AP_Common: define the ARRAY_SUBSCRIPT macro 2016-06-23 21:02:05 -03:00
Lucas De Marchi 8a58c06adb AP_Common: add macro to ignore unused result
In some cases we want to call functions annotated with
warn_unused_result but we know it's safe to ignore the return value.
Prefixing with (void) used to work, but it doesn't do anymore on all
versions of gcc and clang.
See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425

This solution is a mix of the solutions provided in the above bug report
and the one provided by Gustavo Sousa at
https://github.com/ArduPilot/ardupilot/pull/4277#issuecomment-224957375
2016-06-23 18:34:01 -03:00
Francisco Ferreira ac90527da5 AP_Common: change check from GCC version to glibc version (and Cygwin) 2016-06-23 18:19:54 +10:00