Files
FlaxEngine/Source/Engine/Platform/Apple/AppleFileSystem.cpp
2025-07-03 17:46:31 +03:00

54 lines
1.4 KiB
C++

// Copyright (c) Wojciech Figat. All rights reserved.
#if PLATFORM_MAC || PLATFORM_IOS
#include "AppleFileSystem.h"
#include "AppleUtils.h"
#include "Engine/Platform/File.h"
#include "Engine/Core/Types/String.h"
#include "Engine/Core/Types/StringView.h"
#include "Engine/Core/Types/TimeSpan.h"
#include "Engine/Core/Collections/Array.h"
#include "Engine/Core/Math/Math.h"
#include "Engine/Core/Log.h"
#include "Engine/Utilities/StringConverter.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <cerrno>
#include <dirent.h>
#include <string.h>
#include <stdlib.h>
#include <fcntl.h>
void AppleFileSystem::GetSpecialFolderPath(const SpecialFolder type, String& result)
{
String home;
Platform::GetEnvironmentVariable(TEXT("HOME"), home);
switch (type)
{
case SpecialFolder::Desktop:
result = home / TEXT("/Desktop");
break;
case SpecialFolder::Documents:
result = home / TEXT("/Documents");
break;
case SpecialFolder::Pictures:
result = home / TEXT("/Pictures");
break;
case SpecialFolder::AppData:
case SpecialFolder::LocalAppData:
result = home / TEXT("/Library/Caches");
break;
case SpecialFolder::ProgramData:
result = home / TEXT("/Library/Application Support");
break;
case SpecialFolder::Temporary:
Platform::GetEnvironmentVariable(TEXT("TMPDIR"), result);
break;
}
}
#endif