mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Started Work on File System Viewer. It isn't very pretty yet
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@570 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -159,8 +159,17 @@ void CFileSystemGCWii::GetStringFromOffset(u64 _Offset, char* Filename) const
|
||||
m_rVolume.Read(_Offset, 255, (u8*)Filename);
|
||||
}
|
||||
|
||||
size_t CFileSystemGCWii::GetFileList(std::vector<SFileInfo> *_rFilenames)
|
||||
{
|
||||
(*_rFilenames).resize(m_FileInfoVector.size());
|
||||
for (size_t i = 0; i < m_FileInfoVector.size(); i++)
|
||||
{
|
||||
(*_rFilenames)[i] = m_FileInfoVector[i];
|
||||
}
|
||||
return m_FileInfoVector.size();
|
||||
}
|
||||
|
||||
const CFileSystemGCWii::SFileInfo*
|
||||
const SFileInfo*
|
||||
CFileSystemGCWii::FindFileInfo(const char* _rFullPath) const
|
||||
{
|
||||
for (size_t i = 0; i < m_FileInfoVector.size(); i++)
|
||||
|
@ -48,17 +48,6 @@ class CFileSystemGCWii
|
||||
|
||||
private:
|
||||
|
||||
// file info of an FST entry
|
||||
struct SFileInfo
|
||||
{
|
||||
u32 m_NameOffset;
|
||||
u64 m_Offset;
|
||||
u32 m_FileSize;
|
||||
char m_FullPath[512];
|
||||
|
||||
bool IsDirectory() {return((m_NameOffset& 0xFF000000) != 0 ? true : false);}
|
||||
};
|
||||
|
||||
typedef std::vector<SFileInfo>CFileInfoVector;
|
||||
CFileInfoVector m_FileInfoVector;
|
||||
|
||||
@ -68,6 +57,8 @@ class CFileSystemGCWii
|
||||
|
||||
u32 Read32(u64 _Offset) const;
|
||||
|
||||
virtual size_t GetFileList(std::vector<SFileInfo> *_rFilenames);
|
||||
|
||||
void GetStringFromOffset(u64 _Offset, char* Filename) const;
|
||||
|
||||
const SFileInfo* FindFileInfo(const char* _rFullPath) const;
|
||||
|
@ -33,7 +33,7 @@ class IFileSystem
|
||||
virtual bool IsInitialized() = 0;
|
||||
|
||||
|
||||
// virtual size_t GetFileList(std::vector<std::string&> _rFilenames) = 0;
|
||||
virtual size_t GetFileList(std::vector<SFileInfo> *_rFilenames) = 0;
|
||||
|
||||
virtual size_t GetFileSize(const char* _rFullPath) = 0;
|
||||
|
||||
|
@ -19,9 +19,20 @@
|
||||
#define _VOLUME_H
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "Common.h"
|
||||
|
||||
// file info of an FST entry
|
||||
struct SFileInfo
|
||||
{
|
||||
u32 m_NameOffset;
|
||||
u64 m_Offset;
|
||||
u32 m_FileSize;
|
||||
char m_FullPath[512];
|
||||
|
||||
bool IsDirectory() {return((m_NameOffset& 0xFF000000) != 0 ? true : false);}
|
||||
};
|
||||
namespace DiscIO
|
||||
{
|
||||
class IVolume
|
||||
|
Reference in New Issue
Block a user