libdvbpsi
1.1.0
Main Page
Related Pages
Data Structures
Files
File List
Globals
src
tables
atsc_vct.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2006 Adam Charrett
3
4
This library is free software; you can redistribute it and/or
5
modify it under the terms of the GNU Lesser General Public
6
License as published by the Free Software Foundation; either
7
version 2.1 of the License, or (at your option) any later version.
8
9
This library 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 GNU
12
Lesser General Public License for more details.
13
14
You should have received a copy of the GNU Lesser General Public
15
License along with this library; if not, write to the Free Software
16
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
18
vct.h
19
20
Decode PSIP Virtual Channel Table.
21
22
*/
23
30
#ifndef _ATSC_VCT_H
31
#define _ATSC_VCT_H
32
33
#ifdef __cplusplus
34
extern
"C"
{
35
#endif
36
37
/*****************************************************************************
38
* dvbpsi_atsc_vct_channel_t
39
*****************************************************************************/
50
typedef
struct
dvbpsi_atsc_vct_channel_s
51
{
52
uint8_t
i_short_name
[14];
53
uint16_t
i_major_number
;
54
uint16_t
i_minor_number
;
56
uint8_t
i_modulation
;
57
uint32_t
i_carrier_freq
;
58
uint16_t
i_channel_tsid
;
59
uint16_t
i_program_number
;
60
uint8_t
i_etm_location
;
61
bool
b_access_controlled
;
62
bool
b_path_select
;
63
bool
b_out_of_band
;
65
bool
b_hidden
;
66
bool
b_hide_guide
;
68
uint8_t
i_service_type
;
69
uint16_t
i_source_id
;
71
dvbpsi_descriptor_t
*
p_first_descriptor
;
73
struct
dvbpsi_atsc_vct_channel_s
*
p_next
;
74
}
dvbpsi_atsc_vct_channel_t
;
75
76
/*****************************************************************************
77
* dvbpsi_atsc_vct_t
78
*****************************************************************************/
89
typedef
struct
dvbpsi_atsc_vct_s
90
{
91
uint8_t
i_table_id
;
92
uint16_t
i_extension
;
94
uint8_t
i_version
;
95
bool
b_current_next
;
96
uint8_t
i_protocol
;
97
bool
b_cable_vct
;
99
dvbpsi_descriptor_t
*
p_first_descriptor
;
100
dvbpsi_atsc_vct_channel_t
*
p_first_channel
;
102
}
dvbpsi_atsc_vct_t
;
103
104
/*****************************************************************************
105
* dvbpsi_vct_callback
106
*****************************************************************************/
112
typedef
void (*
dvbpsi_atsc_vct_callback
)(
void
* p_cb_data,
dvbpsi_atsc_vct_t
* p_new_vct);
113
114
/*****************************************************************************
115
* dvbpsi_atsc_AttachVCT
116
*****************************************************************************/
129
bool
dvbpsi_atsc_AttachVCT
(
dvbpsi_t
*p_dvbpsi, uint8_t
i_table_id
,
130
uint16_t
i_extension
,
dvbpsi_atsc_vct_callback
pf_vct_callback,
131
void
* p_cb_data);
132
133
/*****************************************************************************
134
* dvbpsi_DetachVCT
135
*****************************************************************************/
146
void
dvbpsi_atsc_DetachVCT
(
dvbpsi_t
*p_dvbpsi, uint8_t
i_table_id
, uint16_t
i_extension
);
147
148
/*****************************************************************************
149
* dvbpsi_atsc_InitVCT
150
*****************************************************************************/
165
void
dvbpsi_atsc_InitVCT
(
dvbpsi_atsc_vct_t
* p_vct, uint8_t
i_table_id
,
166
uint16_t
i_extension
, uint8_t i_protocol,
bool
b_cable_vct,
167
uint8_t
i_version
,
bool
b_current_next
);
168
169
/*****************************************************************************
170
* dvbpsi_atsc_NewVCT
171
*****************************************************************************/
185
dvbpsi_atsc_vct_t
*
dvbpsi_atsc_NewVCT
(uint8_t
i_table_id
, uint16_t
i_extension
,
186
uint8_t i_protocol,
bool
b_cable_vct, uint8_t
i_version
,
187
bool
b_current_next
);
188
189
/*****************************************************************************
190
* dvbpsi_atsc_EmptyVCT
191
*****************************************************************************/
198
void
dvbpsi_atsc_EmptyVCT
(
dvbpsi_atsc_vct_t
*p_vct);
199
200
/*****************************************************************************
201
* dvbpsi_atsc_DeleteVCT
202
*****************************************************************************/
209
void
dvbpsi_atsc_DeleteVCT
(
dvbpsi_atsc_vct_t
*p_vct);
210
211
#ifdef __cplusplus
212
};
213
#endif
214
215
#endif
Generated on Sat May 25 2013 17:44:03 for libdvbpsi by
1.8.4