rpcsx/rpcs3/Emu/FS/vfsFile.cpp

65 lines
946 B
C++
Raw Normal View History

#include "stdafx.h"
#include "Emu/System.h"
2014-08-26 01:55:37 +02:00
#include "VFS.h"
#include "vfsFile.h"
vfsFile::vfsFile()
: vfsFileBase(nullptr)
, m_stream(nullptr)
{
}
2015-04-19 15:19:24 +02:00
vfsFile::vfsFile(const std::string& path, u32 mode)
: vfsFileBase(nullptr)
, m_stream(nullptr)
{
Open(path, mode);
}
2015-04-19 15:19:24 +02:00
bool vfsFile::Open(const std::string& path, u32 mode)
{
Close();
2014-02-16 16:37:32 +01:00
m_stream.reset(Emu.GetVFS().OpenFile(path, mode));
return m_stream && m_stream->IsOpened();
}
bool vfsFile::Close()
{
m_stream.reset();
2015-04-23 18:58:37 +02:00
return true;
}
2015-04-19 15:19:24 +02:00
u64 vfsFile::GetSize() const
{
return m_stream->GetSize();
}
u64 vfsFile::Write(const void* src, u64 size)
{
return m_stream->Write(src, size);
}
u64 vfsFile::Read(void* dst, u64 size)
{
return m_stream->Read(dst, size);
}
u64 vfsFile::Seek(s64 offset, fsm mode)
{
return m_stream->Seek(offset, mode);
}
u64 vfsFile::Tell() const
{
return m_stream->Tell();
}
bool vfsFile::IsOpened() const
{
2015-04-23 18:58:37 +02:00
return m_stream && m_stream->IsOpened();
}