Upload 2.0.2
[physicsfs] / lzma / CPP / 7zip / UI / Console / OpenCallbackConsole.h
diff --git a/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h b/lzma/CPP/7zip/UI/Console/OpenCallbackConsole.h
new file mode 100644 (file)
index 0000000..db0e9bd
--- /dev/null
@@ -0,0 +1,27 @@
+// OpenCallbackConsole.h
+
+#ifndef __OPENCALLBACKCONSOLE_H
+#define __OPENCALLBACKCONSOLE_H
+
+#include "Common/StdOutStream.h"
+#include "../Common/ArchiveOpenCallback.h"
+
+class COpenCallbackConsole: public IOpenCallbackUI
+{
+public:
+  HRESULT CheckBreak();
+  HRESULT SetTotal(const UInt64 *files, const UInt64 *bytes);
+  HRESULT SetCompleted(const UInt64 *files, const UInt64 *bytes);
+  HRESULT CryptoGetTextPassword(BSTR *password);
+  HRESULT GetPasswordIfAny(UString &password);
+  bool WasPasswordAsked();
+  void ClearPasswordWasAskedFlag();
+  
+  CStdOutStream *OutStream;
+  bool PasswordIsDefined;
+  UString Password;
+  bool PasswordWasAsked;
+  COpenCallbackConsole(): PasswordIsDefined(false), PasswordWasAsked(false) {}
+};
+
+#endif