"Fossies" - the Fresh Open Source Software Archive

Member "digikam-6.3.0/core/utilities/maintenance/fingerprintsgenerator.h" (4 Sep 2019, 1786 Bytes) of package /linux/misc/digikam-6.3.0.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "fingerprintsgenerator.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 6.2.0_vs_6.3.0.

    1 /* ============================================================
    2  *
    3  * This file is a part of digiKam project
    4  * https://www.digikam.org
    5  *
    6  * Date        : 2008-05-16
    7  * Description : finger-prints generator
    8  *
    9  * Copyright (C) 2008-2019 by Gilles Caulier <caulier dot gilles at gmail dot com>
   10  *
   11  * This program is free software; you can redistribute it
   12  * and/or modify it under the terms of the GNU General
   13  * Public License as published by the Free Software Foundation;
   14  * either version 2, or (at your option)
   15  * any later version.
   16  *
   17  * This program is distributed in the hope that it will be useful,
   18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
   19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   20  * GNU General Public License for more details.
   21  *
   22  * ============================================================ */
   23 
   24 #ifndef DIGIKAM_FINGERPRINTS_GENERATOR_H
   25 #define DIGIKAM_FINGERPRINTS_GENERATOR_H
   26 
   27 // Qt includes
   28 
   29 #include <QObject>
   30 
   31 // Local includes
   32 
   33 #include "album.h"
   34 #include "maintenancetool.h"
   35 
   36 class QImage;
   37 
   38 namespace Digikam
   39 {
   40 
   41 class FingerPrintsGenerator : public MaintenanceTool
   42 {
   43     Q_OBJECT
   44 
   45 public:
   46 
   47     /** Constructor using AlbumList as argument. If list is empty, whole Albums collection is processed.
   48      */
   49     explicit FingerPrintsGenerator(const bool rebuildAll, const AlbumList& list=AlbumList(), ProgressItem* const parent = nullptr);
   50     ~FingerPrintsGenerator();
   51 
   52     void setUseMultiCoreCPU(bool b) override;
   53 
   54 private:
   55 
   56     void processOne();
   57 
   58 private Q_SLOTS:
   59 
   60     void slotStart() override;
   61     void slotDone() override;
   62     void slotCancel() override;
   63     void slotAdvance(const QImage&);
   64 
   65 private:
   66 
   67     class Private;
   68     Private* const d;
   69 };
   70 
   71 } // namespace Digikam
   72 
   73 #endif // DIGIKAM_FINGERPRINTS_GENERATOR_H