1baa3858d3f5d128a5c8466b700098109edcad5f2repo sync// WorkDir.h
2baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
3cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#ifndef __WORK_DIR_H
4cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#define __WORK_DIR_H
5cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky
6cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#include "../../../Windows/FileDir.h"
7cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky
8cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky#include "../../Common/FileStreams.h"
9baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
10baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#include "ZipRegistry.h"
11baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
12cd66d540cead3f8200b0c73bad9c276d67896c3dDavid SrbeckyFString GetWorkDir(const NWorkDir::CInfo &workDirInfo, const FString &path, FString &fileName);
13cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky
14cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbeckyclass CWorkDirTempFile
15cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky{
16cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  FString _originalPath;
17cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  NWindows::NFile::NDir::CTempFile _tempFile;
18cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  COutFileStream *_outStreamSpec;
19cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbeckypublic:
20cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  CMyComPtr<IOutStream> OutStream;
21cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky
22cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  HRESULT CreateTempFile(const FString &originalPath);
23cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky  HRESULT MoveToOriginal(bool deleteOriginal);
24cd66d540cead3f8200b0c73bad9c276d67896c3dDavid Srbecky};
25baa3858d3f5d128a5c8466b700098109edcad5f2repo sync
26baa3858d3f5d128a5c8466b700098109edcad5f2repo sync#endif
27