/usr/include/dvbpsi/dr_a1.h is in libdvbpsi-dev 1.3.0-4.
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 | /*
Copyright (C) 2012 Yonathan Yusim
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
dr_a1.h
Service Location Descriptor.
*/
/*!
* \file dr_a1.h
* \author Yonathan Yusim
* \brief Decode Service Location Descriptor.
*/
#ifndef _DVBPSI_DR_A1_H_
#define _DVBPSI_DR_A1_H_
#ifdef __cplusplus
extern "C"
{
#endif
/*****************************************************************************
* dvbpsi_service_location_element_s
*****************************************************************************/
/*!
* \struct dvbpsi_service_location_element_s
* \brief "service location element" structure
*
* This structure is used to store a decoded server location element.
*/
/*!
* \typedef struct dvbpsi_service_location_element_s dvbpsi_service_location_element_t
* \brief dvbpsi_service_location_element_t typedefinition.
*/
typedef struct dvbpsi_service_location_element_s
{
uint8_t i_stream_type; /*!< service stream type */
uint16_t i_elementary_pid; /*!< PID of elementary stream */
char i_iso_639_code[3]; /*!< ISO 936 language code */
} dvbpsi_service_location_element_t;
/*****************************************************************************
* dvbpsi_service_location_dr_s
*****************************************************************************/
/*!
* \struct dvbpsi_service_location_dr_s
* \brief "service" descriptor structure.
*
* This structure is used to store a decoded "service location"
* descriptor.
*/
/*!
* \typedef struct dvbpsi_service_location_dr_s dvbpsi_service_location_dr_t
* \brief dvbpsi_service_location_dr_t type definition.
*/
typedef struct dvbpsi_service_location_dr_s
{
uint16_t i_pcr_pid; /*!< PCR_PID */
uint8_t i_number_elements; /*!< number of elements used for this service */
dvbpsi_service_location_element_t elements[0xff]; /*!< service location elements array */
} dvbpsi_service_location_dr_t;
/*****************************************************************************
* dvbpsi_DecodeServiceLocationDr
*****************************************************************************/
/*!
* \fn dvbpsi_service_location_dr_t * dvbpsi_DecodeServiceLocationDr(
dvbpsi_descriptor_t * p_descriptor)
* \brief "service location" descriptor decoder.
* \param p_descriptor pointer to the descriptor structure
* \return a pointer to a new "service" descriptor structure
* which contains the decoded data.
*/
dvbpsi_service_location_dr_t
*dvbpsi_DecodeServiceLocationDr (dvbpsi_descriptor_t * p_descriptor);
/*****************************************************************************
* dvbpsi_GenServiceLocationDr
*****************************************************************************/
/*!
* \fn dvbpsi_descriptor_t * dvbpsi_GenServiceLocationDr(
dvbpsi_service_location_dr_t * p_decoded, bool b_duplicate)
* \brief "service" descriptor generator.
* \param p_decoded pointer to a decoded "service" descriptor
* structure
* \param b_duplicate if true 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_GenServiceLocationDr(
dvbpsi_service_location_dr_t* p_decoded,
bool b_duplicate);
#ifdef __cplusplus
}
#endif
#else
#error "Multiple inclusions of dr_a1.h"
#endif
|