X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsnapshot.h;h=41fca6407a4a185cefbaa010534d87c164113b5a;hb=fe57866d9aa0cc2ebf48411eaf7bb4180cf85a84;hp=706fc0549f96c0bd4a1854e87966d117f4eddfe8;hpb=f926e522aef77158e0011ae5ad2cf8805509d6d1;p=rocksndiamonds.git diff --git a/src/libgame/snapshot.h b/src/libgame/snapshot.h index 706fc054..41fca640 100644 --- a/src/libgame/snapshot.h +++ b/src/libgame/snapshot.h @@ -1,15 +1,13 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1995-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* snapshot.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// snapshot.h +// ============================================================================ #ifndef SNAPSHOT_H #define SNAPSHOT_H @@ -18,10 +16,12 @@ #include "misc.h" -/* needed for comfortably saving engine snapshot buffers */ -#define ARGS_ADDRESS_AND_SIZEOF(x) (&(x)), (sizeof(x)) +#define SNAPSHOT_MEMORY_DEFAULT (512 * 1024 * 1024) -struct EngineSnapshotNodeInfo +// needed for comfortably saving engine snapshot buffers +#define ARGS_ADDRESS_AND_SIZEOF(x) (&(x)), (sizeof(x)) + +struct SnapshotNodeInfo { void *buffer_orig; void *buffer_copy; @@ -29,8 +29,17 @@ struct EngineSnapshotNodeInfo }; -void SaveEngineSnapshotBuffer(void *buffer, int size); -void LoadEngineSnapshotBuffers(); -void FreeEngineSnapshotBuffers(); +void SaveSnapshotBuffer(ListNode **, void *, int); +void LoadSnapshotBuffers(ListNode *); +void FreeSnapshotBuffers(ListNode *); + +void SaveSnapshotSingle(ListNode *); +void SaveSnapshotToList(ListNode *); +boolean LoadSnapshotSingle(void); +boolean LoadSnapshotFromList_Older(int); +boolean LoadSnapshotFromList_Newer(int); +boolean CheckSnapshotList(void); +void FreeSnapshotSingle(void); +void FreeSnapshotList(void); -#endif /* SNAPSHOT_H */ +#endif // SNAPSHOT_H