Toward first png.
This commit is contained in:
parent
8f97e9b7a1
commit
33369b1775
12 changed files with 190 additions and 102 deletions
|
@ -11,6 +11,8 @@ std::string PngHeader::toString() const
|
|||
sstr << "width: " << mWidth << "\n";
|
||||
sstr << "height: " << mHeight << "\n";
|
||||
sstr << "bitDepth: " << (int)mBitDepth << "\n";
|
||||
sstr << "cached CRC: " << mCachedCrc << "\n";
|
||||
|
||||
sstr << mPngInfo.toString();
|
||||
return sstr.str();
|
||||
}
|
||||
|
@ -66,14 +68,20 @@ void PngHeader::updateData()
|
|||
mData.push_back(static_cast<unsigned char>(mPngInfo.mInterlaceMethod));
|
||||
}
|
||||
|
||||
uint32_t PngHeader::getCrc() const
|
||||
uint32_t PngHeader::getCrc()
|
||||
{
|
||||
CyclicRedundancyChecker crc_check;
|
||||
std::vector<unsigned char> char_data = StringUtils::toBytes(mName);
|
||||
std::copy(mData.begin(), mData.end(), std::back_inserter(char_data));
|
||||
|
||||
auto result = crc_check.doCrc(char_data.data(), char_data.size());
|
||||
return result;
|
||||
for (auto c : char_data)
|
||||
{
|
||||
crc_check.addValue(c);
|
||||
}
|
||||
for (auto entry : mData)
|
||||
{
|
||||
crc_check.addValue(entry);
|
||||
}
|
||||
mCachedCrc = crc_check.getChecksum();
|
||||
return mCachedCrc;
|
||||
}
|
||||
|
||||
void PngHeader::setPngInfo(const PngInfo& info)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue