This commit is contained in:
2025-05-13 02:46:21 +03:00
parent 143e16692e
commit 86914b7fcc
610 changed files with 92343 additions and 2 deletions
+53
View File
@@ -0,0 +1,53 @@
#include "IFSFolder.h"
namespace LifeCore
{
IFSFolder::~IFSFolder(void)
{
for( FolderMap::iterator it = g_folderCollection.begin(); it != g_folderCollection.end(); it++ )
delete it->second;
}
IFSFolder::IFSFolder()
{
}
IFSFolder::IFSFolder(const String& folderName, const String& entryName)
{
this->Name = folderName;
this->EntryName = entryName;
CreateDirectoryA(EntryName.c_str(), NULL);
}
IFolder* IFSFolder::NewFolder(const String& name)
{
IFolder* test;
if(this->GetFolder(name, &test) != SC_OK)
{
IFSFolder* newFolder = new IFSFolder(name, this->EntryName + name + _text("\\"));
newFolder->setParent(this);
newFolder->Provider = this->Provider;
this->AddFolder(newFolder);
return newFolder;
}
else
{
return test;
}
}
IFile* IFSFolder::NewFile(const String& name, int size)
{
IFile* f;
if(this->GetFile(name, &f) != SC_OK)
{
IFSFile* newFile = new IFSFile(this->EntryName + name, size);
newFile->FileName = name;
newFile->Provider = this->Provider;
this->AddFile(newFile);
return newFile;
}
else
{
return f;
}
}
}