summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/FileBlob.cpp
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-12-31 19:18:30 -0600
committerRyan Houdek <Sonicadvance1@gmail.com>2013-12-31 19:18:30 -0600
commit1118226f270d2b44d10dd3cebd9f89fd38042680 (patch)
tree9dd80995633c70581443d40f58d6ac35837e0bd4 /Source/Core/DiscIO/FileBlob.cpp
parent8d8b0fc884367bc4d433d698a790ef5badee6957 (diff)
parent16824d5fd17b43b156706bf02a8063b389604766 (diff)
Merge branch 'master' into buffer_storage
Diffstat (limited to 'Source/Core/DiscIO/FileBlob.cpp')
-rw-r--r--Source/Core/DiscIO/FileBlob.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/Source/Core/DiscIO/FileBlob.cpp b/Source/Core/DiscIO/FileBlob.cpp
new file mode 100644
index 0000000000..42ea73c78d
--- /dev/null
+++ b/Source/Core/DiscIO/FileBlob.cpp
@@ -0,0 +1,31 @@
+// Copyright 2013 Dolphin Emulator Project
+// Licensed under GPLv2
+// Refer to the license.txt file included.
+
+#include "FileBlob.h"
+
+namespace DiscIO
+{
+
+PlainFileReader::PlainFileReader(std::FILE* file)
+ : m_file(file)
+{
+ m_size = m_file.GetSize();
+}
+
+PlainFileReader* PlainFileReader::Create(const char* filename)
+{
+ File::IOFile f(filename, "rb");
+ if (f)
+ return new PlainFileReader(f.ReleaseHandle());
+ else
+ return NULL;
+}
+
+bool PlainFileReader::Read(u64 offset, u64 nbytes, u8* out_ptr)
+{
+ m_file.Seek(offset, SEEK_SET);
+ return m_file.ReadBytes(out_ptr, nbytes);
+}
+
+} // namespace