File indexing completed on 2024-05-05 16:28:10
0001 /* SPDX-FileCopyrightText: 2003-2019 The KPhotoAlbum Development Team 0002 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 #include "ImageDecoder.h" 0006 0007 #include <kpabase/FileName.h> 0008 0009 QList<ImageManager::ImageDecoder *> *ImageManager::ImageDecoder::decoders() 0010 { 0011 static QList<ImageDecoder *> s_decoders; 0012 return &s_decoders; 0013 } 0014 0015 ImageManager::ImageDecoder::ImageDecoder() 0016 { 0017 decoders()->append(this); 0018 } 0019 0020 ImageManager::ImageDecoder::~ImageDecoder() 0021 { 0022 decoders()->removeOne(this); 0023 } 0024 0025 bool ImageManager::ImageDecoder::decode(QImage *img, ImageRequest *request, QSize *fullSize, int dim) 0026 { 0027 for (ImageDecoder *decoder : *decoders()) { 0028 if (decoder->_decode(img, request, fullSize, dim)) 0029 return true; 0030 } 0031 return false; 0032 } 0033 0034 bool ImageManager::ImageDecoder::mightDecode(const DB::FileName &imageFile) 0035 { 0036 for (ImageDecoder *decoder : *decoders()) { 0037 if (decoder->_mightDecode(imageFile)) 0038 return true; 0039 } 0040 return false; 0041 } 0042 // vi:expandtab:tabstop=4 shiftwidth=4: