2 * This program is free software; you can redistribute it and/or
3 * modify it under the terms of the GNU General Public License
4 * as published by the Free Software Foundation; either version 2
5 * of the License, or (at your option) any later version.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, write to the Free Software Foundation,
14 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 * The Original Code is Copyright (C) 2004 Blender Foundation.
17 * All rights reserved.
18 * external writefile function prototypes
21 #ifndef __BLO_UNDOFILE_H__
22 #define __BLO_UNDOFILE_H__
24 /** \file BLO_undofile.h
35 /** When true, this chunk doesn't own the memory, it's shared with a previous #MemFileChunk */
39 typedef struct MemFile {
44 typedef struct MemFileUndoData {
45 char filename[1024]; /* FILE_MAX */
50 /* actually only used writefile.c */
51 extern void memfile_chunk_add(
52 MemFile *memfile, const char *buf, unsigned int size,
53 MemFileChunk **compchunk_step);
56 extern void BLO_memfile_free(MemFile *memfile);
57 extern void BLO_memfile_merge(MemFile *first, MemFile *second);
60 extern struct Main *BLO_memfile_main_get(struct MemFile *memfile, struct Main *bmain, struct Scene **r_scene);
61 extern bool BLO_memfile_write_file(struct MemFile *memfile, const char *filename);
63 #endif /* __BLO_UNDOFILE_H__ */