Commit Graph

66 Commits

Author SHA1 Message Date
Peter Barker 6a97056736 AP_Camera: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 1b970545c0 AP_Camera: include cleanups 2022-03-01 11:21:33 +11:00
Peter Barker 1835a63bfb AP_Camera: don't use stale image number in CAMERA_FEEDBACK 2021-11-17 18:48:00 +11:00
Peter Barker 8f1c255693 AP_Camera: stash information required for camera_feedback message
This means the data sent in the mavlink message is closer to the
information when the picture was taken, rather than when we decide we
have the space to send the mavlink message.  When we process the
deferred request to send the camera feedback message is up to the
vagaries of mavlink scheduling, so the data can become quite out-of-date
2021-11-17 18:48:00 +11:00
Peter Barker 8ce4a1fce7 AP_Camera: use AP_AHRS singleton to get current location and home 2021-09-29 18:33:01 +10:00
Patrick José Pereira 5375980aa6 AP_Camera: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Josh Henderson d6dc8864db AP_Camera: Privatize AP_Camera 2021-02-02 10:10:17 +11:00
Mirko Denecke 2dfc7c4108 AP_Camera: call update in update_trigger 2020-07-15 08:37:28 +09:00
Matt Lawrence 05b94de9a0 AP_Camera: Make trigger type enum class 2020-02-18 11:13:27 +11:00
Matt Lawrence a2af217adf AP_Camera: Add handling of GoPro mavlink commands 2020-02-18 11:13:27 +11:00
Pierre Kancir 09f0f34fe5 AP_Camera: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Peter Barker 41bddf682f AP_Camera: remove unused includes 2019-07-09 12:47:18 +10:00
Peter Barker 01773d9025 AP_Camera: use singletons for relay and ahrs insead of storing references 2019-07-09 09:32:39 +10:00
Michael du Breuil fc3f09c6c0 AP_Camera: fixup includes 2019-04-05 20:12:53 +11:00
Peter Barker caec67762e AP_Camera: move reliance on GCS into .cpp file 2019-02-15 08:15:45 +11:00
Andrew Tridgell c1516da203 AP_Camera: use timestamp from trigger time
this avoids time inaccuracy from loop times in timestamps
2018-11-30 10:12:27 +11:00
ChrisBird d8281f3171 AP_Camera: Adding ability to control the Black Magic Micro Cinema Camera
via SBUS from the flight controller directly.  Handles the flipping of
certain channels.  Relies on change to SRV_Channel to add additional functions.
2018-10-30 11:12:01 +11:00
Peter Barker 049f61c943 AP_Camera: populate camera singleton 2018-08-04 11:34:41 +10:00
Peter Barker fb786b8d56 AP_Camera: add singleton 2018-08-01 12:11:30 +09:00
Michael du Breuil f8e9e57523 AP_Camera: reduce feedback pin timer work, remove unneeded inits 2018-07-09 16:42:17 -07:00
Michael du Breuil 0e6213a4c6 Camera: Track number of completed events
Closes #3903
2018-03-13 00:00:56 +00:00
Andrew Tridgell 573a5bf3d0 AP_Camera: removed create() method for objects
See discussion here:

  https://github.com/ArduPilot/ardupilot/issues/7331

we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach

Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Peter Barker 7258fa81d9 AP_Camera: use GPS singleton 2017-11-16 15:28:37 +00:00
André Kjellstrup 1a63fd85d8 AP_Camera: Option to trig by distance only when in AUTO mode 2017-11-14 00:10:22 +00:00
Lucas De Marchi ddde53f84c AP_Camera: add static create method 2017-09-26 03:01:21 +01:00
Peter Barker bb06b02df6 AP_Camera: add const to some parameters 2017-07-28 14:32:58 +01:00
Peter Barker 9390539231 AP_Camera: tidy up usage of trigger_pic 2017-07-28 14:27:53 +01:00
Peter Barker 84ef63edc7 AP_Camera: camera is responsible for taking distance-based-images and logging 2017-07-28 14:27:53 +01: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
Andrew Tridgell 9f31fbb895 AP_Camera: support fast timer capture on AUX4 on Pixhawk
microsecond capture of hot-shoe
2016-04-15 09:28:51 +10:00
Lucas De Marchi d721ad70eb AP_Camera: replace header guard with pragma once 2016-03-16 18:40:40 +11:00
Andrew Tridgell dc998a2eaf AP_Camera: make AP_Camera::control() return bool for picture trigger
this allows a picture to be logged if it is requested
2016-01-29 09:31:40 +11:00
Andrew Tridgell 2099f40d89 AP_Camera: added CAM_FEEDBACK_POL option
allows selection of trigger polarity
2016-01-29 09:19:44 +11:00
Andrew Tridgell 061ee5e4fd AP_Camera: use timer for faster camera trigger pin detection 2016-01-29 09:19:43 +11:00
Dario Lindo Andres 2f3510023d AP_Camera: Support for camera feedback signal
Added _feedback_pin;
Added _camera_triggered;
Included FEEDBACK_PIN parameter and his default definition
2016-01-29 09:19:43 +11:00
Andre Kjellstrup 6da7e76990 AP_Camera: Camera options for better camera control
All on one because they would not pass autotest if split up.
2015-12-18 18:16:11 +11:00
Lucas De Marchi 1c8f6c2ee5 AP_Camera: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:11 +11:00
squilter 8391764c60 AP_Camera: add support for do_digicam_x via command_long 2015-09-16 13:06:44 +09:00
Andrew Tridgell 745a5998f2 AP_Camera: added CAM_RELAY_ON parameter
allows for camera that trigger low
2015-09-07 08:07:17 +10:00
Gustavo Jose de Sousa 4887d8eb94 AP_Camera: 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:28:42 +10:00
Grant Morphett 444841537e AP_Camera: Just putting the newline at the end of the file. 2015-04-28 15:23:34 +09:00
Tom Pittenger c1d4992dac Camera: fix compile warnings re float constants 2015-04-24 12:28:03 +09:00
Randy Mackay 337a94e52e Camera: remove empty configure_msg method 2015-04-20 13:50:15 +09:00
Jaime Machuca 38491c4ff7 Camera: fix mission cmds sending msgs to components
mission commands were triggering the sending of
mavlink mission items when they should have been sending
command long messages
2015-04-20 13:50:10 +09:00
Randy Mackay 4eb3263653 Camera: mission cmds send do-digicam msgs to components
This allows digicam-control and digicam-configure mission
command to trigger sending the equivalent mavlink messages
to components
2015-04-20 13:50:08 +09:00
Randy Mackay 8dcd555037 Camera: trigger_pic sends do-digicam-control to components
This (optionally) allows pictures triggered from ch7/ch8
switch to send a mavlink do-digicam-control message to
components
2015-04-20 13:50:06 +09:00
Randy Mackay ad7a9bf81b Camera: initialise image_index 2014-10-31 14:46:49 +09:00
Arthur Benemann 7bb4a39608 Camera: record number of pictures taken since boot
The field is useful for detecting in a GCS if a mavlink_msg_camera_feedback message was dropped.
2014-10-31 14:46:45 +09:00
Arthur Benemann 2e4812afb5 Camera: Added feedback message support
Now the autopilot can publish the state of the camera via the mavlink_msg_camera_feedback message.
2014-10-31 14:46:38 +09:00
Randy Mackay bffa7c3783 Camera: correct _trigger_type comment 2013-12-06 10:28:36 +09:00