diff options
-rw-r--r-- | core/dive.h | 10 | ||||
-rw-r--r-- | core/file.c | 1 | ||||
-rw-r--r-- | core/file.h | 1 | ||||
-rw-r--r-- | core/parse.h | 16 | ||||
-rw-r--r-- | desktop-widgets/mainwindow.cpp | 1 | ||||
-rw-r--r-- | desktop-widgets/subsurfacewebservices.cpp | 3 | ||||
-rw-r--r-- | export-html.cpp | 2 | ||||
-rw-r--r-- | mobile-widgets/qmlmanager.cpp | 1 | ||||
-rw-r--r-- | tests/testdivesiteduplication.cpp | 1 | ||||
-rw-r--r-- | tests/testparseperformance.cpp | 2 | ||||
-rw-r--r-- | tests/testprofile.cpp | 1 |
11 files changed, 27 insertions, 12 deletions
diff --git a/core/dive.h b/core/dive.h index 4760305ed..0e93b9671 100644 --- a/core/dive.h +++ b/core/dive.h @@ -10,7 +10,6 @@ #include <time.h> #include <math.h> #include <zip.h> -#include <sqlite3.h> #include <string.h> #include <sys/stat.h> #include "divesite.h" @@ -478,15 +477,6 @@ extern int parse_xml_buffer(const char *url, const char *buf, int size, struct d extern void parse_xml_exit(void); extern void set_filename(const char *filename); -extern int parse_dm4_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_dm5_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_shearwater_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_shearwater_cloud_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_cobalt_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_divinglog_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); -extern int parse_dlf_buffer(unsigned char *buffer, size_t size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); - -extern int parse_file(const char *filename, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); extern int save_dives(const char *filename); extern int save_dives_logic(const char *filename, bool select_only, bool anonymize); extern int save_dive(FILE *f, struct dive *dive, bool anonymize); diff --git a/core/file.c b/core/file.c index 8a1a1ec1e..2683b1dd6 100644 --- a/core/file.c +++ b/core/file.c @@ -17,6 +17,7 @@ #include "git-access.h" #include "qthelper.h" #include "import-csv.h" +#include "parse.h" /* For SAMPLE_* */ #include <libdivecomputer/parser.h> diff --git a/core/file.h b/core/file.h index a570e1330..24c9d47c6 100644 --- a/core/file.h +++ b/core/file.h @@ -16,6 +16,7 @@ extern int datatrak_import(struct memblock *mem, struct dive_table *table, struc extern void ostctools_import(const char *file, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); extern int readfile(const char *filename, struct memblock *mem); +extern int parse_file(const char *filename, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); extern int try_to_open_zip(const char *filename, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); #ifdef __cplusplus } diff --git a/core/parse.h b/core/parse.h index eb07d9404..8aaef399e 100644 --- a/core/parse.h +++ b/core/parse.h @@ -4,6 +4,8 @@ #define MAX_EVENT_NAME 128 +#include <sqlite3.h> + typedef union { struct event event; char allocation[sizeof(struct event) + MAX_EVENT_NAME]; @@ -68,6 +70,9 @@ struct parser_state { #define cur_event event_allocation.event +#ifdef __cplusplus +extern "C" { +#endif void init_parser_state(struct parser_state *state); void free_parser_state(struct parser_state *state); @@ -113,4 +118,15 @@ void utf8_string(char *buffer, void *_res); void add_dive_site(char *ds_name, struct dive *dive, struct parser_state *state); int atoi_n(char *ptr, unsigned int len); +int parse_dm4_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_dm5_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_shearwater_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_shearwater_cloud_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_cobalt_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_divinglog_buffer(sqlite3 *handle, const char *url, const char *buf, int size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +int parse_dlf_buffer(unsigned char *buffer, size_t size, struct dive_table *table, struct trip_table *trips, struct dive_site_table *sites); +#ifdef __cplusplus +} +#endif + #endif diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp index de8ce9b0a..651d77053 100644 --- a/desktop-widgets/mainwindow.cpp +++ b/desktop-widgets/mainwindow.cpp @@ -20,6 +20,7 @@ #include "core/color.h" #include "core/divecomputer.h" #include "core/divesitehelpers.h" +#include "core/file.h" #include "core/gettextfromc.h" #include "core/git-access.h" #include "core/import-csv.h" diff --git a/desktop-widgets/subsurfacewebservices.cpp b/desktop-widgets/subsurfacewebservices.cpp index 87db7947c..e2c787990 100644 --- a/desktop-widgets/subsurfacewebservices.cpp +++ b/desktop-widgets/subsurfacewebservices.cpp @@ -7,11 +7,11 @@ #include "desktop-widgets/command.h" #include "desktop-widgets/usersurvey.h" #include "core/divelist.h" +#include "core/file.h" #include "desktop-widgets/mapwidget.h" #include "desktop-widgets/tab-widgets/maintab.h" #include "core/display.h" #include "core/membuffer.h" -#include <errno.h> #include "core/cloudstorage.h" #include "core/subsurface-string.h" @@ -23,6 +23,7 @@ #include <qdesktopservices.h> #include <QShortcut> #include <QDebug> +#include <errno.h> #ifdef Q_OS_UNIX #include <unistd.h> // for dup(2) diff --git a/export-html.cpp b/export-html.cpp index b0ee229f1..3e116f3cb 100644 --- a/export-html.cpp +++ b/export-html.cpp @@ -8,6 +8,8 @@ #include "core/qt-gui.h" #include "core/qthelper.h" +#include "core/file.h" +#include "core/divesite.h" #include "core/save-html.h" #include <stdio.h> #include "git2.h" diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp index 3ec06dfe8..b8d83ef5d 100644 --- a/mobile-widgets/qmlmanager.cpp +++ b/mobile-widgets/qmlmanager.cpp @@ -26,6 +26,7 @@ #include "qt-models/messagehandlermodel.h" #include "core/divelist.h" #include "core/device.h" +#include "core/file.h" #include "core/qthelper.h" #include "core/qt-gui.h" #include "core/git-access.h" diff --git a/tests/testdivesiteduplication.cpp b/tests/testdivesiteduplication.cpp index 4b770d311..ae8488eb2 100644 --- a/tests/testdivesiteduplication.cpp +++ b/tests/testdivesiteduplication.cpp @@ -2,6 +2,7 @@ #include "testdivesiteduplication.h" #include "core/dive.h" #include "core/divesite.h" +#include "core/file.h" void TestDiveSiteDuplication::testReadV2() { diff --git a/tests/testparseperformance.cpp b/tests/testparseperformance.cpp index 64625f269..37393f515 100644 --- a/tests/testparseperformance.cpp +++ b/tests/testparseperformance.cpp @@ -2,6 +2,7 @@ #include "testparseperformance.h" #include "core/dive.h" #include "core/divelist.h" +#include "core/file.h" #include "core/git-access.h" #include "core/settings/qPrefProxy.h" #include "core/settings/qPrefCloudStorage.h" @@ -41,7 +42,6 @@ void TestParsePerformance::initTestCase() QString localCacheDir(get_local_dir(LARGE_TEST_REPO, "git")); QDir localCacheDirectory(localCacheDir); QCOMPARE(localCacheDirectory.removeRecursively(), true); - } void TestParsePerformance::init() diff --git a/tests/testprofile.cpp b/tests/testprofile.cpp index a093c9fe9..c35312123 100644 --- a/tests/testprofile.cpp +++ b/tests/testprofile.cpp @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 #include "testprofile.h" #include "core/dive.h" +#include "core/file.h" void TestProfile::testRedCeiling() { |