/usr/include/KF5/KService/ksycocaentry.h is in libkf5service-dev 5.28.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | /* This file is part of the KDE libraries
* Copyright (C) 1999 Waldo Bastian <bastian@kde.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License version 2 as published by the Free Software Foundation;
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this library; see the file COPYING.LIB. If not, write to
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
**/
#ifndef KSYCOCAENTRY_H
#define KSYCOCAENTRY_H
#include <ksycocatype.h>
#include <kservice_export.h>
#include <QtCore/QDataStream>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QExplicitlySharedDataPointer>
class KSycocaEntryPrivate;
/**
* Base class for all Sycoca entries.
*
* You can't create an instance of KSycocaEntry, but it provides
* the common functionality for servicetypes and services.
*
* @internal
* @see http://techbase.kde.org/Development/Architecture/KDE3/System_Configuration_Cache
*/
class KSERVICE_EXPORT KSycocaEntry : public QSharedData
{
public:
/*
* constructs a invalid KSycocaEntry object
*/
KSycocaEntry();
virtual ~KSycocaEntry();
/**
* Returns true if this sycoca entry is of the given type.
*/
bool isType(KSycocaType t) const;
/**
* internal
*/
KSycocaType sycocaType() const;
typedef QExplicitlySharedDataPointer<KSycocaEntry> Ptr;
typedef QList<Ptr> List;
/**
* @return the name of this entry
*/
QString name() const;
/**
* @return the path of this entry
* The path can be absolute or relative.
* The corresponding factory should know relative to what.
*/
QString entryPath() const;
/**
* @return the unique ID for this entry
* In practice, this is storageId() for KService and name() for everything else.
* \since 4.2.1
*/
QString storageId() const;
/**
* @return true if valid
*/
bool isValid() const;
/**
* @return true if deleted
*/
bool isDeleted() const;
/**
* Returns the requested property. Some often used properties
* have convenience access functions like exec(),
* serviceTypes etc.
*
* @param name the name of the property
* @return the property, or invalid if not found
*/
QVariant property(const QString &name) const;
/**
* Returns the list of all properties that this service can have.
* That means, that some of these properties may be empty.
* @return the list of supported properties
*/
QStringList propertyNames() const;
/**
* Sets whether or not this service is deleted
*/
void setDeleted(bool deleted);
/*
* @returns true, if this is a separator
*/
bool isSeparator() const;
protected:
KSycocaEntry(KSycocaEntryPrivate &d);
KSycocaEntryPrivate *d_ptr;
private:
// All these need access to offset()
friend class KSycocaFactory;
friend class KBuildServiceFactory;
friend class KMimeTypeTrader;
friend class KServiceTypeTrader;
friend class KService;
friend class KSycocaDict;
friend class KSycocaDictTest;
/**
* @internal
* @return the position of the entry in the sycoca file
*/
int offset() const;
Q_DISABLE_COPY(KSycocaEntry)
Q_DECLARE_PRIVATE(KSycocaEntry)
};
#endif
|