subsurface/core/pref.cpp
Berthold Stoeger b82fdd1d20 general: remove (void) function parameter declarations
To my understanding, declaring empty parameter lists using "(void)"
is an artifact from the bad old K&R times, when functions were
declared without(!) parameters. Which in hindsight was an absolute
recipe for disaster. So for backwards compatibility, functions
without parameters had to be declared using "(void)" as "()"
could also mean "any function".

That was 40 years ago. Meanwhile, C++ introduced references,
which made it a necessity to declare the function parameters.
So "(void)" is redundant and inconsistent in C++ code and
just makes no sense.

Remove it.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2024-08-13 19:28:30 +02:00

155 lines
4.2 KiB
C++

// SPDX-License-Identifier: GPL-2.0
#include "pref.h"
#include "subsurface-string.h"
#include "git-access.h" // for CLOUD_HOST
struct preferences prefs, git_prefs;
struct preferences default_prefs = {
.animation_speed = 500,
.cloud_base_url = "https://" CLOUD_HOST_EU "/", // if we don't know any better, use the European host
#if defined(SUBSURFACE_MOBILE)
.cloud_timeout = 10,
#else
.cloud_timeout = 5,
#endif
.sync_dc_time = false,
.display_invalid_dives = false,
.divelist_font = NULL,
.font_size = -1,
.mobile_scale = 1.0,
.show_developer = true,
.three_m_based_grid = false,
.map_short_names = false,
.default_cylinder = NULL,
.include_unused_tanks = false,
.display_default_tank_infos = true,
.auto_recalculate_thumbnails = true,
.extract_video_thumbnails = true,
.extract_video_thumbnails_position = 20, // The first fifth seems like a reasonable place
.ffmpeg_executable = NULL,
.defaultsetpoint = 1100,
.default_filename = NULL,
.default_file_behavior = LOCAL_DEFAULT_FILE,
.o2consumption = 720,
.pscr_ratio = 100,
.use_default_file = true,
.extraEnvironmentalDefault = false,
.salinityEditDefault = false,
.geocoding = {
.category = { TC_NONE, TC_NONE, TC_NONE }
},
.date_format = NULL,
.date_format_override = false,
.date_format_short = NULL,
.locale = {
.use_system_language = true,
},
.time_format = NULL,
.time_format_override = false,
.proxy_auth = false,
.proxy_host = NULL,
.proxy_port = 0,
.proxy_type = 0,
.proxy_user = NULL,
.proxy_pass = NULL,
.ascratelast6m = 9000 / 60,
.ascratestops = 9000 / 60,
.ascrate50 = 9000 / 60,
.ascrate75 = 9000 / 60,
.bestmixend = { 30000 },
.bottompo2 = 1400,
.bottomsac = 20000,
.decopo2 = 1600,
.decosac = 17000,
.descrate = 18000 / 60,
.display_duration = true,
.display_runtime = true,
.display_transitions = true,
.display_variations = false,
.doo2breaks = false,
.dobailout = false,
.o2narcotic = true,
.drop_stone_mode = false,
.last_stop = false,
.min_switch_duration = 60,
.surface_segment = 0,
.planner_deco_mode = BUEHLMANN,
.problemsolvingtime = 4,
.reserve_gas=40000,
.sacfactor = 400,
.safetystop = true,
.switch_at_req_stop = false,
.verbatim_plan = false,
.calcalltissues = false,
.calcceiling = false,
.calcceiling3m = false,
.calcndltts = false,
.decoinfo = true,
.dcceiling = true,
.display_deco_mode = BUEHLMANN,
.ead = false,
.gfhigh = 75,
.gflow = 30,
.gf_low_at_maxdepth = false,
.hrgraph = false,
.mod = false,
.modpO2 = 1.6,
.percentagegraph = false,
.pp_graphs = {
.po2 = false,
.pn2 = false,
.phe = false,
.po2_threshold_min = 0.16,
.po2_threshold_max = 1.6,
.pn2_threshold = 4.0,
.phe_threshold = 13.0,
},
.redceiling = false,
.rulergraph = false,
.show_average_depth = true,
.show_ccr_sensors = false,
.show_ccr_setpoint = false,
.show_icd = false,
.show_pictures_in_profile = true,
.show_sac = false,
.show_scr_ocpo2 = false,
.tankbar = false,
.vpmb_conservatism = 3,
.zoomed_plot = false,
.infobox = true,
.coordinates_traditional = true,
.unit_system = METRIC,
.units = SI_UNITS,
.update_manager = { false, NULL, 0 }
};
/* copy a preferences block, including making copies of all included strings */
void copy_prefs(struct preferences *src, struct preferences *dest)
{
*dest = *src;
dest->divelist_font = copy_string(src->divelist_font);
dest->default_filename = copy_string(src->default_filename);
dest->default_cylinder = copy_string(src->default_cylinder);
dest->cloud_base_url = copy_string(src->cloud_base_url);
dest->proxy_host = copy_string(src->proxy_host);
dest->proxy_user = copy_string(src->proxy_user);
dest->proxy_pass = copy_string(src->proxy_pass);
dest->time_format = copy_string(src->time_format);
dest->date_format = copy_string(src->date_format);
dest->date_format_short = copy_string(src->date_format_short);
dest->cloud_storage_password = copy_string(src->cloud_storage_password);
dest->cloud_storage_email = copy_string(src->cloud_storage_email);
dest->cloud_storage_email_encoded = copy_string(src->cloud_storage_email_encoded);
dest->ffmpeg_executable = copy_string(src->ffmpeg_executable);
}
/*
* Free strduped prefs before exit.
*
* These are not real leaks but they plug the holes found by eg.
* valgrind so you can find the real leaks.
*/
void free_prefs()
{
// nop
}