UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IFileSystem.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
9
10namespace uLang
11{
12class IFileSystem : public CSharedMix
13{
14public:
16 {
17 None = 0,
19 };
20
21 virtual ~IFileSystem()
22 {}
23
28 using CFileDirectoryVisitor = TFunction<bool(const char* /*FileName*/, const char* /*DirPath*/, bool /*bIsDirectory*/)>;
29
30 virtual bool IterateDirectory(const char* Directory, bool bRecurse, const CFileDirectoryVisitor& Visitor, bool bIsVisitorThreadSafe = false) = 0;
31
36 using CFileMemAllocator = TFunction<void*(size_t /*NeededByteSize*/)>;
37
38 virtual bool FileRead(const char* FilePath, const CFileMemAllocator& Allocator) = 0;
39 virtual bool FileWrite(const char* FilePath, const char* Output, const size_t ByteSize, const EWriteFlags WriteFlags = EWriteFlags::None) = 0;
40 virtual bool DeleteFile(const char* FilePath) = 0;
41 virtual bool IsFileNewer(const char* FilePath, const char* ComparisonPath) = 0;
42 virtual bool CopyFile(const char* SourcePath, const char* DestinationPath) = 0;
43 virtual bool DoesFileExist(const char* FilePath) = 0;
44 virtual bool GetFilenameOnDisk(const char* FilePath, CUTF8String& OutFilenameOnDisk) = 0;
45 virtual bool CreateDirectory(const char* DirPath) = 0;
46 virtual bool DeleteDirectory(const char* DirPath) = 0;
47 virtual bool DoesDirectoryExist(const char* DirPath) = 0;
48
56 virtual bool FindTempDir(CUTF8String& OutDir) const = 0;
57
66
68
72 virtual bool SetCurrentWorkingDirectory(const char* DirPath)
73 {
74 return false;
75 }
76
77 virtual bool IsReadOnly(const char* Filename) = 0;
78 virtual bool SetReadOnly(const char* Filename, const bool bReadOnly) = 0;
79};
80}
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
Definition SharedPointer.h:28
Definition IFileSystem.h:13
virtual bool DoesDirectoryExist(const char *DirPath)=0
virtual bool FileRead(const char *FilePath, const CFileMemAllocator &Allocator)=0
virtual bool FileWrite(const char *FilePath, const char *Output, const size_t ByteSize, const EWriteFlags WriteFlags=EWriteFlags::None)=0
virtual bool DeleteDirectory(const char *DirPath)=0
virtual bool FindTempDir(CUTF8String &OutDir) const =0
virtual bool DoesFileExist(const char *FilePath)=0
virtual bool GetFilenameOnDisk(const char *FilePath, CUTF8String &OutFilenameOnDisk)=0
virtual bool CopyFile(const char *SourcePath, const char *DestinationPath)=0
virtual ~IFileSystem()
Definition IFileSystem.h:21
virtual bool DeleteFile(const char *FilePath)=0
virtual bool IsReadOnly(const char *Filename)=0
virtual bool SetReadOnly(const char *Filename, const bool bReadOnly)=0
virtual bool SetCurrentWorkingDirectory(const char *DirPath)
Definition IFileSystem.h:72
virtual bool MakeTempFile(CUTF8String &OutFilename)=0
EWriteFlags
Definition IFileSystem.h:16
@ None
Definition IFileSystem.h:17
@ EvenIfReadOnly
Definition IFileSystem.h:18
virtual bool CreateDirectory(const char *DirPath)=0
virtual bool IsFileNewer(const char *FilePath, const char *ComparisonPath)=0
virtual bool GetCurrentWorkingDirectory(CUTF8String &OutWorkingDirectory)=0
virtual bool IterateDirectory(const char *Directory, bool bRecurse, const CFileDirectoryVisitor &Visitor, bool bIsVisitorThreadSafe=false)=0
Definition Function.h:839
Definition VVMEngineEnvironment.h:23