Fishnet 2.0.1
Framework for Graph-Based Analysis of GIS Vector Data
Loading...
Searching...
No Matches
TemporaryDirectiory.h
Go to the documentation of this file.
1#pragma once
2#include <filesystem>
3#include <optional>
4
5namespace fishnet::util{
11private:
12 size_t identifier;
13 std::filesystem::path directory;
14 static std::filesystem::path fromID(size_t id) noexcept;
15 static size_t randomUniqueID() noexcept;
16 TemporaryDirectory(size_t identifier, std::filesystem::path directory):identifier(identifier),directory(std::move(directory)){}
17 static inline std::filesystem::path TMP_PREFIX = std::filesystem::temp_directory_path() / std::filesystem::path("fishnet/");
18public:
19 static std::optional<TemporaryDirectory> load(size_t id) noexcept;
20 static bool setTmpPrefix(const std::filesystem::path & prefix)noexcept;
21 static const std::filesystem::path & getTmpPrefix() noexcept;
22
24 operator const std::filesystem::path & () const noexcept;
25 const std::filesystem::path & get() const noexcept;
26 size_t id() const noexcept;
27 void clear() const noexcept;
28 bool init() const noexcept;
29};
30
32public:
33 static std::optional<AutomaticTemporaryDirectory> load(size_t id) noexcept;
35};
36}
Definition TemporaryDirectiory.h:31
static std::optional< AutomaticTemporaryDirectory > load(size_t id) noexcept
Definition TemporaryDirectory.cpp:68
~AutomaticTemporaryDirectory()
Definition TemporaryDirectory.cpp:72
Creates an empty temporary directory at "/tmp/fishnet/{id}/", cleaned by OS or explicitly via Tempora...
Definition TemporaryDirectiory.h:10
static std::optional< TemporaryDirectory > load(size_t id) noexcept
Definition TemporaryDirectory.cpp:22
bool init() const noexcept
Definition TemporaryDirectory.cpp:61
static const std::filesystem::path & getTmpPrefix() noexcept
Definition TemporaryDirectory.cpp:36
size_t id() const noexcept
Definition TemporaryDirectory.cpp:52
static bool setTmpPrefix(const std::filesystem::path &prefix) noexcept
Definition TemporaryDirectory.cpp:29
void clear() const noexcept
Definition TemporaryDirectory.cpp:56
const std::filesystem::path & get() const noexcept
Definition TemporaryDirectory.cpp:48
TemporaryDirectory()
Definition TemporaryDirectory.cpp:40
Definition AlternativeKeyMap.hpp:4