git-svn-id: https://profuse.googlecode.com/svn/branches/v2@249 aa027e90-d47c-11dd-86d7-074df07e0730

This commit is contained in:
ksherlock 2010-05-21 16:12:55 +00:00
parent c901f55b50
commit ca431e43f9
2 changed files with 16 additions and 0 deletions

View File

@ -99,6 +99,7 @@ public:
Pascal::Date lastBoot() const { return _lastBoot; } Pascal::Date lastBoot() const { return _lastBoot; }
FileEntry *fileAtIndex(unsigned i) const; FileEntry *fileAtIndex(unsigned i) const;
FileEntry *fileByName(const char *name) const;
void addChild(FileEntry *child, unsigned blocks); void addChild(FileEntry *child, unsigned blocks);
@ -113,6 +114,7 @@ public:
void sync(); void sync();
protected: protected:
virtual void writeDirectoryEntry(LittleEndian::IOBuffer *); virtual void writeDirectoryEntry(LittleEndian::IOBuffer *);

View File

@ -160,6 +160,7 @@ VolumeEntry::VolumeEntry(Device::BlockDevice *device)
VolumeEntry::~VolumeEntry() VolumeEntry::~VolumeEntry()
{ {
std::vector<FileEntry *>::iterator iter; std::vector<FileEntry *>::iterator iter;
for(iter = _files.begin(); iter != _files.end(); ++iter) for(iter = _files.begin(); iter != _files.end(); ++iter)
{ {
@ -197,6 +198,19 @@ FileEntry *VolumeEntry::fileAtIndex(unsigned i) const
return i < _files.size() ? _files[i] : NULL; return i < _files.size() ? _files[i] : NULL;
} }
FileEntry *VolumeEntry::fileByName(const char *name) const
{
std::vector<FileEntry *>::const_iterator iter;
for(iter = _files.begin(); iter != _files.end(); ++iter)
{
FileEntry *e = *iter;
if (::strcasecmp(name, e->name()) == 0) return e;
}
return NULL;
}
void *VolumeEntry::loadBlock(unsigned block) void *VolumeEntry::loadBlock(unsigned block)