Files
Work/image/IMRESDIR.CPP
2024-08-07 09:16:27 -04:00

25 lines
804 B
C++

#include <image/imresdir.hpp>
#include <image/direntry.hpp>
#include <common/pview.hpp>
#include <common/assert.hpp>
ImageResourceDirectoryEntry &ImageResourceDirectory::operator[](UINT itemIndex)
{
assert(itemIndex<mImageResourceDirectoryEntries.size());
return mImageResourceDirectoryEntries[itemIndex];
}
void ImageResourceDirectory::read(DWORD resBase,DWORD deltaOffset,PureViewOfFile &pureView)
{
DWORD entryCount;
clear();
pureView.read((char*)&((IMAGE_RESOURCE_DIRECTORY&)*this),sizeof(IMAGE_RESOURCE_DIRECTORY));
entryCount=entries();
for(int entryIndex=0;entryIndex<entryCount;entryIndex++)
{
mImageResourceDirectoryEntries.insert(&ImageResourceDirectoryEntry());
mImageResourceDirectoryEntries[mImageResourceDirectoryEntries.size()-1].read(resBase,deltaOffset,pureView);
}
}