Caio Marcelo de Oliveira Filho
ec52df991c
build: compile only the HAL files needed by the board
...
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho
2e464a53c2
AP_HAL: make code not depend on concrete HAL implementations
...
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.
A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.
The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.
Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.
The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Gustavo Jose de Sousa
4790371f9b
AP_Math: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:38:18 +10:00
Lucas De Marchi
0471de2342
AP_Math: use ARRAY_SIZE macro
2015-07-21 14:25:09 +09:00
Lucas De Marchi
fb2eb262e7
AP_Math: use ARRAY_SIZE instead of defining another one
2015-07-21 14:24:49 +09:00
Andrew Tridgell
6009ae55b1
AP_Math: fixed build of eulers example sketch
2015-07-17 08:24:49 +10:00
Andrew Tridgell
3edac37929
AP_Math: removed unused include in example
2015-06-01 17:35:03 +10:00
Andrew Tridgell
4d040bbb94
AP_Math: convert example from .pde to .cpp
2015-06-01 17:07:04 +10:00
Andrew Tridgell
2b828a794e
AP_Math: fixed example build
2015-06-01 16:36:54 +10:00
Randy Mackay
114c4f4077
AP_Match: fix example sketch
2015-05-27 09:47:24 +09:00
Andrew Tridgell
605b8b4ece
AP_Math: converted rotations example to cpp
...
this is just a test conversion before we start converting on-mass
2015-05-21 13:41:20 +10:00
Andrew Tridgell
062c9406bd
AP_Math: fixed rotations example build
2015-05-21 13:37:44 +10:00
Tom Pittenger
e20ffa8c75
AP_Math: replace fabs() with fabsf()
2015-05-09 09:57:27 +10:00
Tom Pittenger
a5d2f3a82f
AP_Math: compiler warnings: float to double
2015-05-05 13:26:52 +10:00
Andrew Tridgell
eca675c556
AP_Math: fix for HAL_SITL rename
2015-05-05 09:45:55 +10:00
Randy Mackay
fecbf06008
AP_Math: fix example sketches
2015-05-01 20:57:38 +09:00
Tom Pittenger
a8dda9f2ed
AP_Math: fix compile warnings re float constants
2015-04-24 14:03:54 +09:00
Randy Mackay
689cc9e298
AP_Math: fix example sketch
2015-01-28 17:15:43 +09:00
Jonathan Challinger
9e5a30d5ba
AP_Math: change ROTATION_YAW_293_PITCH_68_ROLL_180 to ROLL_90
2015-01-02 17:15:18 +09:00
Andrew Tridgell
38c5f25c70
AP_Math: fixed example build
2014-11-25 13:22:17 +11:00
Randy Mackay
503d14428d
AP_Math: add new rotation to example rotation sketch
2014-11-22 14:10:00 +09:00
Jonathan Challinger
cdd2199138
AP_Math: expand frame transformation test case for quaternions
2014-10-20 06:24:33 +11:00
Jonathan Challinger
70845882a7
AP_Math: fix up rotation test suite
2014-10-20 06:24:27 +11:00
Andrew Tridgell
184c4c8ac5
AP_Math: fixed example build
2014-08-13 22:12:04 +10:00
Andrew Tridgell
917c9f7865
AP_Math: fixed example build
2014-08-13 21:48:35 +10:00
Andrew Tridgell
03dc27147e
AP_Math: port examples to Linux
2014-07-29 15:49:38 +10:00
Andrew Tridgell
aa5940c378
AP_Math: fixed example build
2014-07-25 17:51:30 +10:00
Andrew Tridgell
e566802bf3
AP_Math: fixed example build
2014-04-07 07:37:34 +10:00
Niels Joubert
879eb5936b
AP_MATH: Adding WGS GPS conversions, CRC16 checks, and double-precision Vectors and Matrices
2014-04-05 13:42:23 +11:00
Andrew Tridgell
9278685cdf
AP_Math: fixed location build on SITL
2014-04-01 14:20:10 +11:00
Andrew Tridgell
acd54d0826
AP_Math: fixed example build
2014-03-19 12:13:48 +09:00
Andrew Tridgell
2df314799e
AP_Math: added tests for quaternion to/from rotation matrix
2014-02-15 12:20:51 +11:00
Andrew Tridgell
c1dff6aa65
AP_Math: fixed example build
2014-02-15 06:39:43 +11:00
Andrew Tridgell
93070a673e
AP_Math: fixed example build
2014-01-30 13:33:46 +11:00
Andrew Tridgell
9b5b4ced60
AP_Math: fixed example build
2013-12-17 11:51:37 +11:00
Andrew Tridgell
fb19dbb404
AP_Math: cope with large values passed into the wrap functions
...
this uses modulus if the function would loop too many times
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-10-03 12:21:07 +10:00
Andrew Tridgell
873e54deb1
AP_Math: fixed example build
2013-08-30 13:01:39 +10:00
Andrew Tridgell
4c752e4a94
AP_Math: simplify rotations test code
2013-08-30 13:01:34 +10:00
Andrew Tridgell
a295a01bbc
AP_Math: added missing 90 degree rotations
...
this ensures we can handle all 90 degree rotations of the compass and
main board. A test in examples/rotations shows that we have them all.
2013-08-30 13:01:33 +10:00
Andrew Tridgell
2b1fcc964f
AP_Math: added a quick test of floating point location accuracy
...
just confirming some maths ...
2013-08-30 13:01:32 +10:00
Andrew Tridgell
9cb6c987d4
AP_Math: fixed example build
2013-08-05 12:37:51 +10:00
Andrew Tridgell
1d75b52411
AP_Math: use const references not pointers for location functions
...
this makes life a bit easier for the new AP_Mission library
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:23:40 +10:00
tobias
217b8d7a59
cleanup: use const for struct Location pointers and references
...
this allows the compiler to generate more efficient code
2013-04-09 12:10:32 +10:00
James Bielman
5631f865b2
Update floating point calculations to use floats instead of doubles.
...
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Andrew Tridgell
38062bbb6d
AP_Math: support some more rotation combinations
2013-01-13 17:32:48 +11:00
Andrew Tridgell
374af1cd14
build: change from Arduino.mk to apm.mk
2013-01-02 17:29:37 +11:00
Andrew Tridgell
a1187519a8
AP_HAL: use AP_HAL_BOARD_DRIVER in remaining test sketches
2012-12-20 14:52:37 +11:00
Andrew Tridgell
a76688e630
Math: fixed example warnings
2012-12-20 14:52:36 +11:00
Pat Hickey
eb530b86e8
move Arduino.mk to /mk/Arduino.mk
2012-12-20 14:52:35 +11:00
Andrew Tridgell
7d27e420ae
AP_HAL: remove unnecessary Arduino.h includes
2012-12-20 14:52:30 +11:00