Baloo

app.h
1/*
2 This file is part of the KDE Baloo Project
3 SPDX-FileCopyrightText: 2013 Vishesh Handa <me@vhanda.in>
4
5 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
6*/
7
8#ifndef EXTRACTOR_APP_H
9#define EXTRACTOR_APP_H
10
11#include <QVector>
12#include <QMimeDatabase>
13#include <QSocketNotifier>
14#include <QFile>
15
16#include <KFileMetaData/ExtractorCollection>
17
18#include "database.h"
19#include "extractor/commandpipe.h"
20#include "../fileindexerconfig.h"
21
22class KIdleTime;
23class QString;
24
25namespace Baloo {
26
27class Transaction;
28
29class App : public QObject
30{
32
33public:
34 explicit App(QObject* parent = nullptr);
35
36private Q_SLOTS:
37 void slotNewBatch(const QVector<quint64>& ids);
38 void processNextFile();
39
40private:
41 bool index(Transaction* tr, const QString& filePath, quint64 id);
42
43 QMimeDatabase m_mimeDb;
44
45 KFileMetaData::ExtractorCollection m_extractorCollection;
46
47 FileIndexerConfig m_config;
48
49 QSocketNotifier m_notifyNewData;
50 QFile m_input;
51 QFile m_output;
52 Private::WorkerPipe m_workerPipe;
53
54 KIdleTime* m_idleTime = nullptr;
55 bool m_isBusy = true;
56
57 QVector<quint64> m_ids;
58 Transaction* m_tr;
59};
60
61}
62#endif
Implements storage for docIds without any associated data Instantiated for:
Definition coding.cpp:11
Q_OBJECTQ_OBJECT
Q_SLOTSQ_SLOTS
QObject * parent() const const
QString tr(const char *sourceText, const char *disambiguation, int n)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:20:16 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.