/** * Copyright(c) 2011 Sunmedia Technologies - All Rights Reserved. * * @file * Common macros, declarations and definitions of Cable Database. * * @author jun.luo * */ #ifndef _CDB_H_ #define _CDB_H_ #include "db_common.h" #ifdef __cplusplus extern "C"{ #endif /** * @addtogroup DVBC_APIS Common macros, declarations and definitions of Cable Database. * @{ */ /** Exported constants */ enum { CDB_MAX_PRIVDATA = 0, /**< Max private data length in bytes */ }; /** * @Note !!!!!!!!!!!!!!! * If you have modified the following three structures(SCDBNetworkInfo_t, SCDBMultiplexInfo_t and SCDBServInfo_t), * Please don't forget to execute genDBSymbol.pl manually to refresh the DB Symbol Information(which used by Get/UpdateRecordbysymbol) */ /** Network details define for cable Database */ typedef struct SCDBNetworkInfo { UINT16 usNetId; UINT8 szNetName[DB_DVB_MAX_NETNAME_LEN]; /**< network Name */ //#ifdef SUPPORT_MONITOR_ONLY_NIT_OTHER UINT8 ucNetTableId; //#endif } SCDBNetworkInfo_t; /** Multiplex details define for cable database */ typedef struct SCDBMultiplexInfo { UINT8 ucSignalQuality; /**< multiplex signal quality*/ UINT8 ucSignalStrength; /**< multiplex signal Strength*/ UINT8 ucQamSize; /**< 0x00:not defined, 0x01:QAM16, 0x02:QAM32, 0x03:QAM64, 0x04:QAM128, 0x05:QAM256, 0x06----0xff:reserved*/ UINT16 usSymRateK; /**< symbol rate in KHz */ UINT16 usEMMPID; /**< emm pid*/ UINT16 usNetId; /**< Network id */ UINT32 uiFreqK; /**< tuning frequency in KHz */ UINT16 usTsId; /**< transport stream id */ UINT16 usOrigNetId; /**< original network id */ UINT8/*EDVBDeliveryType_t*/ ucTp_dvb_type; /**< DVB-C delivery type(C or C2) */ //#ifdef SUPPORT_NETWORK_UPDATE_RESCAN UINT8 ucNitVersion; UINT8 ucTSIDNum; UINT16 usTSIDList[TDB_MAX_TSNUM_WITHIN_NETWORK]; //#endif } SCDBMultiplexInfo_t; /** Service details define for cable database */ typedef struct SCDBServInfo { UINT8 szProgName[DB_DVB_MAX_CHNAME_LEN]; /**< program name*/ UINT8/*EServSDTType_t*/ eSDTSrvType; /**< service type in Service Descriptor of SDT*/ UINT8/*EServiceType_t*/ eTvRadioType; /**< TV/Radio/Data Service */ UINT16 usProgNo; /**< program logic number */ UINT16 usUserProgNo; UINT16 usServiceId; /**< service id */ UINT16 usTsId; /**< transport stream id for sdt/nit */ UINT16 usTsId_pat; /**< transport stream id for pat */ UINT16 usOrigNetId; /**< original network id */ DBPIDInfo_t stVideoPid; /**< video pid info,include data pid and ecm pid*/ DBPIDInfo_t stAudioPid[DB_DVB_MAX_AUDIO_NUM]; /**< audio pid info, include data pid and ecm pid. the 3rd one is AD*/ UINT16 usPcrPid; /**< pcr pid */ DBServAttrib_t stProgAttrib; /**< program attribute*/ UINT16 usPMTPid; /**< pmt pid */ UINT16 usCASystemID; /**< CA system id */ UINT16 usOrgLcn; /**