X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsnapshot.h;h=cd59d7e3cf971ae75506b498149291524e669d96;hp=706fc0549f96c0bd4a1854e87966d117f4eddfe8;hb=115ce6f2da1914d68b0fe0e5f9082973190dacdd;hpb=f926e522aef77158e0011ae5ad2cf8805509d6d1 diff --git a/src/libgame/snapshot.h b/src/libgame/snapshot.h index 706fc054..cd59d7e3 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" +#define SNAPSHOT_MEMORY_DEFAULT (512 * 1024 * 1024) + /* needed for comfortably saving engine snapshot buffers */ -#define ARGS_ADDRESS_AND_SIZEOF(x) (&(x)), (sizeof(x)) +#define ARGS_ADDRESS_AND_SIZEOF(x) (&(x)), (sizeof(x)) -struct EngineSnapshotNodeInfo +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 */