#ifndef _SNAPSHOT_H #define _SNAPSHOT_H #define PAGESIZE 4096 #define USE_CHECKPOINTING 0 #define DEBUG 1 typedef unsigned int snapshot_id; typedef void (*MyFuncPtr)(); void initSnapShotLibrary(unsigned int numbackingpages, unsigned int numsnapshots, unsigned int nummemoryregions, MyFuncPtr entryPoint); void addMemoryRegionToSnapShot( void * ptr, unsigned int numBytes ); snapshot_id takeSnapshot( ); void rollBack( snapshot_id theSnapShot ); void finalize(); #ifdef __cplusplus extern "C" { #endif void createSharedLibrary(); #ifdef __cplusplus }; /* end of extern "C" */ #endif #endif