1f1bc04d7SKatayama Hirofumi MZ /* 2f1bc04d7SKatayama Hirofumi MZ * PROJECT: ReactOS Zip Shell Extension 3f1bc04d7SKatayama Hirofumi MZ * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4f1bc04d7SKatayama Hirofumi MZ * PURPOSE: Create a zip file 5f1bc04d7SKatayama Hirofumi MZ * COPYRIGHT: Copyright 2019 Mark Jansen (mark.jansen@reactos.org) 6f1bc04d7SKatayama Hirofumi MZ * Copyright 2019 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com) 7f1bc04d7SKatayama Hirofumi MZ */ 8f1bc04d7SKatayama Hirofumi MZ #ifndef CZIPCREATOR_HPP_ 9f1bc04d7SKatayama Hirofumi MZ #define CZIPCREATOR_HPP_ 10f1bc04d7SKatayama Hirofumi MZ 11f1bc04d7SKatayama Hirofumi MZ struct CZipCreatorImpl; 12f1bc04d7SKatayama Hirofumi MZ 13f1bc04d7SKatayama Hirofumi MZ class CZipCreator 14f1bc04d7SKatayama Hirofumi MZ { 15f1bc04d7SKatayama Hirofumi MZ public: 16f1bc04d7SKatayama Hirofumi MZ struct CZipCreatorImpl *m_pimpl; 17f1bc04d7SKatayama Hirofumi MZ 18f1bc04d7SKatayama Hirofumi MZ virtual ~CZipCreator(); 19f1bc04d7SKatayama Hirofumi MZ DoCreate()20f1bc04d7SKatayama Hirofumi MZ static CZipCreator* DoCreate() 21f1bc04d7SKatayama Hirofumi MZ { 22f1bc04d7SKatayama Hirofumi MZ return new CZipCreator(); 23f1bc04d7SKatayama Hirofumi MZ } 24f1bc04d7SKatayama Hirofumi MZ 25*bf2cec18SKatayama Hirofumi MZ virtual void DoAddItem(PCWSTR pszFile); 26f1bc04d7SKatayama Hirofumi MZ static BOOL runThread(CZipCreator* pCreator); 27f1bc04d7SKatayama Hirofumi MZ 28f1bc04d7SKatayama Hirofumi MZ protected: 29f1bc04d7SKatayama Hirofumi MZ CZipCreator(); 30f1bc04d7SKatayama Hirofumi MZ }; 31f1bc04d7SKatayama Hirofumi MZ 32f1bc04d7SKatayama Hirofumi MZ #endif 33