2017-04-01 14:38:52 +02:00
|
|
|
/*****************************************************************************
|
2018-06-15 14:07:34 +02:00
|
|
|
* Copyright (c) 2014-2018 OpenRCT2 developers
|
|
|
|
*
|
|
|
|
* For a complete list of all authors, please refer to contributors.md
|
|
|
|
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
|
|
|
*
|
|
|
|
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
|
|
|
*****************************************************************************/
|
2017-04-01 14:38:52 +02:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2018-06-22 23:04:38 +02:00
|
|
|
#include "../common.h"
|
|
|
|
|
2018-01-07 21:27:30 +01:00
|
|
|
#include <ctime>
|
2017-11-28 21:57:34 +01:00
|
|
|
#include <string>
|
2017-04-01 14:38:52 +02:00
|
|
|
|
2017-11-28 21:57:34 +01:00
|
|
|
enum class SPECIAL_FOLDER
|
|
|
|
{
|
|
|
|
USER_CACHE,
|
|
|
|
USER_CONFIG,
|
|
|
|
USER_DATA,
|
|
|
|
USER_HOME,
|
|
|
|
};
|
|
|
|
|
2017-04-01 14:38:52 +02:00
|
|
|
namespace Platform
|
|
|
|
{
|
2018-06-20 17:28:51 +02:00
|
|
|
uint32_t GetTicks();
|
2018-06-22 23:04:38 +02:00
|
|
|
std::string GetEnvironmentVariable(const std::string& name);
|
2017-11-28 21:57:34 +01:00
|
|
|
std::string GetFolderPath(SPECIAL_FOLDER folder);
|
|
|
|
std::string GetInstallPath();
|
2018-01-21 03:13:32 +01:00
|
|
|
std::string GetDocsPath();
|
2017-12-02 00:48:46 +01:00
|
|
|
std::string GetCurrentExecutablePath();
|
2017-12-01 01:54:03 +01:00
|
|
|
|
|
|
|
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__)) || defined(__FreeBSD__)
|
2018-06-22 23:04:38 +02:00
|
|
|
std::string GetEnvironmentPath(const char* name);
|
2017-12-01 01:54:03 +01:00
|
|
|
std::string GetHomePath();
|
|
|
|
#endif
|
2018-01-07 21:27:30 +01:00
|
|
|
|
|
|
|
std::string FormatShortDate(std::time_t timestamp);
|
|
|
|
std::string FormatTime(std::time_t timestamp);
|
2018-03-12 19:00:35 +01:00
|
|
|
|
2018-05-23 20:42:42 +02:00
|
|
|
#ifdef _WIN32
|
2018-06-20 17:28:51 +02:00
|
|
|
bool IsOSVersionAtLeast(uint32_t major, uint32_t minor, uint32_t build);
|
2018-05-23 20:42:42 +02:00
|
|
|
#endif
|
|
|
|
|
2018-03-12 19:00:35 +01:00
|
|
|
bool IsColourTerminalSupported();
|
2018-05-04 22:40:09 +02:00
|
|
|
} // namespace Platform
|