Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenloader/intern/readfile.h')
-rw-r--r--source/blender/blenloader/intern/readfile.h29
1 files changed, 18 insertions, 11 deletions
diff --git a/source/blender/blenloader/intern/readfile.h b/source/blender/blenloader/intern/readfile.h
index e63b0c1909b..fb950e37da8 100644
--- a/source/blender/blenloader/intern/readfile.h
+++ b/source/blender/blenloader/intern/readfile.h
@@ -24,6 +24,10 @@
#pragma once
+#ifdef WIN32
+# include "BLI_winstuff.h"
+#endif
+
#include "DNA_sdna_types.h"
#include "DNA_space_types.h"
#include "DNA_windowmanager_types.h" /* for ReportType */
@@ -38,6 +42,7 @@ struct Object;
struct OldNewMap;
struct PartEff;
struct ReportList;
+struct UserDef;
struct View3D;
typedef struct IDNameLib_Map IDNameLib_Map;
@@ -61,10 +66,10 @@ enum eFileDataFlag {
typedef int64_t off64_t;
#endif
-typedef int(FileDataReadFn)(struct FileData *filedata,
- void *buffer,
- unsigned int size,
- bool *r_is_memchunk_identical);
+typedef ssize_t(FileDataReadFn)(struct FileData *filedata,
+ void *buffer,
+ size_t size,
+ bool *r_is_memchunk_identical);
typedef off64_t(FileDataSeekFn)(struct FileData *filedata, off64_t offset, int whence);
typedef struct FileData {
@@ -72,8 +77,8 @@ typedef struct FileData {
ListBase bhead_list;
enum eFileDataFlag flags;
bool is_eof;
- int buffersize;
- int64_t file_offset;
+ size_t buffersize;
+ off64_t file_offset;
FileDataReadFn *read;
FileDataSeekFn *seek;
@@ -102,6 +107,7 @@ typedef struct FileData {
const struct SDNA *memsdna;
/** Array of #eSDNA_StructCompare. */
const char *compflags;
+ struct DNA_ReconstructInfo *reconstruct_info;
int fileversion;
/** Used to retrieve ID names from (bhead+1). */
@@ -167,9 +173,6 @@ const char *blo_bhead_id_name(const FileData *fd, const BHead *bhead);
/* do versions stuff */
-void blo_reportf_wrap(struct ReportList *reports, ReportType type, const char *format, ...)
- ATTR_PRINTF_FORMAT(3, 4);
-
void blo_do_versions_dna(struct SDNA *sdna, const int versionfile, const int subversionfile);
void blo_do_versions_oldnewmap_insert(struct OldNewMap *onm,
@@ -179,11 +182,11 @@ void blo_do_versions_oldnewmap_insert(struct OldNewMap *onm,
void *blo_do_versions_newlibadr(struct FileData *fd, const void *lib, const void *adr);
void *blo_do_versions_newlibadr_us(struct FileData *fd, const void *lib, const void *adr);
-struct PartEff *blo_do_version_give_parteff_245(struct Object *ob);
void blo_do_version_old_trackto_to_constraints(struct Object *ob);
-void blo_do_versions_view3d_split_250(struct View3D *v3d, struct ListBase *regions);
void blo_do_versions_key_uidgen(struct Key *key);
+void blo_do_versions_userdef(struct UserDef *userdef);
+
void blo_do_versions_pre250(struct FileData *fd, struct Library *lib, struct Main *bmain);
void blo_do_versions_250(struct FileData *fd, struct Library *lib, struct Main *bmain);
void blo_do_versions_260(struct FileData *fd, struct Library *lib, struct Main *bmain);
@@ -198,3 +201,7 @@ void do_versions_after_linking_270(struct Main *bmain);
void do_versions_after_linking_280(struct Main *bmain, struct ReportList *reports);
void do_versions_after_linking_290(struct Main *bmain, struct ReportList *reports);
void do_versions_after_linking_cycles(struct Main *bmain);
+
+/* This is rather unfortunate to have to expose this here, but better use that nasty hack in
+ * do_version than readfile itself. */
+void *blo_read_get_new_globaldata_address(struct FileData *fd, const void *adr);