diff options
Diffstat (limited to 'src/engine/plan.h')
| -rw-r--r-- | src/engine/plan.h | 106 |
1 files changed, 17 insertions, 89 deletions
diff --git a/src/engine/plan.h b/src/engine/plan.h index 0024b0aa..4ba2df6a 100644 --- a/src/engine/plan.h +++ b/src/engine/plan.h | |||
| @@ -38,17 +38,10 @@ enum BURN_CACHE_ACTION_TYPE | |||
| 38 | BURN_CACHE_ACTION_TYPE_NONE, | 38 | BURN_CACHE_ACTION_TYPE_NONE, |
| 39 | BURN_CACHE_ACTION_TYPE_CHECKPOINT, | 39 | BURN_CACHE_ACTION_TYPE_CHECKPOINT, |
| 40 | BURN_CACHE_ACTION_TYPE_LAYOUT_BUNDLE, | 40 | BURN_CACHE_ACTION_TYPE_LAYOUT_BUNDLE, |
| 41 | BURN_CACHE_ACTION_TYPE_PACKAGE_START, | 41 | BURN_CACHE_ACTION_TYPE_PACKAGE, |
| 42 | BURN_CACHE_ACTION_TYPE_PACKAGE_STOP, | ||
| 43 | BURN_CACHE_ACTION_TYPE_ROLLBACK_PACKAGE, | 42 | BURN_CACHE_ACTION_TYPE_ROLLBACK_PACKAGE, |
| 44 | BURN_CACHE_ACTION_TYPE_SIGNAL_SYNCPOINT, | 43 | BURN_CACHE_ACTION_TYPE_SIGNAL_SYNCPOINT, |
| 45 | BURN_CACHE_ACTION_TYPE_ACQUIRE_CONTAINER, | 44 | BURN_CACHE_ACTION_TYPE_CONTAINER, |
| 46 | BURN_CACHE_ACTION_TYPE_EXTRACT_CONTAINER, | ||
| 47 | BURN_CACHE_ACTION_TYPE_LAYOUT_CONTAINER, | ||
| 48 | BURN_CACHE_ACTION_TYPE_ACQUIRE_PAYLOAD, | ||
| 49 | BURN_CACHE_ACTION_TYPE_CACHE_PAYLOAD, | ||
| 50 | BURN_CACHE_ACTION_TYPE_LAYOUT_PAYLOAD, | ||
| 51 | BURN_CACHE_ACTION_TYPE_TRANSACTION_BOUNDARY, | ||
| 52 | }; | 45 | }; |
| 53 | 46 | ||
| 54 | enum BURN_EXECUTE_ACTION_TYPE | 47 | enum BURN_EXECUTE_ACTION_TYPE |
| @@ -78,13 +71,6 @@ enum BURN_CLEAN_ACTION_TYPE | |||
| 78 | 71 | ||
| 79 | // structs | 72 | // structs |
| 80 | 73 | ||
| 81 | typedef struct _BURN_EXTRACT_PAYLOAD | ||
| 82 | { | ||
| 83 | BURN_PACKAGE* pPackage; | ||
| 84 | BURN_PAYLOAD* pPayload; | ||
| 85 | LPWSTR sczUnverifiedPath; | ||
| 86 | } BURN_EXTRACT_PAYLOAD; | ||
| 87 | |||
| 88 | typedef struct _BURN_DEPENDENT_REGISTRATION_ACTION | 74 | typedef struct _BURN_DEPENDENT_REGISTRATION_ACTION |
| 89 | { | 75 | { |
| 90 | BURN_DEPENDENT_REGISTRATION_ACTION_TYPE type; | 76 | BURN_DEPENDENT_REGISTRATION_ACTION_TYPE type; |
| @@ -111,7 +97,6 @@ typedef struct _BURN_CACHE_PAYLOAD_PROGRESS | |||
| 111 | typedef struct _BURN_CACHE_ACTION | 97 | typedef struct _BURN_CACHE_ACTION |
| 112 | { | 98 | { |
| 113 | BURN_CACHE_ACTION_TYPE type; | 99 | BURN_CACHE_ACTION_TYPE type; |
| 114 | BOOL fSkipUntilRetried; | ||
| 115 | union | 100 | union |
| 116 | { | 101 | { |
| 117 | struct | 102 | struct |
| @@ -121,21 +106,14 @@ typedef struct _BURN_CACHE_ACTION | |||
| 121 | struct | 106 | struct |
| 122 | { | 107 | { |
| 123 | LPWSTR sczExecutableName; | 108 | LPWSTR sczExecutableName; |
| 124 | LPWSTR sczLayoutDirectory; | ||
| 125 | LPWSTR sczUnverifiedPath; | 109 | LPWSTR sczUnverifiedPath; |
| 126 | DWORD64 qwBundleSize; | 110 | DWORD64 qwBundleSize; |
| 111 | BURN_PAYLOAD_GROUP* pPayloadGroup; | ||
| 127 | } bundleLayout; | 112 | } bundleLayout; |
| 128 | struct | 113 | struct |
| 129 | { | 114 | { |
| 130 | BURN_PACKAGE* pPackage; | 115 | BURN_PACKAGE* pPackage; |
| 131 | DWORD cCachePayloads; | 116 | } package; |
| 132 | DWORD64 qwCachePayloadSizeTotal; | ||
| 133 | DWORD iPackageCompleteAction; | ||
| 134 | } packageStart; | ||
| 135 | struct | ||
| 136 | { | ||
| 137 | BURN_PACKAGE* pPackage; | ||
| 138 | } packageStop; | ||
| 139 | struct | 117 | struct |
| 140 | { | 118 | { |
| 141 | BURN_PACKAGE* pPackage; | 119 | BURN_PACKAGE* pPackage; |
| @@ -147,62 +125,7 @@ typedef struct _BURN_CACHE_ACTION | |||
| 147 | struct | 125 | struct |
| 148 | { | 126 | { |
| 149 | BURN_CONTAINER* pContainer; | 127 | BURN_CONTAINER* pContainer; |
| 150 | DWORD iProgress; | 128 | } container; |
| 151 | LPWSTR sczUnverifiedPath; | ||
| 152 | } resolveContainer; | ||
| 153 | struct | ||
| 154 | { | ||
| 155 | BURN_CONTAINER* pContainer; | ||
| 156 | DWORD iSkipUntilAcquiredByAction; | ||
| 157 | LPWSTR sczContainerUnverifiedPath; | ||
| 158 | |||
| 159 | BURN_EXTRACT_PAYLOAD* rgPayloads; | ||
| 160 | DWORD cPayloads; | ||
| 161 | } extractContainer; | ||
| 162 | struct | ||
| 163 | { | ||
| 164 | BURN_PACKAGE* pPackage; | ||
| 165 | BURN_CONTAINER* pContainer; | ||
| 166 | DWORD iProgress; | ||
| 167 | DWORD iTryAgainAction; | ||
| 168 | DWORD cTryAgainAttempts; | ||
| 169 | LPWSTR sczLayoutDirectory; | ||
| 170 | LPWSTR sczUnverifiedPath; | ||
| 171 | BOOL fMove; | ||
| 172 | } layoutContainer; | ||
| 173 | struct | ||
| 174 | { | ||
| 175 | BURN_PACKAGE* pPackage; | ||
| 176 | BURN_PAYLOAD* pPayload; | ||
| 177 | DWORD iProgress; | ||
| 178 | LPWSTR sczUnverifiedPath; | ||
| 179 | } resolvePayload; | ||
| 180 | struct | ||
| 181 | { | ||
| 182 | BURN_PACKAGE* pPackage; | ||
| 183 | BURN_PAYLOAD* pPayload; | ||
| 184 | DWORD iProgress; | ||
| 185 | DWORD iTryAgainAction; | ||
| 186 | DWORD cTryAgainAttempts; | ||
| 187 | LPWSTR sczUnverifiedPath; | ||
| 188 | BOOL fMove; | ||
| 189 | } cachePayload; | ||
| 190 | struct | ||
| 191 | { | ||
| 192 | BURN_PACKAGE* pPackage; | ||
| 193 | BURN_PAYLOAD* pPayload; | ||
| 194 | DWORD iProgress; | ||
| 195 | DWORD iTryAgainAction; | ||
| 196 | DWORD cTryAgainAttempts; | ||
| 197 | LPWSTR sczLayoutDirectory; | ||
| 198 | LPWSTR sczUnverifiedPath; | ||
| 199 | BOOL fMove; | ||
| 200 | } layoutPayload; | ||
| 201 | struct | ||
| 202 | { | ||
| 203 | BURN_ROLLBACK_BOUNDARY* pRollbackBoundary; | ||
| 204 | HANDLE hEvent; | ||
| 205 | } rollbackBoundary; | ||
| 206 | }; | 129 | }; |
| 207 | } BURN_CACHE_ACTION; | 130 | } BURN_CACHE_ACTION; |
| 208 | 131 | ||
| @@ -306,6 +229,7 @@ typedef struct _BURN_CLEAN_ACTION | |||
| 306 | typedef struct _BURN_PLAN | 229 | typedef struct _BURN_PLAN |
| 307 | { | 230 | { |
| 308 | BOOTSTRAPPER_ACTION action; | 231 | BOOTSTRAPPER_ACTION action; |
| 232 | BURN_PAYLOADS* pPayloads; // points directly into parent the ENGINE_STATE. | ||
| 309 | LPWSTR wzBundleId; // points directly into parent the ENGINE_STATE. | 233 | LPWSTR wzBundleId; // points directly into parent the ENGINE_STATE. |
| 310 | LPWSTR wzBundleProviderKey; // points directly into parent the ENGINE_STATE. | 234 | LPWSTR wzBundleProviderKey; // points directly into parent the ENGINE_STATE. |
| 311 | BOOL fPerMachine; | 235 | BOOL fPerMachine; |
| @@ -315,6 +239,7 @@ typedef struct _BURN_PLAN | |||
| 315 | BOOL fDisableRollback; | 239 | BOOL fDisableRollback; |
| 316 | BOOL fAffectedMachineState; | 240 | BOOL fAffectedMachineState; |
| 317 | BOOL fIgnoreAllDependents; | 241 | BOOL fIgnoreAllDependents; |
| 242 | LPWSTR sczLayoutDirectory; | ||
| 318 | 243 | ||
| 319 | DWORD64 qwCacheSizeTotal; | 244 | DWORD64 qwCacheSizeTotal; |
| 320 | 245 | ||
| @@ -369,7 +294,9 @@ typedef struct _BURN_PLAN | |||
| 369 | 294 | ||
| 370 | void PlanReset( | 295 | void PlanReset( |
| 371 | __in BURN_PLAN* pPlan, | 296 | __in BURN_PLAN* pPlan, |
| 372 | __in BURN_PACKAGES* pPackages | 297 | __in BURN_CONTAINERS* pContainers, |
| 298 | __in BURN_PACKAGES* pPackages, | ||
| 299 | __in BURN_PAYLOAD_GROUP* pLayoutPayloads | ||
| 373 | ); | 300 | ); |
| 374 | void PlanUninitializeExecuteAction( | 301 | void PlanUninitializeExecuteAction( |
| 375 | __in BURN_EXECUTE_ACTION* pExecuteAction | 302 | __in BURN_EXECUTE_ACTION* pExecuteAction |
| @@ -393,8 +320,7 @@ HRESULT PlanLayoutBundle( | |||
| 393 | __in_z LPCWSTR wzExecutableName, | 320 | __in_z LPCWSTR wzExecutableName, |
| 394 | __in DWORD64 qwBundleSize, | 321 | __in DWORD64 qwBundleSize, |
| 395 | __in BURN_VARIABLES* pVariables, | 322 | __in BURN_VARIABLES* pVariables, |
| 396 | __in BURN_PAYLOADS* pPayloads, | 323 | __in BURN_PAYLOAD_GROUP* pLayoutPayloads |
| 397 | __out_z LPWSTR* psczLayoutDirectory | ||
| 398 | ); | 324 | ); |
| 399 | HRESULT PlanForwardCompatibleBundles( | 325 | HRESULT PlanForwardCompatibleBundles( |
| 400 | __in BURN_USER_EXPERIENCE* pUX, | 326 | __in BURN_USER_EXPERIENCE* pUX, |
| @@ -410,8 +336,7 @@ HRESULT PlanPackages( | |||
| 410 | __in BURN_LOGGING* pLog, | 336 | __in BURN_LOGGING* pLog, |
| 411 | __in BURN_VARIABLES* pVariables, | 337 | __in BURN_VARIABLES* pVariables, |
| 412 | __in BOOTSTRAPPER_DISPLAY display, | 338 | __in BOOTSTRAPPER_DISPLAY display, |
| 413 | __in BOOTSTRAPPER_RELATION_TYPE relationType, | 339 | __in BOOTSTRAPPER_RELATION_TYPE relationType |
| 414 | __in_z_opt LPCWSTR wzLayoutDirectory | ||
| 415 | ); | 340 | ); |
| 416 | HRESULT PlanRegistration( | 341 | HRESULT PlanRegistration( |
| 417 | __in BURN_PLAN* pPlan, | 342 | __in BURN_PLAN* pPlan, |
| @@ -438,10 +363,13 @@ HRESULT PlanUpdateBundle( | |||
| 438 | __in BOOTSTRAPPER_DISPLAY display, | 363 | __in BOOTSTRAPPER_DISPLAY display, |
| 439 | __in BOOTSTRAPPER_RELATION_TYPE relationType | 364 | __in BOOTSTRAPPER_RELATION_TYPE relationType |
| 440 | ); | 365 | ); |
| 366 | HRESULT PlanLayoutContainer( | ||
| 367 | __in BURN_PLAN* pPlan, | ||
| 368 | __in BURN_CONTAINER* pContainer | ||
| 369 | ); | ||
| 441 | HRESULT PlanLayoutPackage( | 370 | HRESULT PlanLayoutPackage( |
| 442 | __in BURN_PLAN* pPlan, | 371 | __in BURN_PLAN* pPlan, |
| 443 | __in BURN_PACKAGE* pPackage, | 372 | __in BURN_PACKAGE* pPackage |
| 444 | __in_z_opt LPCWSTR wzLayoutDirectory | ||
| 445 | ); | 373 | ); |
| 446 | HRESULT PlanExecutePackage( | 374 | HRESULT PlanExecutePackage( |
| 447 | __in BOOL fPerMachine, | 375 | __in BOOL fPerMachine, |
