MemoryMappedFileStreamFallback.h trio/streams/FileStream.h trio/streams/MemoryMappedFileStream.h trio/streams/StreamStatus.h trio/types/Aliases.h pma/ScopedPtr.h pma/TypeDefs.h cstddef cstdint MemoryMappedFileStream.cpp MemoryMappedFileStreamFallback.cpp trio::MemoryMappedFileStreamFallback trio //CopyrightEpicGames,Inc.AllRightsReserved. #pragmaonce //*INDENT-OFF* #if!defined(TRIO_WINDOWS_FILE_MAPPING_AVAILABLE)&&!defined(TRIO_MMAP_AVAILABLE) #include"trio/streams/FileStream.h" #include"trio/streams/MemoryMappedFileStream.h" #include"trio/streams/StreamStatus.h" #include"trio/types/Aliases.h" #include<pma/ScopedPtr.h> #include<pma/TypeDefs.h> #include<cstddef> #include<cstdint> namespacetrio{ classMemoryMappedFileStreamFallback:publicMemoryMappedFileStream{ public: MemoryMappedFileStreamFallback(constchar*path_,AccessModeaccessMode_,MemoryResource*memRes_); ~MemoryMappedFileStreamFallback(); MemoryMappedFileStreamFallback(constMemoryMappedFileStreamFallback&)=delete; MemoryMappedFileStreamFallback&operator=(constMemoryMappedFileStreamFallback&)=delete; MemoryMappedFileStreamFallback(MemoryMappedFileStreamFallback&&)=delete; MemoryMappedFileStreamFallback&operator=(MemoryMappedFileStreamFallback&&)=delete; voidopen()override; voidclose()override; std::uint64_ttell()override; voidseek(std::uint64_tposition)override; std::uint64_tsize()override; std::size_tread(char*destination,std::size_tsize)override; std::size_tread(Writable*destination,std::size_tsize)override; std::size_twrite(constchar*source,std::size_tsize)override; std::size_twrite(Readable*source,std::size_tsize)override; voidflush()override; voidresize(std::uint64_tsize)override; MemoryResource*getMemoryResource(); private: pma::ScopedPtr<FileStream>stream; MemoryResource*memRes; }; }//namespacetrio #endif //*INDENT-OFF*