This file is indexed.

/usr/include/dvbpsi/dr_45.h is in libdvbpsi-dev 0.2.2-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
/*****************************************************************************
 * dr_45.h
 * Copyright (C) 2004-2010 VideoLAN
 * $Id$
 *
 * Authors: Jean-Paul Saman <jpsaman@videolan.org>
 *
 * This library 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 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
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 *
 *****************************************************************************/

/*!
 * \file <dr_45.h>
 * \author Jean-Paul Saman <jpsaman at videolan dot org>
 * \brief VBI data descriptor parsing.
 *
 * DVB VBI data descriptor parsing, according to ETSI EN 300 468
 * version 1.7.1 section 6.2.46
 *
 * NOTE: this descriptor is known by tag value 0x45
 */

#ifndef _DVBPSI_DR_45_H_
#define _DVBPSI_DR_45_H_

#ifdef __cplusplus
extern "C" {
#endif

/*****************************************************************************
 * dvbpsi_vbidata_line_t
 *****************************************************************************/
/*!
 * \struct dvbpsi_vbidata_line_t
 * \brief  one VBI Data line structure.
 *
 * This structure is used since vbidata_t structure will contain several
 * of these structures
 */
/*!
 * \typedef struct dvbpsi_vbidata_line_s dvbpsi_vbidata_line_t
 * \brief dvbpsi_vbidata_line_t type definition.
 */
typedef struct dvbpsi_vbidata_line_s
{
  uint8_t   i_parity;      /* 1 bits */
  uint8_t   i_line_offset; /* 5 bits */

} dvbpsi_vbidata_line_t;

/*****************************************************************************
 * dvbpsi_vbidata_t
 *****************************************************************************/
/*!
 * \struct dvbpsi_vbidata_t
 * \brief  one VBI data structure.
 *
 * This structure is used since vbi_descriptor will contain several
 * of these structures
 */
/*!
 * \typedef struct dvbpsi_vbidata_s dvbpsi_vbidata_t
 * \brief dvbpsi_vbidata_t type definition.
 */
typedef struct dvbpsi_vbidata_s
{
  uint8_t               i_data_service_id;  /* 8 bits */
  uint8_t               i_lines;
  dvbpsi_vbidata_line_t p_lines[255];

} dvbpsi_vbidata_t;

/*****************************************************************************
 * dvbpsi_vbi_dr_t
 *****************************************************************************/
/*!
 * \struct dvbpsi_vbi_dr_s
 * \brief "teletext" descriptor structure.
 *
 * This structure is used to store a decoded "VBI data"
 * descriptor. (ETSI EN 300 468 version 1.7.1 section 6.2.46).
 */
/*!
 * \typedef struct dvbpsi_vbi_dr_s dvbpsi_vbi_dr_t
 * \brief dvbpsi_vbi_dr_t type definition.
 */
typedef struct dvbpsi_vbi_dr_s
{
  uint8_t          i_services_number;
  dvbpsi_vbidata_t p_services[85];

} dvbpsi_vbi_dr_t;


/*****************************************************************************
 * dvbpsi_DecodeVBIDataDr
 *****************************************************************************/
/*!
 * \fn dvbpsi_vbi_dr_t * dvbpsi_DecodeVBIDataDr(
                                        dvbpsi_descriptor_t * p_descriptor)
 * \brief "VBI data" descriptor decoder.
 * \param p_descriptor pointer to the descriptor structure
 * \return a pointer to a new "VBI data" descriptor structure
 * which contains the decoded data.
 */
dvbpsi_vbi_dr_t* dvbpsi_DecodeVBIDataDr(
                                        dvbpsi_descriptor_t * p_descriptor);


/*****************************************************************************
 * dvbpsi_GenVBIDataDr
 *****************************************************************************/
/*!
 * \fn dvbpsi_descriptor_t * dvbpsi_GenVBIDataDr(
                        dvbpsi_vbi_dr_t * p_decoded, int b_duplicate)
 * \brief "VBI data" descriptor generator.
 * \param p_decoded pointer to a decoded "VBI data" descriptor
 * structure
 * \param b_duplicate if non zero then duplicate the p_decoded structure into
 * the descriptor
 * \return a pointer to a new descriptor structure which contains encoded data.
 */
dvbpsi_descriptor_t * dvbpsi_GenVBIDataDr(
                                        dvbpsi_vbi_dr_t * p_decoded,
                                        int b_duplicate);

#ifdef __cplusplus
};
#endif

#else
#error "Multiple inclusions of dr_45.h"
#endif