ardupilot/libraries
Lucas De Marchi 9c6bd38e91 AP_InertialSensor: sanitize includes
Due to the way the headers are organized changing a single change in an
inertial sensor driver would trigger a rebuild for most of the files in
the project. Time could be saved by using ccache (since most of the
things didn't change) but we can do better, i.e. re-organize the headers
so we don't have to re-build everything.

With this patch only AP_InertialSensor/AP_InertialSensor.h is exposed to
most users. There are some corner cases to integrate with some example
code, but most of the places now depend only on this header and this
header doesn't depend on the specific backends.

Now changing a single header, e.g. AP_InertialSensor_L3G4200D.h triggers
a rebuild only of these files:

	$ waf copter
	'copter' finished successfully (0.000s)
	Waf: Entering directory `/home/lucas/p/dronecode/ardupilot/build/minlure'
	[ 80/370] Compiling libraries/AP_InertialSensor/AP_InertialSensor.cpp
	[ 84/370] Compiling libraries/AP_InertialSensor/AP_InertialSensor_L3G4200D.cpp
	[310/370] Linking build/minlure/ArduCopter/libArduCopter_libs.a
	[370/370] Linking build/minlure/bin/arducopter
	Waf: Leaving directory `/home/lucas/p/dronecode/ardupilot/build/minlure'
2016-02-01 14:18:51 -02:00
..
AC_AttitudeControl AC_AttControl: bug fix to angle_boost reporting 2016-01-08 10:48:59 +09:00
AC_Fence Global: rename min and max macros to uppercase 2015-12-01 16:28:09 -02:00
AC_InputManager AC_InputManager: Initial class creation 2015-11-12 19:37:21 +09:00
AC_PID waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AC_PrecLand AC_PrecLand: add missing parameter description 2016-01-07 17:35:18 +09:00
AC_Sprayer Global: rename min and max macros to uppercase 2015-12-01 16:28:09 -02:00
AC_WPNav AC_WPNav: call renamed functions in AC_AttitudeControl 2015-12-09 19:58:50 +09:00
AP_AccelCal AP_AccelCal: make client list static 2016-01-23 10:35:33 +09:00
AP_ADC waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_ADSB AP_ADSB: added guided mode handling 2015-12-31 15:36:49 +11:00
AP_AHRS AP_AHRS: add get_mag_field_NED and get_mag_field_correction 2016-01-23 10:35:36 +09:00
AP_Airspeed waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Arming AP_Arming: don't reporting IMU inconsistencies if IMU not enabled 2016-01-19 18:05:08 +11:00
AP_Baro AP_Baro: MS56XX: remove initialization to 0 from constructor 2016-02-01 14:18:50 -02:00
AP_BattMonitor AP_BattMonitor: correct names of #defines 2016-01-30 12:48:19 -02:00
AP_BoardConfig AP_BoardConfig: fix invalid Range meta data 2015-12-27 16:10:44 +11:00
AP_Buffer AP_Buffer: change pop_front to return a bool if successful 2014-10-20 08:26:14 +11:00
AP_Camera AP_Camera: make AP_Camera::control() return bool for picture trigger 2016-01-29 09:31:40 +11:00
AP_Common waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Compass waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Declination waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_EPM AP_EPM: use millis/micros/panic functions 2015-11-20 12:30:34 +09:00
AP_Frsky_Telem AP_FrSkyTelem: use millis/micros/panic functions 2015-11-20 12:30:41 +09:00
AP_GPS AP_GPS: correct #if from UBLOX_DEBUG to UBLOX_DEBUGGING 2016-01-30 12:48:39 -02:00
AP_HAL Global: rename enum SPIDevice to SPIDeviceType 2016-02-01 14:18:50 -02:00
AP_HAL_AVR waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_HAL_Empty Global: rename enum SPIDevice to SPIDeviceType 2016-02-01 14:18:50 -02:00
AP_HAL_FLYMAPLE Global: rename enum SPIDevice to SPIDeviceType 2016-02-01 14:18:50 -02:00
AP_HAL_Linux AP_HAL_Linux: add name to SPI device table 2016-02-01 14:18:50 -02:00
AP_HAL_PX4 waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_HAL_QURT HAL_QURT: automatically find broadcast address for UDP network 2016-01-25 19:43:55 +11:00
AP_HAL_SITL HAL_SITL: prevent abort on select with -1 fd 2016-01-10 21:26:35 +11:00
AP_HAL_VRBRAIN AP_HAL_VRBRAIN: add empty optical flow 2015-12-18 17:56:04 +11:00
AP_InertialNav AP_InertialNav: Typo correction in comment 2015-12-19 10:11:35 +09:00
AP_InertialSensor AP_InertialSensor: sanitize includes 2016-02-01 14:18:51 -02:00
AP_IRLock AP_IRLock: use millis/micros/panic functions 2015-11-20 12:31:35 +09:00
AP_L1_Control AP_L1_Control: calculate dt for crosstracking 2016-01-19 11:05:56 +11:00
AP_LandingGear Remove use of PROGMEM 2015-10-30 14:35:16 +09:00
AP_Limits Replace prog_char and prog_char_t with char 2015-10-30 14:35:30 +09:00
AP_Math waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Menu AP_Menu: stop using Progmem.h 2015-12-27 15:58:12 -02:00
AP_Mission waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Motors AP_Motors: add AP_MOTORS_DENSITY_COMP_DISABLED option 2016-01-27 09:18:09 +09:00
AP_Mount AP_Mount: remove redundant include dependant on bad #define 2016-01-30 12:48:05 -02:00
AP_NavEKF AP_NavEKF: Send correct data over mavlink status message 2016-02-01 10:02:20 +09:00
AP_NavEKF2 AP_NavEKF2: Send correct data over mavlink status message 2016-02-01 10:02:22 +09:00
AP_Navigation AP_Navigation: standardize inclusion of libaries headers 2015-08-11 16:38:20 +10:00
AP_Notify waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_OpticalFlow waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Parachute waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_Param AP_Param: fixed flymaple build 2016-01-08 10:33:45 +11:00
AP_Rally AP_Rally: use millis/micros/panic functions 2015-11-20 12:34:04 +09:00
AP_RangeFinder waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_RCMapper Remove use of PROGMEM 2015-10-30 14:35:16 +09:00
AP_Relay AP_Relay: don't default to using two PWMs as relays on FMUv4 2015-11-27 18:54:31 +11:00
AP_RPM AP_RPM: Move timeout check into synthetic quality check. 2015-12-08 08:25:19 +11:00
AP_RSSI Remove use of PROGMEM 2015-10-30 14:35:16 +09:00
AP_Scheduler waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
AP_SerialManager AP_SerialManager: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:13 +11:00
AP_ServoRelayEvents AP_ServoRelayEvents: use millis/micros/panic functions 2015-11-20 12:34:39 +09:00
AP_SpdHgtControl AP_SpdHgtControl: added new path_propportion var 2016-01-09 13:25:02 +11:00
AP_TECS AP_TECS: updated TECS_LAND_SPDWGT param description 2016-01-30 07:31:10 +11:00
AP_Terrain AP_Terrain: libraries_Text_revision 2015-11-26 08:10:15 +11:00
AP_Vehicle AP_Vehicle: define vehicle type APM_BUILD_Replay 2016-01-30 12:52:51 -02:00
APM_Control APM_Control: stop using Progmem.h 2015-12-27 15:58:12 -02:00
APM_OBC APM_OBC: use millis/micros/panic functions 2015-11-20 12:28:28 +09:00
DataFlash DataFlash: correct use of #defines 2016-01-30 12:46:25 -02:00
doc Checking these in makes the libraries too bulky. We need to host them somewhere. 2011-01-04 06:22:02 +00:00
Filter waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
GCS_Console waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
GCS_MAVLink GCS_MAVLink: add messages to routing switch statement 2016-01-23 10:35:44 +09:00
PID waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
RC_Channel waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00
SITL SITL: added very simple tiltrotor simulation 2016-01-30 09:45:43 +11:00
StorageManager waf: ardupilotwaf: prefix build context methods with ap_ 2016-01-22 20:10:29 -02:00