1 /** @file snapshot-interface.h
2 * @brief C++ layer on top of snapshotting system.
6 #ifndef __SNAPINTERFACE_H
7 #define __SNAPINTERFACE_H
10 typedef unsigned int snapshot_id;
12 typedef void (*VoidFuncPtr)();
13 void initSnapShotLibrary(unsigned int numbackingpages,
14 unsigned int numsnapshots, unsigned int nummemoryregions,
15 unsigned int numheappages, VoidFuncPtr entryPoint);
18 struct stackEntry *next;
19 snapshot_id snapshotid;
28 int backTrackBeforeStep(int seq_index);
29 void snapshotStep(int seq_index);
32 struct stackEntry * stack;
35 /* Not sure what it even means to have more than one snapshot object,
36 so let's just make a global reference to it.*/
38 extern SnapshotStack * snapshotObject;