// ************************************************************************** // * This file is part of the FreeFileSync project. It is distributed under * // * GNU General Public License: http://www.gnu.org/licenses/gpl.html * // * Copyright (C) Zenju (zenju AT gmx DOT de) - All Rights Reserved * // ************************************************************************** #ifndef SHADOW_H_INCLUDED #define SHADOW_H_INCLUDED #include #include #include #include #include namespace shadow { class ShadowCopy //take and buffer Windows Volume Shadow Copy snapshots as needed { public: ShadowCopy() {} //return filename on shadow copy volume - follows symlinks! Zstring makeShadowCopy(const Zstring& inputFile, const std::function& onBeforeMakeVolumeCopy); //throw FileError private: ShadowCopy(const ShadowCopy&); ShadowCopy& operator=(const ShadowCopy&); class ShadowVolume; typedef std::map, LessFilename> VolNameShadowMap; VolNameShadowMap shadowVol; }; } #endif //SHADOW_H_INCLUDED