Mercurial > love-experiments
diff src/modules/image/CompressedData.cpp @ 1422:377f9dad7a2d image-CompressedData
Replaced the devil love.image module with love.image.magpie, which can decide which image library to use in a similar manner to love.sound.lullaby. Some rough edges still exist.
love.filesystem.newFileData now accepts filepaths and File objects.
| author | Alex Szpakowski <slime73@gmail.com> |
|---|---|
| date | Sun, 07 Apr 2013 17:18:34 -0300 |
| parents | aa603d1b03bc |
| children | a5e46f43e3d6 |
line wrap: on
line diff
--- a/src/modules/image/CompressedData.cpp Fri Apr 05 18:55:44 2013 -0300 +++ b/src/modules/image/CompressedData.cpp Sun Apr 07 17:18:34 2013 -0300 @@ -26,22 +26,20 @@ { CompressedData::CompressedData() - : type(TYPE_MAX_ENUM) + : type(TYPE_UNKNOWN) { - } CompressedData::~CompressedData() { - } int CompressedData::getSize() const { - size_t totalsize = sizeof(MipmapInfo) * dataMipmapInfo.size(); + size_t totalsize = sizeof(SubImage) * dataImages.size(); - for (size_t i = 0; i < dataMipmapInfo.size(); i++) - totalsize += dataMipmapInfo[i].size; + for (size_t i = 0; i < dataImages.size(); i++) + totalsize += dataImages[i].size; return totalsize; } @@ -49,40 +47,40 @@ void *CompressedData::getData() const { // ? - return (void *) &dataMipmapInfo[0].data[0]; + return (void *) &dataImages[0].data[0]; } int CompressedData::getNumMipmaps() const { - return dataMipmapInfo.size(); + return dataImages.size(); } int CompressedData::getSize(int miplevel) const { checkMipmapLevelExists(miplevel); - return dataMipmapInfo[miplevel].size; + return dataImages[miplevel].size; } void *CompressedData::getData(int miplevel) const { checkMipmapLevelExists(miplevel); - return (void *) &dataMipmapInfo[miplevel].data[0]; + return (void *) &dataImages[miplevel].data[0]; } int CompressedData::getWidth(int miplevel) const { checkMipmapLevelExists(miplevel); - return dataMipmapInfo[miplevel].width; + return dataImages[miplevel].width; } int CompressedData::getHeight(int miplevel) const { checkMipmapLevelExists(miplevel); - return dataMipmapInfo[miplevel].height; + return dataImages[miplevel].height; } CompressedData::TextureType CompressedData::getType() const @@ -92,7 +90,7 @@ void CompressedData::checkMipmapLevelExists(int miplevel) const { - if (miplevel < 0 || miplevel >= dataMipmapInfo.size()) + if (miplevel < 0 || miplevel >= dataImages.size()) throw love::Exception("Mipmap level %d does not exist", miplevel); } @@ -108,11 +106,12 @@ StringMap<CompressedData::TextureType, CompressedData::TYPE_MAX_ENUM>::Entry CompressedData::typeEntries[] = { + {"unknown", CompressedData::TYPE_UNKNOWN}, {"dxt1", CompressedData::TYPE_DXT1}, {"dxt3", CompressedData::TYPE_DXT3}, {"dxt5", CompressedData::TYPE_DXT5}, + {"bc5", CompressedData::TYPE_BC5}, {"bc5s", CompressedData::TYPE_BC5s}, - {"bc5", CompressedData::TYPE_BC5}, {"bc7", CompressedData::TYPE_BC7}, {"bc7srgb", CompressedData::TYPE_BC7srgb}, };
