/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Command line was: qdbusxml2cpp -m -a anythingadaptor -i /build/deepin-anything/src/deepin-anything/src/server/include/core/base_event_handler.h -l base_event_handler /build/deepin-anything/src/build/src/server/com.deepin.Anything.xml
 *
 * qdbusxml2cpp is Copyright (C) 2023 The Qt Company Ltd.
 *
 * This is an auto-generated file.
 * This file may have been hand-edited. Look for HAND-EDIT comments
 * before re-generating it.
 */

#ifndef ANYTHINGADAPTOR_H
#define ANYTHINGADAPTOR_H

#include <QtCore/QObject>
#include <QtDBus/QtDBus>
#include "/build/deepin-anything/src/deepin-anything/src/server/include/core/base_event_handler.h"
QT_BEGIN_NAMESPACE
class QByteArray;
template<class T> class QList;
template<class Key, class Value> class QMap;
class QString;
class QStringList;
class QVariant;
QT_END_NAMESPACE

/*
 * Adaptor class for interface com.deepin.anything
 */
class AnythingAdaptor: public QDBusAbstractAdaptor
{
    Q_OBJECT
    Q_CLASSINFO("D-Bus Interface", "com.deepin.anything")
    Q_CLASSINFO("D-Bus Introspection", ""
"  <interface name=\"com.deepin.anything\">\n"
"    <property access=\"readwrite\" type=\"b\" name=\"autoIndexInternal\"/>\n"
"    <property access=\"readwrite\" type=\"b\" name=\"autoIndexExternal\"/>\n"
"    <signal name=\"autoIndexInternalChanged\">\n"
"      <arg direction=\"out\" type=\"b\" name=\"autoIndexInternal\"/>\n"
"    </signal>\n"
"    <signal name=\"autoIndexExternalChanged\">\n"
"      <arg direction=\"out\" type=\"b\" name=\"autoIndexExternal\"/>\n"
"    </signal>\n"
"    <signal name=\"asyncSearchCompleted\">\n"
"      <arg direction=\"out\" type=\"as\" name=\"results\"/>\n"
"    </signal>\n"
"    <method name=\"search\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keywords\"/>\n"
"      <arg direction=\"in\" type=\"i\" name=\"offset\"/>\n"
"      <arg direction=\"in\" type=\"i\" name=\"max_count\"/>\n"
"    </method>\n"
"    <method name=\"search\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keywords\"/>\n"
"    </method>\n"
"    <method name=\"search\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keywords\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"type\"/>\n"
"    </method>\n"
"    <method name=\"search\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keywords\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"after\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"before\"/>\n"
"    </method>\n"
"    <method name=\"traverse_directory\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"    </method>\n"
"    <method name=\"removePath\">\n"
"      <arg direction=\"out\" type=\"b\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"fullPath\"/>\n"
"    </method>\n"
"    <method name=\"hasLFT\">\n"
"      <arg direction=\"out\" type=\"b\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"    </method>\n"
"    <method name=\"hasLFTSubdirectories\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"    </method>\n"
"    <method name=\"addPath\">\n"
"      <arg direction=\"in\" type=\"s\" name=\"fullPath\"/>\n"
"    </method>\n"
"    <method name=\"index_files_in_directory\">\n"
"      <arg direction=\"in\" type=\"s\" name=\"directory_path\"/>\n"
"    </method>\n"
"    <method name=\"delay_indexing\">\n"
"      <arg direction=\"in\" type=\"b\" name=\"delay\"/>\n"
"    </method>\n"
"    <method name=\"cache_directory\">\n"
"      <arg direction=\"out\" type=\"s\"/>\n"
"    </method>\n"
"    <method name=\"search\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"i\" name=\"maxCount\"/>\n"
"      <arg direction=\"in\" type=\"x\" name=\"icase\"/>\n"
"      <arg direction=\"in\" type=\"u\" name=\"startOffset\"/>\n"
"      <arg direction=\"in\" type=\"u\" name=\"endOffset\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keyword\"/>\n"
"      <arg direction=\"in\" type=\"b\" name=\"useRegExp\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"startOffsetReturn\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"endOffsetReturn\"/>\n"
"    </method>\n"
"    <method name=\"parallelsearch\">\n"
"      <arg direction=\"out\" type=\"as\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"path\"/>\n"
"      <arg direction=\"in\" type=\"u\" name=\"startOffset\"/>\n"
"      <arg direction=\"in\" type=\"u\" name=\"endOffset\"/>\n"
"      <arg direction=\"in\" type=\"s\" name=\"keyword\"/>\n"
"      <arg direction=\"in\" type=\"as\" name=\"rules\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"startOffsetReturn\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"endOffsetReturn\"/>\n"
"    </method>\n"
"    <method name=\"async_search\">\n"
"      <arg direction=\"in\" type=\"s\" name=\"keywords\"/>\n"
"      <annotation value=\"true\" name=\"org.freedesktop.DBus.Method.NoReply\"/>\n"
"    </method>\n"
"  </interface>\n"
        "")
public:
    AnythingAdaptor(base_event_handler *parent);
    virtual ~AnythingAdaptor();

    inline base_event_handler *parent() const
    { return static_cast<base_event_handler *>(QObject::parent()); }

public: // PROPERTIES
    Q_PROPERTY(bool autoIndexExternal READ autoIndexExternal WRITE setAutoIndexExternal)
    bool autoIndexExternal() const;
    void setAutoIndexExternal(bool value);

    Q_PROPERTY(bool autoIndexInternal READ autoIndexInternal WRITE setAutoIndexInternal)
    bool autoIndexInternal() const;
    void setAutoIndexInternal(bool value);

public Q_SLOTS: // METHODS
    void addPath(const QString &fullPath);
    Q_NOREPLY void async_search(const QString &keywords);
    QString cache_directory();
    void delay_indexing(bool delay);
    bool hasLFT(const QString &path);
    QStringList hasLFTSubdirectories(const QString &path);
    void index_files_in_directory(const QString &directory_path);
    QStringList parallelsearch(const QString &path, uint startOffset, uint endOffset, const QString &keyword, const QStringList &rules, uint &startOffsetReturn, uint &endOffsetReturn);
    bool removePath(const QString &fullPath);
    QStringList search(int maxCount, qlonglong icase, uint startOffset, uint endOffset, const QString &path, const QString &keyword, bool useRegExp, uint &startOffsetReturn, uint &endOffsetReturn);
    QStringList search(const QString &path, const QString &keywords, const QString &after, const QString &before);
    QStringList search(const QString &path, const QString &keywords, const QString &type);
    QStringList search(const QString &path, const QString &keywords);
    QStringList search(const QString &path, const QString &keywords, int offset, int max_count);
    QStringList traverse_directory(const QString &path);
Q_SIGNALS: // SIGNALS
    void asyncSearchCompleted(const QStringList &results);
    void autoIndexExternalChanged(bool autoIndexExternal);
    void autoIndexInternalChanged(bool autoIndexInternal);
};

#endif
