Fix for #2657
[blender-staging.git] / source / blender / blenloader / intern / readfile.h
index a052b940c7c276922c7231a56cb20c69348a89eb..19534095f98e52ca7efeb0f22a1d2926b00615a6 100644 (file)
@@ -34,6 +34,7 @@
 #define READFILE_H
 
 struct OldNewMap;
+struct MemFile;
 
 typedef struct FileData {
        // linked list of BHeadN's
@@ -45,11 +46,15 @@ typedef struct FileData {
        int (*read)(struct FileData *filedata, void *buffer, int size);
 
        // variables needed for reading from memory / stream
-       char * buffer;
+       char *buffer;
+       // variables needed for reading from memfile (undo)
+       struct MemFile *memfile;
 
        // variables needed for reading from file
        int filedes;
-
+       // now only in use for library appending
+       char filename[FILE_MAXDIR+FILE_MAXFILE];
+       
        // variables needed for reading from stream
        char headerdone;
        int inbuffer;
@@ -93,39 +98,18 @@ typedef struct BHeadN {
 void blo_join_main(ListBase *mainlist);
 void blo_split_main(ListBase *mainlist);
 
-       BlendFileData*
-blo_read_file_internal(
-       FileData *fd, 
-       BlendReadError *error_r);
-
-
-       FileData*
-blo_openblenderfile(
-       char *name);
-
-       FileData*
-blo_openblendermemory(
-       void *buffer,
-       int buffersize);
-
-       void
-blo_freefiledata(
-       FileData *fd);
+BlendFileData *blo_read_file_internal( FileData *fd,  BlendReadError *error_r);
 
+FileData *blo_openblenderfile( char *name);
+FileData *blo_openblendermemory( void *buffer, int buffersize);
+FileData *blo_openblendermemfile(struct MemFile *memfile);
 
-       BHead*
-blo_firstbhead(
-       FileData *fd);
+void blo_freefiledata( FileData *fd);
 
-       BHead*
-blo_nextbhead(
-       FileData *fd, 
-       BHead *thisblock);
 
-       BHead*
-blo_prevbhead(
-       FileData *fd, 
-       BHead *thisblock);
+BHead *blo_firstbhead(FileData *fd);
+BHead *blo_nextbhead(FileData *fd, BHead *thisblock);
+BHead *blo_prevbhead(FileData *fd, BHead *thisblock);
        
 #endif