UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ApplePlatformFile.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3/*=============================================================================================
4 ApplePlatformFile.h: Apple platform File functions
5==============================================================================================*/
6
7#pragma once
9
10template <typename FuncType> class TFunctionRef;
11
16{
17protected:
18 virtual FString NormalizeFilename(const TCHAR* Filename);
19 virtual FString NormalizeDirectory(const TCHAR* Directory);
20public:
21 //~ For visibility of overloads we don't override
24
25 virtual bool FileExists(const TCHAR* Filename) override;
26 virtual int64 FileSize(const TCHAR* Filename) override;
27 virtual bool DeleteFile(const TCHAR* Filename) override;
28 virtual bool IsReadOnly(const TCHAR* Filename) override;
29 virtual bool MoveFile(const TCHAR* To, const TCHAR* From) override;
30 virtual bool SetReadOnly(const TCHAR* Filename, bool bNewReadOnlyValue) override;
31
32
33 virtual FDateTime GetTimeStamp(const TCHAR* Filename) override;
34
35 virtual void SetTimeStamp(const TCHAR* Filename, const FDateTime DateTime) override;
36
37 virtual FDateTime GetAccessTimeStamp(const TCHAR* Filename) override;
38 virtual FString GetFilenameOnDisk(const TCHAR* Filename) override;
39
40 virtual ESymlinkResult IsSymlink(const TCHAR* Filename) override;
41
42 virtual IFileHandle* OpenRead(const TCHAR* Filename, bool bAllowWrite = false) override;
43 virtual IFileHandle* OpenWrite(const TCHAR* Filename, bool bAppend = false, bool bAllowRead = false) override;
44 virtual FOpenMappedResult OpenMappedEx(const TCHAR* Filename, EOpenReadFlags OpenOptions = EOpenReadFlags::None, int64 MaximumSize = 0) override;
45 virtual bool DirectoryExists(const TCHAR* Directory) override;
46 virtual bool CreateDirectory(const TCHAR* Directory) override;
47 virtual bool DeleteDirectory(const TCHAR* Directory) override;
48
49 virtual FFileStatData GetStatData(const TCHAR* FilenameOrDirectory) override;
50
51 virtual bool IterateDirectory(const TCHAR* Directory, FDirectoryVisitor& Visitor) override;
52 virtual bool IterateDirectoryStat(const TCHAR* Directory, FDirectoryStatVisitor& Visitor) override;
53
55private:
56 virtual FString ConvertToPlatformPath(const FString& Filename, bool bForWrite, bool bIsPublicWrite) { return Filename; }
57 bool IterateDirectoryCommon(const TCHAR* Directory, const TFunctionRef<bool(struct dirent*)>& Visitor);
58
59 int32 Stat(const TCHAR* Filename, struct stat* OutFileInfo);
60};
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ESymlinkResult
Definition GenericPlatformFile.h:90
EPlatformFileRead
Definition GenericPlatformFile.h:59
EPlatformFileWrite
Definition GenericPlatformFile.h:70
Definition ApplePlatformFile.h:16
Definition GenericPlatformFile.h:117
Definition GenericPlatformFile.h:995
Definition GenericPlatformFile.h:623
Definition GenericPlatformFile.h:576
virtual CORE_API bool CopyFile(const TCHAR *To, const TCHAR *From, EPlatformFileRead ReadFlags=EPlatformFileRead::None, EPlatformFileWrite WriteFlags=EPlatformFileWrite::None)
Definition GenericPlatformFile.cpp:870
virtual CORE_API FFileOpenResult OpenRead(const TCHAR *Filename, EOpenReadFlags Flags)
Definition GenericPlatformFile.cpp:497
virtual IFileHandle * OpenWrite(const TCHAR *Filename, bool bAppend=false, bool bAllowRead=false)=0
virtual FFileStatData GetStatData(const TCHAR *FilenameOrDirectory)=0
virtual bool IterateDirectoryStat(const TCHAR *Directory, FDirectoryStatVisitor &Visitor)=0
virtual bool MoveFile(const TCHAR *To, const TCHAR *From)=0
virtual ESymlinkResult IsSymlink(const TCHAR *Filename)
Definition GenericPlatformFile.h:469
virtual bool IterateDirectory(const TCHAR *Directory, FDirectoryVisitor &Visitor)=0
virtual bool IsReadOnly(const TCHAR *Filename)=0
virtual bool DeleteDirectory(const TCHAR *Directory)=0
virtual void SetTimeStamp(const TCHAR *Filename, FDateTime DateTime)=0
virtual bool DirectoryExists(const TCHAR *Directory)=0
virtual bool DeleteFile(const TCHAR *Filename)=0
virtual bool SetReadOnly(const TCHAR *Filename, bool bNewReadOnlyValue)=0
virtual bool FileExists(const TCHAR *Filename)=0
virtual int64 FileSize(const TCHAR *Filename)=0
virtual bool CreateDirectory(const TCHAR *Directory)=0
EOpenReadFlags
Definition GenericPlatformFile.h:496
virtual FString GetFilenameOnDisk(const TCHAR *Filename)=0
virtual CORE_API FOpenMappedResult OpenMappedEx(const TCHAR *Filename, EOpenReadFlags OpenOptions=EOpenReadFlags::None, int64 MaximumSize=0)
Definition GenericPlatformFile.cpp:551
virtual FDateTime GetTimeStamp(const TCHAR *Filename)=0
virtual FDateTime GetAccessTimeStamp(const TCHAR *Filename)=0
Definition AssetRegistryState.h:50
Definition ValueOrError.h:58
Definition DateTime.h:76
Definition GenericPlatformFile.h:195