~libv4l/libv4l/dev

« back to all changes in this revision

Viewing changes to lib/include/libdvbv5/desc_service_location.h

  • Committer: Gregor Jasny
  • Date: 2014-10-01 08:14:20 UTC
  • Revision ID: git-v1:d852ba552c0ac76396298621843f5a537a33a7fc
libdvbv5: remove service_location descriptor

CC: Andre Roth <neolynx@gmail.com>
Acked-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Signed-off-by: Gregor Jasny <gjasny@googlemail.com>

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Copyright (c) 2013 - Andre Roth <neolynx@gmail.com>
3
 
 *
4
 
 * This program is free software; you can redistribute it and/or
5
 
 * modify it under the terms of the GNU General Public License
6
 
 * as published by the Free Software Foundation version 2
7
 
 * of the License.
8
 
 *
9
 
 * This program is distributed in the hope that it will be useful,
10
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 
 * GNU General Public License for more details.
13
 
 *
14
 
 * You should have received a copy of the GNU General Public License
15
 
 * along with this program; if not, write to the Free Software
16
 
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
 
 * Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
18
 
 *
19
 
 */
20
 
 
21
 
/**
22
 
 * @file desc_service_location.h
23
 
 * @ingroup descriptors
24
 
 * @brief Provides the descriptors for the DVB service location
25
 
 * @copyright GNU General Public License version 2 (GPLv2)
26
 
 * @author Andre Roth
27
 
 *
28
 
 * @par Relevant specs
29
 
 * The descriptor described herein is defined at:
30
 
 *
31
 
 * @par Bug Report
32
 
 * Please submit bug reports and patches to linux-media@vger.kernel.org
33
 
 *
34
 
 * @todo DOES THIS DESCRIPTOR EXISTS? IF SO, WHERE?
35
 
 *
36
 
 * FIXME: this seems to be a duplicated copy of the ATSC service location.
37
 
 */
38
 
 
39
 
#ifndef _SERVICE_LOCATION_H
40
 
#define _SERVICE_LOCATION_H
41
 
 
42
 
#include <libdvbv5/descriptors.h>
43
 
 
44
 
/**
45
 
 * @struct dvb_desc_service_location_element
46
 
 * @ingroup descriptors
47
 
 * @brief
48
 
 *
49
 
 * @param stream_type   stream type
50
 
 * @param elementary_pid        elementary pid
51
 
 * @param language      language
52
 
 */
53
 
struct dvb_desc_service_location_element {
54
 
        uint8_t stream_type;
55
 
        union {
56
 
                uint16_t bitfield;
57
 
                struct {
58
 
                        uint16_t elementary_pid:13;
59
 
                        uint16_t reserved:3;
60
 
                } __attribute__((packed));
61
 
        } __attribute__((packed));
62
 
        uint8_t language[4];
63
 
} __attribute__((packed));
64
 
 
65
 
/**
66
 
 * @struct dvb_desc_service_location
67
 
 * @ingroup descriptors
68
 
 * @brief
69
 
 *
70
 
 * @param type  type
71
 
 * @param length        length
72
 
 * @param next  pointer to struct dvb_desc
73
 
 * @param pcr_pid       pcr pid
74
 
 * @param elements      elements
75
 
 * @param element       pointer to struct dvb_desc_service_location_element
76
 
 */
77
 
struct dvb_desc_service_location {
78
 
        uint8_t type;
79
 
        uint8_t length;
80
 
        struct dvb_desc *next;
81
 
 
82
 
        union {
83
 
                uint16_t bitfield;
84
 
                struct {
85
 
                        uint16_t pcr_pid:13;
86
 
                        uint16_t reserved:3;
87
 
                } __attribute__((packed));
88
 
        } __attribute__((packed));
89
 
        uint8_t elements;
90
 
        struct dvb_desc_service_location_element *element;
91
 
} __attribute__((packed));
92
 
 
93
 
struct dvb_v5_fe_parms;
94
 
 
95
 
#ifdef __cplusplus
96
 
extern "C" {
97
 
#endif
98
 
 
99
 
int dvb_desc_service_location_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc);
100
 
void dvb_desc_service_location_print(struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc);
101
 
void dvb_desc_service_location_free (struct dvb_desc *desc);
102
 
 
103
 
#ifdef __cplusplus
104
 
}
105
 
#endif
106
 
 
107
 
#endif