subsurface/core
Micha WERLE c7171179b3 Core: extend last gas mix instead of defaulting to air.
Instead of defaulting to air when we run out of gas mixes to assign to
cylinders, use the last gas mix provided by the dive computer.

If no gas mixes are provided at all, then default to air.

This prevents Subsurface from "inventing" gas mixes which are not
reported by the dive computer. It also works very nicely with a sidemount
configuration where the dive computer typically reports two cylinders but
only a single gas mix.

Signed-off-by: Micha WERLE <micha@michaelwerle.com>
2023-11-21 22:30:45 +13:00
..
settings Equipment: Include Unused Tanks in Merge if Preference is Enabled. 2023-07-25 11:19:03 +12:00
subsurface-qt selection: move dive selection, current dive and dc through signals 2023-04-16 20:23:59 +02:00
android.cpp core: use C++ std::strings for default directory and filename 2023-06-03 12:54:24 +02:00
btdiscovery.cpp Add BLE detection for the Aqualung i330R and Apeks DSX 2023-11-04 23:03:09 +13:00
btdiscovery.h bluetooth discovery: report more information about progress 2020-09-30 16:40:41 -07:00
checkcloudconnection.cpp cleanup: use range based for instead of loop with index 2023-04-14 21:20:23 +02:00
checkcloudconnection.h cloudstorage: try alternative server if first connection fails 2021-04-19 12:51:01 -07:00
cloudstorage.cpp mobile: add ability to delete cloud account 2022-08-13 14:08:37 -07:00
cloudstorage.h mobile: add ability to delete cloud account 2022-08-13 14:08:37 -07:00
CMakeLists.txt core: use C++ std::strings for default directory and filename 2023-06-03 12:54:24 +02:00
cochran.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
cochran.h
color.cpp profile: rename GF_LINE color to DURATION_LINE 2021-05-08 13:40:24 +02:00
color.h cleanup: prevent distracing conversion warnings 2022-03-12 08:28:32 -08:00
compressibility.r
configuredivecomputer.cpp Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
configuredivecomputer.h Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
configuredivecomputerthreads.cpp Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
configuredivecomputerthreads.h Desktop: Add option to force overwrite firmware for OSTC4. 2023-03-18 00:11:08 +13:00
connectionlistmodel.cpp core/bt: ensure that BT/BLE addresses with name sort first 2020-05-15 04:05:06 +03:00
connectionlistmodel.h Mobile: reinstate roleNames function in ConnectionListModel 2019-04-16 23:43:14 +12:00
datatrak.c core: use divelog struct in downloader code 2023-04-14 21:20:23 +02:00
datatrak.h Cleanup: const-ify functions taking dives and divecomputers 2018-08-23 14:41:01 -07:00
deco.c planner: pass in_planner argument to decoMode() 2021-02-17 07:26:55 -08:00
deco.h planner: pass in_planner argument to decoMode() 2021-02-17 07:26:55 -08:00
device.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
device.h core: introduce divelog structure 2023-04-14 21:20:23 +02:00
devicedetails.cpp Cleanup: Remove 'data' field from 'DeviceDetails'. 2023-01-31 10:54:39 +01:00
devicedetails.h Cleanup: Remove 'data' field from 'DeviceDetails'. 2023-01-31 10:54:39 +01:00
dive.c fix: merge_pressure does not calculate starting pressures correctly 2023-08-09 14:35:32 +02:00
dive.h planner: get rid of global displayed_dive variable 2023-04-16 20:23:59 +02:00
divecomputer.c profile: register event names on creation of events 2023-02-17 06:46:46 -08:00
divecomputer.h core: add make_manually_added_dc() function 2022-10-21 16:51:57 -07:00
divefilter.cpp map: fold selectionChanged() into setSelection() 2023-04-16 20:23:59 +02:00
divefilter.h filter: set dive selection at once 2023-04-16 20:23:59 +02:00
divelist.c Desktop: Simplify the get_dive_gas() function. 2023-10-20 17:16:05 +02:00
divelist.h core: use divelog in importDives() and process_imported_dives() 2023-04-14 21:20:23 +02:00
divelog.cpp divelog: fix erroneous use of std::move() 2023-04-18 13:15:50 +02:00
divelog.h core: use divelog struct in downloader code 2023-04-14 21:20:23 +02:00
divelogexportlogic.cpp cleanup: remove unused variable 2022-09-03 13:49:02 -07:00
divelogexportlogic.h avoid duplicate and inconsistent applying of QDir::separator() 2019-03-27 07:36:33 -07:00
divemode.h Cleanup: move planner/deco related declarations planner/deco.h 2019-08-08 16:26:31 -07:00
divesite-helper.cpp Dive site: use own copy of taxonomy in dive-site-edit widget 2018-10-13 21:41:41 -04:00
divesite.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
divesite.h core: introduce divelog structure 2023-04-14 21:20:23 +02:00
divesitehelpers.cpp cleanup: replace QRegExp with QRegularExpression 2021-10-27 12:33:20 -07:00
divesitehelpers.h [Bug #2934] Geo Lookup - support for remote dive sites 2020-09-05 17:34:15 +02:00
downloadfromdcthread.cpp Import: Add option to sync time on dive computer download 2023-04-17 07:56:02 -07:00
downloadfromdcthread.h Import: Add option to sync time on dive computer download 2023-04-17 07:56:02 -07:00
equipment.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
equipment.h cylinders: add cylinder before hidden cylinders 2021-12-13 11:54:24 -08:00
errorhelper.c clean up logging, and add error reports to it too 2022-08-31 13:58:34 -07:00
errorhelper.h Cleanup: move error reporting function declarations to errorhelper.h 2019-08-08 16:26:30 -07:00
event.c profile: register event names on creation of events 2023-02-17 06:46:46 -08:00
event.h profile: redo eventname handling 2023-02-17 06:46:46 -08:00
eventname.cpp Desktop: Consider Severity when Hiding Events. 2023-08-04 01:11:12 +12:00
eventname.h Desktop: Consider Severity when Hiding Events. 2023-08-04 01:11:12 +12:00
exif.cpp cleanup: move declaration of utc_mk* functions to new subsurface-time.h header 2020-05-01 09:42:31 -07:00
exif.h
extradata.h cleanup: split out divecomputer functions from dive.c 2020-10-25 13:59:52 -07:00
file.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
file.h core: introduce divelog structure 2023-04-14 21:20:23 +02:00
filterconstraint.cpp core: use range-based for loops in filterconstraints 2022-10-30 21:57:44 +01:00
filterconstraint.h filter: add tank size filter constraint 2020-10-03 10:29:15 -07:00
filterpreset.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
filterpreset.h core: introduce divelog structure 2023-04-14 21:20:23 +02:00
format.cpp core: C++-ify membuffer 2021-07-23 11:22:43 -07:00
format.h Cleanup: Move *_loc formatting functions into new format.cpp file 2018-04-09 11:29:43 -07:00
fulltext.cpp core: introduce divelog structure 2023-04-14 21:20:23 +02:00
fulltext.h fulltext: remember original query 2020-09-29 16:13:03 -07:00
gas-model.c Show correct gas density in CCR mode 2022-11-08 10:43:47 -08:00
gas.c cleanup: fix narrowing type conversion warning 2022-01-02 13:51:07 -08:00
gas.h Show correct gas density in CCR mode 2022-11-08 10:43:47 -08:00
gaspressures.c core: fold display.h into profile.h 2022-03-13 15:07:33 -07:00
gaspressures.h cleanup: constify populate_pressure_information() 2021-01-20 10:01:50 -08:00
gettext.h
gettextfromc.cpp Localization: make cache thread safe and robust against use-after-free 2018-06-24 20:31:14 +02:00
gettextfromc.h Localization: remove gettextFromC::instance() 2018-06-24 20:31:14 +02:00
git-access.c Fix certificate_check_cb() return value 2023-10-06 11:58:36 +13:00
git-access.h cleanup: remove ARRAY_SIZE macro from header 2023-04-14 21:20:23 +02:00
globals.cpp core: add class that collects global objects to be deleted on exit 2022-03-16 13:06:06 -07:00
globals.h core: add class that collects global objects to be deleted on exit 2022-03-16 13:06:06 -07:00
imagedownloader.cpp Desktop: Remove 'renderSVGIcon' methods. 2023-05-28 14:11:37 -07:00
imagedownloader.h Profile: add "synchronous" mode for picture plotting 2019-02-07 16:06:43 +01:00
import-cobalt.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
import-csv.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
import-csv.h core: introduce divelog structure 2023-04-14 21:20:23 +02:00
import-divinglog.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
import-seac.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
import-shearwater.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
import-suunto.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
interpolate.h cleanup: move interpolate inline function to its own header file 2020-10-25 13:59:52 -07:00
ios.cpp core: use C++ std::strings for default directory and filename 2023-06-03 12:54:24 +02:00
libdivecomputer.c Core: extend last gas mix instead of defaulting to air. 2023-11-21 22:30:45 +13:00
libdivecomputer.h Import: Add option to sync time on dive computer download 2023-04-17 07:56:02 -07:00
liquivision.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
load-git.c core: remove autogroup global 2023-04-14 21:20:23 +02:00
macos.cpp Build: Fix build warning on MacOS. 2023-06-12 08:04:30 -07:00
membuffer.cpp core: C++-ify membuffer 2021-07-23 11:22:43 -07:00
membuffer.h core: C++-ify membuffer 2021-07-23 11:22:43 -07:00
metadata.cpp cleanup: fix SkipEmptyParts warning for mobile 2021-11-24 10:53:26 -08:00
metadata.h Add 'location_t' data structure 2018-10-21 19:55:09 +03:00
metrics.cpp core: remove DPR from IconMetrics class 2021-12-17 11:54:23 -08:00
metrics.h core: remove DPR from IconMetrics class 2021-12-17 11:54:23 -08:00
namecmp.h Qt6: deal with changes from QStringRef to QStringView 2022-03-12 08:28:32 -08:00
ostctools.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
owning_ptrs.h core: make owning pointers a top-level features 2023-04-16 20:23:59 +02:00
parse-gpx.cpp Qt6: deal with changes from QStringRef to QStringView 2022-03-12 08:28:32 -08:00
parse-gpx.h cleanup: only include QString in desktop-widgets/importgps.h 2020-05-01 09:42:31 -07:00
parse-xml.c Desktop: Fix incorrect use of 'free()'. 2023-05-19 10:51:02 +02:00
parse.c core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
parse.h core: use divelog struct in parser state 2023-04-14 21:20:23 +02:00
picture.c core/picture: don't compile all on mobile 2020-11-19 17:18:33 -08:00
picture.h core: move picture-related function from dive.c to picture.c 2020-05-06 13:58:09 -07:00
pictureobj.cpp media: add small C++ helper describing a picture struct 2020-05-06 13:58:09 -07:00
pictureobj.h media: add small C++ helper describing a picture struct 2020-05-06 13:58:09 -07:00
planner.c Core: Fix bug salinity and pressure values in mbar <-> depth conversion 2023-07-11 13:26:24 +12:00
planner.h Standardised how divedatapoints are created. 2023-02-17 10:53:04 +01:00
plannernotes.c Desktop: Fix bug in diveplan for CCR dives with multiple segments. 2023-03-01 15:35:55 +01:00
pref.c Equipment: Include Unused Tanks in Merge if Preference is Enabled. 2023-07-25 11:19:03 +12:00
pref.h Equipment: Include Unused Tanks in Merge if Preference is Enabled. 2023-07-25 11:19:03 +12:00
profile.c Desktop: Add Multi-Tank Support for Profile Ruler. 2023-05-30 11:21:12 +02:00
profile.h core: fold display.h into profile.h 2022-03-13 15:07:33 -07:00
qt-ble.cpp Add BLE detection for the Aqualung i330R and Apeks DSX 2023-11-04 23:03:09 +13:00
qt-ble.h Qt6: Bluetooth API changes 2022-03-12 08:28:32 -08:00
qt-gui.h mobile/UI: remember the system default font size 2021-01-19 12:35:29 -08:00
qt-init.cpp translations: fix Portuguese parent translation 2022-03-27 17:11:05 -07:00
qthelper.cpp Desktop: Remove 'renderSVGIcon' methods. 2023-05-28 14:11:37 -07:00
qthelper.h Desktop: Remove 'renderSVGIcon' methods. 2023-05-28 14:11:37 -07:00
qtserialbluetooth.cpp Use QtBluetooth enums from their namespace 2021-03-12 08:41:31 -08:00
range.h cleanup: use range based for in download code 2023-04-14 21:20:23 +02:00
sample.c cleanup: split out divecomputer functions from dive.c 2020-10-25 13:59:52 -07:00
sample.h core: use int16_t for sensor-id 2021-07-23 11:16:00 -07:00
save-git.c core: remove autogroup global 2023-04-14 21:20:23 +02:00
save-html.c core: introduce divelog structure 2023-04-14 21:20:23 +02:00
save-html.h Cleanup: move error reporting function declarations to errorhelper.h 2019-08-08 16:26:30 -07:00
save-profiledata.c core: fold display.h into profile.h 2022-03-13 15:07:33 -07:00
save-profiledata.h Cleanup: move file-related function declarations to file.h 2019-08-08 16:26:31 -07:00
save-xml.c core: remove autogroup global 2023-04-14 21:20:23 +02:00
selection.cpp selection: move current dc logic to profile widget 2023-04-16 20:23:59 +02:00
selection.h selection: move current dc logic to profile widget 2023-04-16 20:23:59 +02:00
serial_ftdi.c core: fix libdivecomputer dc_custom callbacks structures 2020-06-18 09:05:13 -07:00
serial_usb_android.cpp android/usb: remove "autoselect driver" option for unknown VID/PIDs 2020-03-16 07:58:20 -07:00
serial_usb_android.h android/usb: pass in the UsbDevice when downloading 2020-03-16 07:58:20 -07:00
sha1.c
sha1.h
ssrf.h core: remove LOG_STP from mobile 2019-12-13 07:04:00 -05:00
statistics.c Equipment: Fix 'used' Gas Selection for CCR Dives. 2023-07-25 12:05:51 +12:00
statistics.h cleanup: move minute formating to format-string.cpp 2022-09-03 13:49:02 -07:00
string-format.cpp cleanup: remove pointless idle comment in string-format.cpp 2023-03-28 20:39:02 -07:00
string-format.h cleanup: move formatting of gas type to string-format.cpp 2023-03-28 20:39:02 -07:00
strndup.h
strtod.c Core: introduce new subsurface-string header 2018-05-14 10:13:39 -07:00
structured_list.h media: use table instead of linked list for media 2020-05-06 13:58:09 -07:00
subsurface-float.h core: move floating point functions to own header file 2022-08-30 22:34:38 +02:00
subsurface-string.h core: move floating point functions to own header file 2022-08-30 22:34:38 +02:00
subsurface-time.h cleanup: const-ify utc_mktime() 2020-12-29 08:34:09 -08:00
subsurfacestartup.c git access: add proper cleanup function for git_info 2022-04-22 08:28:17 -07:00
subsurfacestartup.h cleanup: move application flags to core/subsurfacehelper.h 2020-10-25 13:59:52 -07:00
subsurfacesysinfo.cpp cleanup: refactor subsurfacesysinfo.cpp 2020-10-27 16:18:09 -07:00
subsurfacesysinfo.h cleanup: refactor subsurfacesysinfo.cpp 2020-10-27 16:18:09 -07:00
table.h media: create sort_picture_table function via macro 2020-05-06 13:58:09 -07:00
tag.c Don't expose 'detach_buffer()' to membuffer users 2019-10-27 12:42:54 -07:00
tag.h Cleanup: move tag functions into own translation unit 2019-06-19 13:11:10 -07:00
taxonomy.c cleanup: make taxonomy_index_for_category() local to taxonomy.c 2020-09-06 12:59:54 -07:00
taxonomy.h cleanup: make taxonomy_index_for_category() local to taxonomy.c 2020-09-06 12:59:54 -07:00
time.c trivial: remove obscure division-assignment operator 2022-08-01 11:30:53 -07:00
timer.c Add timestamps to libdivecomputer.log 2020-03-10 17:42:54 -07:00
timer.h Add timestamps to libdivecomputer.log 2020-03-10 17:42:54 -07:00
trip.c selection: avoid select_dive() and deselect_dive calls in dive list 2023-04-16 20:23:59 +02:00
trip.h selection: avoid select_dive() and deselect_dive calls in dive list 2023-04-16 20:23:59 +02:00
uemis-downloader.c Import: Add option to sync time on dive computer download 2023-04-17 07:56:02 -07:00
uemis.c Maintain sensor index for uemis and liquivision 2022-03-12 11:26:00 -08:00
uemis.h Dive site: use pointer instead of uuid in uemis_helper 2018-10-29 00:09:31 +00:00
units.c core: return floating point from to_PSI() functions 2021-12-17 11:54:23 -08:00
units.h Deal with negative variation times 2022-06-04 14:19:05 -07:00
unix.cpp core: use range based for and std::string in enumerate_devices() 2023-06-03 12:54:24 +02:00
uploadDiveLogsDE.cpp Equipment: Include Unused Tanks in Merge if Preference is Enabled. 2023-07-25 11:19:03 +12:00
uploadDiveLogsDE.h export: clean up temp file after divelogs.de upload 2021-08-06 11:05:06 -07:00
uploadDiveShare.cpp Qt6: update the connect calls for QNetworkReply 2022-04-18 07:24:39 +02:00
uploadDiveShare.h core: divehare change slot names 2019-12-12 10:10:01 -05:00
version.c
version.h
videoframeextractor.cpp Cleanup: move error reporting function declarations to errorhelper.h 2019-08-08 16:26:30 -07:00
videoframeextractor.h Dive media: Extract thumbnails from videos with ffmpeg 2018-07-28 15:31:25 -07:00
webservice.h
windows.cpp core: more std::[w]string conversions in windows.cpp 2023-06-03 12:54:24 +02:00
windowtitleupdate.cpp Cleanup: Make WindowsTitleUpdate a global object 2018-07-30 13:55:23 -07:00
windowtitleupdate.h Cleanup: Make WindowsTitleUpdate a global object 2018-07-30 13:55:23 -07:00
worldmap-options.h
worldmap-save.c cleanup: move dive_table from dive.h to divelist.h 2020-05-01 09:42:31 -07:00
worldmap-save.h Cleanup: remove const bool parameters and return types 2020-02-09 12:13:18 -08:00
xmlparams.cpp core: add a small helper-struct that keeps track of xml-parameters 2020-10-23 18:17:02 -07:00
xmlparams.h core: add a small helper-struct that keeps track of xml-parameters 2020-10-23 18:17:02 -07:00
xmp_parser.cpp cleanup: move declaration of utc_mk* functions to new subsurface-time.h header 2020-05-01 09:42:31 -07:00
xmp_parser.h Metadata: rudimentary support for XMP metadataa in MP4-based videos 2018-09-25 14:59:14 -07:00