DSMCC
15.3.1
|
00001 /******************************************************************************* 00002 * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org) 00003 * Copyright © 2013 Ocean Blue Software Ltd 00004 * 00005 * This file is part of a DTVKit Software Component 00006 * You are permitted to copy, modify or distribute this file subject to the terms 00007 * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org 00008 * 00009 * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, 00010 * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES 00011 * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. 00012 * 00013 * If you or your organisation is not a member of DTVKit then you have access 00014 * to this source code outside of the terms of the licence agreement 00015 * and you are expected to delete this and any associated files immediately. 00016 * Further information on DTVKit, membership and terms can be found at www.dtvkit.org 00017 *******************************************************************************/ 00025 #ifndef _SIQFUNCS_H 00026 #define _SIQFUNCS_H 00027 00028 typedef void* H_PmtRef; 00029 00030 /*!**************************************************************************** 00031 * @brief Inform the DSM-CC client that parsing of PMT data is about to start 00032 * The return value is passed to subsequent PMT parsing call back 00033 * functions: i.e. F_ParseDataBcastId and F_PmtParseDone 00034 * @param U16BIT serviceId Service id of the PMT 00035 * @return H_PmtRef - handle or user data of client 00036 ******************************************************************************/ 00037 typedef H_PmtRef (*F_PmtParseInit)( U16BIT serviceId ); 00038 00039 /*!**************************************************************************** 00040 * @brief Parse data broadcast id descriptor for recognised application(s) 00041 * SIQ wants to know whether this PMT stream can be used to launch 00042 * a DSM-CC boot carousel. When there is more than one choice, SIQ 00043 * chooses the PMT stream that had the highest preference value 00044 * returned by this function. 00045 * Note that this may be called multiple times for a PMT stream, 00046 * and always called from within SIQ_ProcessPmt(). 00047 * Service ID and carousel ID are provided for convenience and are 00048 * not required for a basic implementation of this function. 00049 * @param H_PmtRef pmtref reference supplied by F_PmtParseInit 00050 * @param U32BIT carouselId Carousel associated with this descriptor 00051 * @param U8BIT* dbcPtr Pointer to data broadcast id descriptor 00052 * @param U8BIT dbcLen Length of data broadcast id descriptor 00053 * @return U32BIT - Preference value for this data broadcast id and 00054 * associated application type. Zero means that data broadcast id or 00055 * application type is not recognised, and SIQ will ignore it. 00056 ******************************************************************************/ 00057 typedef U32BIT (*F_ParseDataBcastId)( H_PmtRef pmtref, U32BIT carouselId, 00058 U8BIT* dbcPtr, U8BIT dbcLen ); 00059 00060 /*!**************************************************************************** 00061 * @brief Inform the DSM-CC client that parsing of PMT data has completed 00062 * @param H_PmtRef pmtref reference supplied by F_PmtParseInit 00063 * @return void 00064 ******************************************************************************/ 00065 typedef void (*F_PmtParseDone)( H_PmtRef pmtref ); 00066 00067 /*!**************************************************************************** 00068 * @brief Callback to inform of first or changed AIT info in PMT 00069 * @param U16BIT serviceId Service id. 00070 * @param U16BIT type Type of AIT application 00071 * @param U16BIT pid PID containing AIT 00072 * @param U8BIT version Current AIT version 00073 * @return void 00074 ******************************************************************************/ 00075 typedef void (*F_NotifyAitInfo)( U16BIT serviceId, U16BIT appType, 00076 U16BIT pid, U8BIT version ); 00077 00078 #endif //_SIQFUNCS_H