X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=snapshot-interface.h;h=ecc60ec6453a9ca4991c92e27d248622a201b7c5;hb=5f71c5e271a6fd27f2300b87b6bb45e122348320;hp=e9746e1ebb35468ff20e0ea68fd9ee364a0e7cd6;hpb=ca4375ba4697b8abe476e03f211523c491c3e2c3;p=model-checker.git diff --git a/snapshot-interface.h b/snapshot-interface.h index e9746e1..ecc60ec 100644 --- a/snapshot-interface.h +++ b/snapshot-interface.h @@ -1,3 +1,8 @@ +/** @file snapshot-interface.h + * @brief C++ layer on top of snapshotting system. + */ + + #ifndef __SNAPINTERFACE_H #define __SNAPINTERFACE_H #include "mymemory.h" @@ -5,32 +10,30 @@ typedef unsigned int snapshot_id; typedef void (*VoidFuncPtr)(); -void initSnapShotLibrary(unsigned int numbackingpages, +void initSnapshotLibrary(unsigned int numbackingpages, unsigned int numsnapshots, unsigned int nummemoryregions, unsigned int numheappages, VoidFuncPtr entryPoint); -void SnapshotGlobalSegments(); - struct stackEntry { - struct stackEntry *next; - snapshot_id snapshotid; - int index; + struct stackEntry *next; + snapshot_id snapshotid; + int index; }; class SnapshotStack { public: - MEMALLOC - SnapshotStack( ); - ~SnapshotStack(); - int backTrackBeforeStep(int seq_index); - void snapshotStep(int seq_index); - - private: - struct stackEntry * stack; + SnapshotStack(); + ~SnapshotStack(); + int backTrackBeforeStep(int seq_index); + void snapshotStep(int seq_index); + + MEMALLOC + private: + struct stackEntry *stack; }; /* Not sure what it even means to have more than one snapshot object, so let's just make a global reference to it.*/ -extern SnapshotStack * snapshotObject; +extern SnapshotStack *snapshotObject; #endif