Add zook's ZenUtils to SVN

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18010 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Maurus Cuelenaere 2008-07-11 15:50:46 +00:00
parent 7c84ede378
commit 14c7f45cda
147 changed files with 44667 additions and 0 deletions

View file

@ -0,0 +1,90 @@
/*
* PeHeader.cpp - Part of the PeLib library.
*
* Copyright (c) 2004 - 2005 Sebastian Porst (webmaster@the-interweb.com)
* All rights reserved.
*
* This software is licensed under the zlib/libpng License.
* For more details see http://www.opensource.org/licenses/zlib-license.php
* or the license information file (license.htm) in the root directory
* of PeLib.
*/
#include "PeLibInc.h"
#include "PeHeader.h"
namespace PeLib
{
template<>
void PeHeaderT<32>::readBaseOfData(InputBuffer& ibBuffer, PELIB_IMAGE_NT_HEADERS<32>& header) const
{
ibBuffer >> header.OptionalHeader.BaseOfData;
}
template<>
void PeHeaderT<64>::readBaseOfData(InputBuffer&, PELIB_IMAGE_NT_HEADERS<64>&) const
{
}
template<>
void PeHeaderT<32>::rebuildBaseOfData(OutputBuffer& obBuffer) const
{
obBuffer << m_inthHeader.OptionalHeader.BaseOfData;
}
template<>
void PeHeaderT<64>::rebuildBaseOfData(OutputBuffer&) const
{
}
template<>
bool PeHeaderT<32>::isValid() const
{
return true;
}
template<>
bool PeHeaderT<64>::isValid() const
{
return true;
}
template<>
bool PeHeaderT<32>::isValid(unsigned int pehf) const
{
/*
if (pehf == NtSignature)
{
return m_inthHeader.Signature == IMAGE_NT_SIGNATURE;
}
else if (pehf == NumberOfSections)
{
return getNumberOfSections() == calcNumberOfSections();
} */
return false;
}
template<>
bool PeHeaderT<64>::isValid(unsigned int pehf) const
{
return false;
}
/**
* @return The BaseOfData value from the PE header.
**/
dword PeHeader32::getBaseOfData() const
{
return m_inthHeader.OptionalHeader.BaseOfData;
}
/**
* Changes the file's BaseOfData.
* @param dwValue New value.
**/
void PeHeader32::setBaseOfData(dword dwValue)
{
m_inthHeader.OptionalHeader.BaseOfData = dwValue;
}
}