Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #if !defined(_SRRESTOREPTAPI_H)
      7 #define _SRRESTOREPTAPI_H
      8 
      9 #include <_mingw_unicode.h>
     10 
     11 #define MIN_EVENT 100
     12 #define BEGIN_SYSTEM_CHANGE 100
     13 #define END_SYSTEM_CHANGE 101
     14 #define BEGIN_NESTED_SYSTEM_CHANGE 102
     15 #define END_NESTED_SYSTEM_CHANGE 103
     16 #define MAX_EVENT 103
     17 
     18 #define MIN_RPT 0
     19 #define APPLICATION_INSTALL 0
     20 #define APPLICATION_UNINSTALL 1
     21 #define DESKTOP_SETTING 2
     22 #define ACCESSIBILITY_SETTING 3
     23 #define OE_SETTING 4
     24 #define APPLICATION_RUN 5
     25 #define RESTORE 6
     26 #define CHECKPOINT 7
     27 #define WINDOWS_SHUTDOWN 8
     28 #define WINDOWS_BOOT 9
     29 #define DEVICE_DRIVER_INSTALL 10
     30 #define FIRSTRUN 11
     31 #define MODIFY_SETTINGS 12
     32 #define CANCELLED_OPERATION 13
     33 #define BACKUP_RECOVERY 14
     34 #define MAX_RPT 14
     35 
     36 #define MAX_DESC 64
     37 #define MAX_DESC_W 256
     38 
     39 #pragma pack(push,srrestoreptapi_include)
     40 #pragma pack(1)
     41 
     42 typedef struct _RESTOREPTINFOA {
     43   DWORD dwEventType;
     44   DWORD dwRestorePtType;
     45   INT64 llSequenceNumber;
     46   CHAR szDescription[MAX_DESC];
     47 } RESTOREPOINTINFOA,*PRESTOREPOINTINFOA;
     48 
     49 typedef struct _RESTOREPTINFOW {
     50   DWORD dwEventType;
     51   DWORD dwRestorePtType;
     52   INT64 llSequenceNumber;
     53   WCHAR szDescription[MAX_DESC_W];
     54 } RESTOREPOINTINFOW,*PRESTOREPOINTINFOW;
     55 
     56 typedef struct _SMGRSTATUS {
     57   DWORD nStatus;
     58   INT64 llSequenceNumber;
     59 } STATEMGRSTATUS,*PSTATEMGRSTATUS;
     60 
     61 #pragma pack(pop,srrestoreptapi_include)
     62 
     63 #ifdef __cplusplus
     64 extern "C" {
     65 #endif
     66 
     67   WINBOOL __stdcall SRSetRestorePointA(PRESTOREPOINTINFOA pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus);
     68   WINBOOL __stdcall SRSetRestorePointW(PRESTOREPOINTINFOW pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus);
     69   DWORD __stdcall SRRemoveRestorePoint(DWORD dwRPNum);
     70 
     71 #ifdef __cplusplus
     72 }
     73 #endif
     74 
     75 #define RESTOREPOINTINFO __MINGW_NAME_AW(RESTOREPOINTINFO)
     76 #define PRESTOREPOINTINFO __MINGW_NAME_AW(PRESTOREPOINTINFO)
     77 #define SRSetRestorePoint __MINGW_NAME_AW(SRSetRestorePoint)
     78 
     79 #endif
     80