Armature drawing: custom shape scale options
[blender-staging.git] / source / blender / blenkernel / BKE_packedFile.h
index 556ff26e62102063cb5116de4099cc49f6724bb1..a2397922061865ec0591b4dcdf73bba9be200ee5 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * $Id$ 
- *
  * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
  *
  * ***** END GPL LICENSE BLOCK *****
  */
-#ifndef BKE_PACKEDFILE_H
-#define BKE_PACKEDFILE_H
+#ifndef __BKE_PACKEDFILE_H__
+#define __BKE_PACKEDFILE_H__
 
 /** \file BKE_packedFile.h
  *  \ingroup bke
  *  \since March 2001
  *  \author nzc
  */
-#define RET_OK         0
-#define RET_ERROR      1
+#define RET_OK      0
+#define RET_ERROR   1
 
+struct ID;
 struct bSound;
 struct Image;
 struct Main;
@@ -45,17 +44,20 @@ struct ReportList;
 struct VFont;
 
 /* pack */
+struct PackedFile *dupPackedFile(const struct PackedFile *pf_src);
 struct PackedFile *newPackedFile(struct ReportList *reports, const char *filename, const char *relabase);
 struct PackedFile *newPackedFileMemory(void *mem, int memlen);
 
-void packAll(struct Main *bmain, struct ReportList *reports);
+void packAll(struct Main *bmain, struct ReportList *reports, bool verbose);
+void packLibraries(struct Main *bmain, struct ReportList *reports);
 
 /* unpack */
-char *unpackFile(struct ReportList *reports, char *abs_name, char *local_name, struct PackedFile *pf, int how);
+char *unpackFile(struct ReportList *reports, const char *abs_name, const char *local_name, struct PackedFile *pf, int how);
 int unpackVFont(struct ReportList *reports, struct VFont *vfont, int how);
 int unpackSound(struct Main *bmain, struct ReportList *reports, struct bSound *sound, int how);
 int unpackImage(struct ReportList *reports, struct Image *ima, int how);
 void unpackAll(struct Main *bmain, struct ReportList *reports, int how);
+int unpackLibraries(struct Main *bmain, struct ReportList *reports);
 
 int writePackedFile(struct ReportList *reports, const char *filename, struct PackedFile *pf, int guimode);
 
@@ -71,5 +73,10 @@ int seekPackedFile(struct PackedFile *pf, int offset, int whence);
 void rewindPackedFile(struct PackedFile *pf);
 int readPackedFile(struct PackedFile *pf, void *data, int size);
 
+/* ID should be not NULL, return 1 if there's a packed file */
+bool BKE_pack_check(struct ID *id);
+/* ID should be not NULL, throws error when ID is Library */
+void BKE_unpack_id(struct Main *bmain, struct ID *id, struct ReportList *reports, int how);
+
 #endif