X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsnapshot.h;h=f2be9c19630e804b0178e1511b400acf26e92cdb;hb=9d23eac9de03f91cf0ac094786ab30cdd589ac49;hp=ef63bdf80933f1a5ac396fa22a7102a0fd52b9fc;hpb=abe44529b439ad39b4d8dbf19cbd67c9b9844279;p=rocksndiamonds.git diff --git a/src/libgame/snapshot.h b/src/libgame/snapshot.h index ef63bdf8..f2be9c19 100644 --- a/src/libgame/snapshot.h +++ b/src/libgame/snapshot.h @@ -4,7 +4,7 @@ // (c) 1995-2014 by Artsoft Entertainment // Holger Schemel // info@artsoft.org -// http://www.artsoft.org/ +// https://www.artsoft.org/ // ---------------------------------------------------------------------------- // snapshot.h // ============================================================================ @@ -16,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; @@ -27,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