24#if !defined(EFF174AE02944E9C9B9B9F35E67C2E54)
25#define EFF174AE02944E9C9B9B9F35E67C2E54
27#include <miktex/Core/config.h>
31#include <miktex/Util/OptionSet>
32#include <miktex/Util/PathName>
34MIKTEX_CORE_BEGIN_NAMESPACE;
54class MIKTEXNOVTABLE Directory
60 Directory(
const Directory& other) =
delete;
63 Directory& operator=(
const Directory& other) =
delete;
66 Directory(Directory&& other) =
delete;
69 Directory& operator=(Directory&& other) =
delete;
72 ~Directory() =
delete;
130MIKTEX_CORE_END_NAMESPACE;
static void Create(const MiKTeX::Util::PathName &path)
static bool Exists(const MiKTeX::Util::PathName &path)
static void Copy(const MiKTeX::Util::PathName &source, const MiKTeX::Util::PathName &dest, DirectoryCopyOptionSet options)
static void Move(const MiKTeX::Util::PathName &source, const MiKTeX::Util::PathName &dest)
static void SetCurrent(const MiKTeX::Util::PathName &path)
static void Delete(const MiKTeX::Util::PathName &path)
static MiKTeX::Util::PathName GetCurrent()
static void Delete(const MiKTeX::Util::PathName &path, bool recursive)
static void SetTimes(const MiKTeX::Util::PathName &path, time_t creationTime, time_t lastAccessTime, time_t lastWriteTime)
Definition OptionSet.h:26
Instances of this class can be used to store path names.
Definition PathName.h:64
DirectoryCopyOption
Directory copy options.
Definition Directory.h:38
@ CopySubDirectories
Deep copy.
Definition Directory.h:46
@ ReplaceExisting
Replace an existing directory.
Definition Directory.h:42
@ UpdateFndb
Update the file name database.
Definition Directory.h:40
@ PreserveMode
Preserve mode.
Definition Directory.h:44