This file is indexed.

/usr/include/libkipi/imagecollection.h is in libkipi-dev 4:4.13.0-0ubuntu1.

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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
/** ===========================================================
 * @file
 *
 * This file is a part of digiKam project
 * <a href="http://www.digikam.org">http://www.digikam.org</a>
 *
 * @date   2004-02-01
 * @brief  image collection
 *
 * @author Copyright (C) 2004-2012 by Gilles Caulier
 *         <a href="mailto:caulier dot gilles at gmail dot com">caulier dot gilles at gmail dot com</a>
 * @author Copyright (C) 2004-2005 by Renchi Raju
 *         <a href="mailto:renchi dot raju at gmail dot com">renchi dot raju at gmail dot com</a>
 * @author Copyright (C) 2004-2005 by Jesper K. Pedersen
 *         <a href="mailto:blackie at kde dot org">blackie at kde dot org</a>
 * @author Copyright (C) 2004-2005 by Aurelien Gateau
 *         <a href="mailto:aurelien dot gateau at free dot fr">aurelien dot gateau at free dot fr</a>
 *
 * This program is free software; you can redistribute it
 * and/or modify it under the terms of the GNU General
 * Public License as published by the Free Software Foundation;
 * either version 2, or (at your option)
 * any later version.
 *
 * This program 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 General Public License for more details.
 *
 * ============================================================ */

#ifndef KIPI_IMAGECOLLECTION_H
#define KIPI_IMAGECOLLECTION_H

// Qt includes

#include <QtCore/QString>
#include <QtCore/QDateTime>

// KDE includes

#include <kurl.h>

// Local includes

#include "libkipi_export.h"

/** @namespace KIPI */
namespace KIPI
{

class ImageCollectionShared;

/** @class ImageCollection
    Holds info about the collection from KIPI host application.
    NOTE: Plugins should never create an instance of ImageCollection, only the host application should do that.
 */
class LIBKIPI_EXPORT ImageCollection
{

public:

    ImageCollection(ImageCollectionShared* const);
    ImageCollection(const ImageCollection& other);
    ImageCollection();
    ~ImageCollection();

    ImageCollection& operator=(const ImageCollection&);
    bool operator==(const ImageCollection&) const;

    /// Collection properties ---------------------------------------------------------------------------

    /**
     * Returns the name of collection.
     */
    QString    name() const;

    /**
     * Returns the comment for the collection of images or QString::null if that doesn't make any sense.
     * A comment makes sense for an album, but not for a KIPI::Interface::currentSelection().
     */
    QString    comment() const;

    /**
     * Return the category of the image collection. For example in digiKam,
     * a category is a sorting class like 'travels', 'friends', 'monuments', etc.
     */
    QString    category() const;

    /**
     * Returns the Creation date of the image collection. The default implementation
     * return a null date.
     */
    QDate      date() const;

    /**
     * Returns a list of image urls hosted by collection.
     */
    KUrl::List images() const;

    /**
     * Returns the directory for the image collection.
     * The host application may, however, return anything in case this
     * imagecollection is not a directory (check isDirectory()),  or may
     * return the directory of the first image in the collection, the root
     * of the image collection (in case all images has a common root), or
     * even an empty URL.
     */
    KUrl       path() const;

    /**
     * Returns the directory to place images into.
     * This function should only be called if KIPI::Features AcceptNewImages
     * is available.
     *
     * The function may choose to return the directory for the image collection
     * or if images from the collection are not available in a common directory,
     * then instead a common upload directory.
     * In contrast to \ref path, this function must return a valid url.
     *
     * IMPORTANT: uploadRoot() must be a subpath of uploadPath()
     */
    KUrl       uploadPath() const;

    /**
     * When a plugin wants to upload images, it may choose to display an upload widget,
     * which gives the user the possible to show a directory from a tree view.
     *
     * This tree view widget needs to starts at some URL. This function specifies that location.
     * Here are a couble of possible return value different host applications may choose.
     *
     * If all images are stored rooted at some tree (which is the case for KPhotoAlbum), 
     * then this function may return this directory unconditionally.
     * The root directory returned by uploadPath() (which is the default implementation for this method)
     * will be the directory returned by uploadPath().
     * 
     * IMPORTANT: uploadRoot() must be a subpath of uploadPath()
     */
    KUrl       uploadRoot() const;

    /**
     * This fonction return the name of the upload root path used by the
     * the KIPI::UploadWidget. This name can be different for each host
     * app (like "Images" for Kphotoalbum or "My Albums" for digiKam).
     */
    QString    uploadRootName() const;

    /**
     * Returns whether an imagecollection is a physical folder on the filesystem
     * or not. It is important to check this, if your plugin needs to do folder
     * based operations for an image collection.
     */
    bool       isDirectory() const;

    /**
     * Returns true if this Collection is valid
     */
    bool       isValid() const;

private:

    mutable ImageCollectionShared* d;
};

} // namespace KIPI

#endif /* IMAGECOLLECTION_H */