diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2019-08-05 20:07:10 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-08-08 16:26:31 -0700 |
commit | 594d1d3514f91221884bdc31f29a09e8f325f1e8 (patch) | |
tree | 13b7d02568a0b332857935cb69bfb545fa13f966 /core/file.h | |
parent | 5da09a21bba0b3d8979d6b8e70baf52b0316242f (diff) | |
download | subsurface-594d1d3514f91221884bdc31f29a09e8f325f1e8.tar.gz |
Cleanup: move file-related function declarations to file.h
A number of architecture-dependent functions were declared in
dive.h. Move them to file.h so that not all file-manipulating
translation units have to include dive.h. This is a small step
in avoiding mass-recompilation on every change to dive.h
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'core/file.h')
-rw-r--r-- | core/file.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/core/file.h b/core/file.h index f8f59ead2..012d7e727 100644 --- a/core/file.h +++ b/core/file.h @@ -2,12 +2,17 @@ #ifndef FILE_H #define FILE_H +#include <sys/stat.h> + struct memblock { void *buffer; size_t size; }; struct trip_table; +struct dive_site_table; +struct dive_table; +struct zip; #ifdef __cplusplus extern "C" { @@ -20,6 +25,18 @@ extern void ostctools_import(const char *file, struct dive_table *table, struct 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); + +// Platform specific functions +extern int subsurface_rename(const char *path, const char *newpath); +extern int subsurface_dir_rename(const char *path, const char *newpath); +extern int subsurface_open(const char *path, int oflags, mode_t mode); +extern FILE *subsurface_fopen(const char *path, const char *mode); +extern void *subsurface_opendir(const char *path); +extern int subsurface_access(const char *path, int mode); +extern int subsurface_stat(const char* path, struct stat* buf); +extern struct zip *subsurface_zip_open_readonly(const char *path, int flags, int *errorp); +extern int subsurface_zip_close(struct zip *zip); + #ifdef __cplusplus } #endif |