This file is indexed.

/usr/include/mediascanner-1.0/mediascanner/declarations.h is in libmediascanner-dev 0.3.93+14.04.20131024.1-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
/*
 * This file is part of the Ubuntu TV Media Scanner
 * Copyright (C) 2012-2013 Canonical Ltd.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License version 3 as
 * published by the Free Software Foundation.
 *
 * 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * Contact: Jim Hodapp <jim.hodapp@canonical.com>
 * Authored by: Mathias Hasselmann <mathias@openismus.com>
 */
#ifndef MEDIASCANNER_DECLARATIONS_H
#define MEDIASCANNER_DECLARATIONS_H

// C Standard Library
#include <stdint.h>

// C++ Standard Library
#include <string>

#define NONCOPYABLE(classname) \
    classname(classname const &) = delete; \
    classname& operator=(classname const &) = delete

// Forward declarations of some types to avoid hard dependency on GLib,
// Grilo or Lucene++ to avoid hard dependencies for API users that don't
// use that features. Especially Lucene++ doesn't guarantee source
// compatibility.

typedef struct _GFile GFile;
typedef struct _GKeyFile GKeyFile;
typedef struct _GList GList;
typedef struct _GParamSpec GParamSpec;
typedef struct _GValue GValue;
typedef struct _GVariant GVariant;

typedef struct _GstDiscovererInfo GstDiscovererInfo;
typedef struct _GstDiscovererStreamInfo GstDiscovererStreamInfo;
typedef struct _GstDiscovererAudioInfo GstDiscovererAudioInfo;
typedef struct _GstDiscovererVideoInfo GstDiscovererVideoInfo;

typedef uint32_t GQuark;
typedef unsigned long GType; // NOLINT: runtime/int

typedef uint32_t GrlKeyID;

/*
 * This is horrible, you should never forward declare things
 * in the std namespace (or boost for that matter). Unfortunately
 * old code did this so the only short-to-medium term solution is
 * to do this.
 */
namespace std {

template<typename T> class shared_ptr;
}

namespace boost {

template<typename T> class shared_ptr;

namespace filesystem {

// template<class String, class Traits> class basic_path;
class path;

} // namespace filesystem

namespace locale {

template<typename T> class basic_format;

typedef basic_format<char> format;
typedef basic_format<wchar_t> wformat;

} // namespace locale
} // namespace boost

namespace Lucene {

template<typename> class Collection;

/*
 * These must be boost::shared_ptrs instead of std::shared_ptr
 * because they come from Lucene's headers.
 */
typedef boost::shared_ptr<class Analyzer> AnalyzerPtr;
typedef boost::shared_ptr<class Directory> DirectoryPtr;
typedef boost::shared_ptr<class Document> DocumentPtr;
typedef boost::shared_ptr<class Fieldable> FieldablePtr;
typedef boost::shared_ptr<class IndexReader> IndexReaderPtr;
typedef boost::shared_ptr<class IndexWriter> IndexWriterPtr;
typedef boost::shared_ptr<class Query> QueryPtr;
typedef boost::shared_ptr<class Term> TermPtr;

} // namespace Lucene

namespace mediascanner {
namespace internal {

template<typename T> struct CopyHelper;

} // namespace internal

class CommitPolicy;
class Filter;
class MediaArtDownloader;
class MediaIndex;
class MediaInfo;
class MediaRoot;
class MediaRootManager;
class MetadataResolver;
class RefreshPolicy;
class TaskManager;
class WritableMediaIndex;

template<typename T> class MediaIndexFacade;

template<typename T, typename CopyHelper = internal::CopyHelper<T> >
class Wrapper;

typedef std::shared_ptr<CommitPolicy> CommitPolicyPtr;
typedef std::shared_ptr<MediaArtDownloader> MediaArtDownloaderPtr;
typedef std::shared_ptr<MediaRootManager> MediaRootManagerPtr;
typedef std::shared_ptr<MetadataResolver> MetadataResolverPtr;
typedef std::shared_ptr<TaskManager> TaskManagerPtr;

typedef boost::filesystem::path FileSystemPath;

} // namespace mediascanner

#endif // MEDIASCANNER_DECLARATIONS_H