This file is indexed.

/usr/include/vlc/plugins/vlc_epg.h is in libvlccore-dev 3.0.1-3build1.

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
/*****************************************************************************
 * vlc_epg.h: Electronic Program Guide
 *****************************************************************************
 * Copyright (C) 2007 VLC authors and VideoLAN
 * $Id: f7b9044e7c0aa1af4a44066d73f2ead943fc6a46 $
 *
 * Authors: Laurent Aimar <fenrir@via.ecp.fr>
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2.1 of the License, 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 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, write to the Free Software Foundation,
 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
 *****************************************************************************/

#ifndef VLC_EPG_H
#define VLC_EPG_H 1

/**
 * \file
 * This file defines functions and structures for storing dvb epg information
 */

typedef struct
{
    int64_t  i_start;    /* Interpreted as a value return by time() */
    uint32_t i_duration; /* Duration of the event in second */
    uint16_t i_id;       /* Unique event id withing the event set */

    char    *psz_name;
    char    *psz_short_description;
    char    *psz_description;
    struct               /* Description items in tranmission order */
    {
        char *psz_key;
        char *psz_value;
    } * description_items;
    int i_description_items;

    uint8_t i_rating;   /* Parental control, set to 0 when undefined */
} vlc_epg_event_t;

typedef struct
{
    char            *psz_name;
    uint32_t         i_id;       /* Unique identifier for this table / events (partial sets) */
    uint16_t         i_source_id;/* Channel / Program reference id this epg relates to */
    size_t            i_event;
    vlc_epg_event_t **pp_event;
    bool             b_present;  /* Contains present/following or similar, and sets below */
    const vlc_epg_event_t *p_current; /* NULL, or equal to one of the entries in pp_event */
} vlc_epg_t;

/**
 * Creates a new vlc_epg_event_t*
 *
 * You must call vlc_epg_event_Delete to release the associated resources.
 *
 * \p i_id is the event unique id
 * \p i_start start in epoch time
 * \p i_duration event duration in seconds
 */
VLC_API vlc_epg_event_t * vlc_epg_event_New(uint16_t i_id,
                                            int64_t i_start, uint32_t i_duration);

/**
 * Releases a vlc_epg_event_t*.
 */
VLC_API void vlc_epg_event_Delete(vlc_epg_event_t *p_event);

/**
 * Returns a vlc_epg_event_t * duplicated from \p p_src.
 *
 */
VLC_API vlc_epg_event_t * vlc_epg_event_Duplicate(const vlc_epg_event_t *p_src);

/**
 * It creates a new vlc_epg_t*
 *
 * You must call vlc_epg_Delete to release the associated resource.
 *
 * \p i_id is computed unique id depending on standard (table id, eit number)
 * \p i_source_id is the associated program number
 */
VLC_API vlc_epg_t * vlc_epg_New(uint32_t i_id, uint16_t i_source_id);

/**
 * It releases a vlc_epg_t*.
 */
VLC_API void vlc_epg_Delete(vlc_epg_t *p_epg);

/**
 * It appends a new vlc_epg_event_t to a vlc_epg_t.
 * Takes ownership of \p p_evt or returns false
 *
 * \p p_evt a vlc_epg_event_t * created with vlc_epg_event_New.
 */
VLC_API bool vlc_epg_AddEvent(vlc_epg_t *p_epg, vlc_epg_event_t *p_evt);

/**
 * It set the current event of a vlc_epg_t given a start time
 */
VLC_API void vlc_epg_SetCurrent(vlc_epg_t *p_epg, int64_t i_start);

/**
 * Returns a duplicated \p p_src and its associated events.
 *
 */
VLC_API vlc_epg_t * vlc_epg_Duplicate(const vlc_epg_t *p_src);

#endif