00001 /***************************************************************************** 00002 * dr_53.h 00003 * Copyright (C) 2013, M2X BV 00004 * 00005 * Authors: Jean-Paul Saman <jpsaman@videolan.org> 00006 * 00007 * This library is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public 00009 * License as published by the Free Software Foundation; either 00010 * version 2.1 of the License, or (at your option) any later version. 00011 * 00012 * This library is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with this library; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00020 * 00021 *****************************************************************************/ 00022 00034 #ifndef _DVBPSI_DR_53_H_ 00035 #define _DVBPSI_DR_53_H_ 00036 00037 #ifdef __cplusplus 00038 extern "C" { 00039 #endif 00040 00041 /***************************************************************************** 00042 * dvbpsi_ca_system_s 00043 *****************************************************************************/ 00055 typedef struct dvbpsi_ca_system_s 00056 { 00057 uint16_t i_ca_system_id; 00059 } dvbpsi_ca_system_t; 00060 00065 #define DVBPSI_CA_SYSTEM_ID_DR_MAX 127 00066 00067 /***************************************************************************** 00068 * dvbpsi_ca_identifier_dr_s 00069 *****************************************************************************/ 00081 typedef struct dvbpsi_ca_identifier_dr_s 00082 { 00083 uint8_t i_number; 00084 dvbpsi_ca_system_t p_system[DVBPSI_CA_SYSTEM_ID_DR_MAX]; 00086 } dvbpsi_ca_identifier_dr_t; 00087 00088 00089 /***************************************************************************** 00090 * dvbpsi_DecodeCAIdentifierDr 00091 *****************************************************************************/ 00100 dvbpsi_ca_identifier_dr_t* dvbpsi_DecodeCAIdentifierDr(dvbpsi_descriptor_t *p_descriptor); 00101 00102 00103 /***************************************************************************** 00104 * dvbpsi_GenStreamIdentifierDr 00105 *****************************************************************************/ 00116 dvbpsi_descriptor_t *dvbpsi_GenCAIdentifierDr(dvbpsi_ca_identifier_dr_t *p_decoded, 00117 bool b_duplicate); 00118 00119 00120 #ifdef __cplusplus 00121 }; 00122 #endif 00123 00124 #else 00125 #error "Multiple inclusions of dr_53.h" 00126 #endif