2017-03-02 09:28:07 +00:00
|
|
|
#pragma once
|
|
|
|
|
2018-03-31 03:16:33 +00:00
|
|
|
#include <optional>
|
|
|
|
#include <string_view>
|
2017-08-16 05:39:50 +00:00
|
|
|
|
2017-03-02 09:28:07 +00:00
|
|
|
#include <memory>
|
|
|
|
#include <string>
|
2017-03-29 06:33:38 +00:00
|
|
|
#include <vector>
|
2017-03-02 09:28:07 +00:00
|
|
|
|
2017-03-25 20:27:28 +00:00
|
|
|
void PlatformInit();
|
2017-04-18 02:59:48 +00:00
|
|
|
|
2017-12-14 22:35:21 +00:00
|
|
|
std::string GetExecutablePath();
|
2017-03-28 01:47:12 +00:00
|
|
|
std::string NormalizePath(const std::string& path);
|
2017-04-18 02:59:48 +00:00
|
|
|
|
2017-04-16 22:48:54 +00:00
|
|
|
void SetCurrentThreadName(const std::string& thread_name);
|
2017-03-29 06:33:38 +00:00
|
|
|
|
2018-03-31 03:16:33 +00:00
|
|
|
std::optional<int64_t> GetLastModificationTime(const std::string& absolute_path);
|
2017-04-20 04:57:44 +00:00
|
|
|
|
2017-08-17 18:02:47 +00:00
|
|
|
// Free any unused memory and return it to the system.
|
|
|
|
void FreeUnusedMemory();
|
2017-12-22 17:07:21 +00:00
|
|
|
|
2018-02-20 00:19:57 +00:00
|
|
|
// Stop self and wait for SIGCONT.
|
2018-01-07 07:42:42 +00:00
|
|
|
void TraceMe();
|
2018-02-20 00:19:57 +00:00
|
|
|
|
|
|
|
std::string GetExternalCommandOutput(const std::vector<std::string>& command,
|
|
|
|
std::string_view input);
|