X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=snapshot-interface.h;h=d0fcbb70fc9e137daae11d04f5443310d101a319;hb=HEAD;hp=0c2478ee67abb38b817106a876899803fa458771;hpb=700898cdd309acb86dcd275d8b1c34e02d67922e;p=c11tester.git diff --git a/snapshot-interface.h b/snapshot-interface.h index 0c2478ee..d0fcbb70 100644 --- a/snapshot-interface.h +++ b/snapshot-interface.h @@ -1,12 +1,19 @@ +/** + * @file snapshot-interface.h + * @brief C interface layer on top of snapshotting system + */ + #ifndef __SNAPINTERFACE_H #define __SNAPINTERFACE_H -#include "snapshot.h" -#include "mymemory.h" -#include -#include -#include -typedef std::basic_string< char, std::char_traits< char >, MyAlloc< char > > MyString; -namespace snapshot_utils{ - std::vector< std::pair< void *, size_t >, MyAlloc< std::pair< void *, size_t > > > ReturnGlobalSegmentsToSnapshot(); -}; +#include + +typedef unsigned int snapshot_id; +typedef void (*VoidFuncPtr)(); + +void snapshot_system_init(unsigned int numheappages); +void startExecution(); +snapshot_id take_snapshot(); +void snapshot_roll_back(snapshot_id theSnapShot); + + #endif