void ResourceEngineAndroid::reloadAllTextures() { for (auto & tex : m_textures) { std::string texName = tex.first; // internal, because the image extension has already been added ! auto texPtr = loadImageIntern(texName, tex.second->getAnimationFrames(), false); // we just need the id logging::Info() << "Prev id : " << tex.second->getID() << " newId: " << texPtr->getID(); tex.second->setID(texPtr->getID()); tex.second->setPixelPointer(texPtr->getPixelPointer()); } }
void Image::BitmapData::setPixelColour (const int x, const int y, const Colour& colour) const noexcept { jassert (isPositiveAndBelow (x, width) && isPositiveAndBelow (y, height)); uint8* const pixel = getPixelPointer (x, y); const PixelARGB col (colour.getPixelARGB()); switch (pixelFormat) { case Image::ARGB: ((PixelARGB*) pixel)->set (col); break; case Image::RGB: ((PixelRGB*) pixel)->set (col); break; case Image::SingleChannel: ((PixelAlpha*) pixel)->set (col); break; default: jassertfalse; break; } }
Colour Image::BitmapData::getPixelColour (const int x, const int y) const noexcept { jassert (isPositiveAndBelow (x, width) && isPositiveAndBelow (y, height)); const uint8* const pixel = getPixelPointer (x, y); switch (pixelFormat) { case Image::ARGB: return Colour (((const PixelARGB*) pixel)->getUnpremultipliedARGB()); case Image::RGB: return Colour (((const PixelRGB*) pixel)->getUnpremultipliedARGB()); case Image::SingleChannel: return Colour (((const PixelAlpha*) pixel)->getUnpremultipliedARGB()); default: jassertfalse; break; } return Colour(); }