| | 1 | /* $Header$ */ |
| | 2 | |
| | 3 | /* |
| | 4 | * Copyright (c) 1999, 2002 Michael J. Roberts. All Rights Reserved. |
| | 5 | * |
| | 6 | * Please see the accompanying license file, LICENSE.TXT, for information |
| | 7 | * on using and copying this software. |
| | 8 | */ |
| | 9 | /* |
| | 10 | Name |
| | 11 | vmsave.h - save/restore VM state |
| | 12 | Function |
| | 13 | Saves/restores VM state to/from a file. |
| | 14 | Notes |
| | 15 | |
| | 16 | Modified |
| | 17 | 08/02/99 MJRoberts - Creation |
| | 18 | */ |
| | 19 | |
| | 20 | #ifndef VMSAVE_H |
| | 21 | #define VMSAVE_H |
| | 22 | |
| | 23 | #include "vmglob.h" |
| | 24 | |
| | 25 | class CVmSaveFile |
| | 26 | { |
| | 27 | public: |
| | 28 | /* save state to a file */ |
| | 29 | static void save(VMG_ class CVmFile *fp); |
| | 30 | |
| | 31 | /* |
| | 32 | * given a saved state file, read the name of the image file that |
| | 33 | * created it |
| | 34 | */ |
| | 35 | static int restore_get_image(osfildef *fp, |
| | 36 | char *fname_buf, size_t fname_buf_len); |
| | 37 | |
| | 38 | /* |
| | 39 | * Restore state from a file. Returns zero on success, or a |
| | 40 | * VMERR_xxx code indicating the problem on failure. |
| | 41 | */ |
| | 42 | static int restore(VMG_ class CVmFile *fp); |
| | 43 | |
| | 44 | /* reset the VM to the initial image file state */ |
| | 45 | static void reset(VMG0_); |
| | 46 | }; |
| | 47 | |
| | 48 | #endif /* VMSAVE_H */ |