| 1 | /** |
|---|
| 2 | Copyright (C) 2007 NXP B.V., All Rights Reserved. |
|---|
| 3 | This source code and any compilation or derivative thereof is the proprietary |
|---|
| 4 | information of NXP B.V. and is confidential in nature. Under no circumstances |
|---|
| 5 | is this software to be exposed to or placed under an Open Source License of |
|---|
| 6 | any type without the expressed written permission of NXP B.V. |
|---|
| 7 | * |
|---|
| 8 | * \file tmFrontEnd.h |
|---|
| 9 | * %version: CFR_FEAP#1 % |
|---|
| 10 | * |
|---|
| 11 | * \date %date_modified% |
|---|
| 12 | * |
|---|
| 13 | * \brief Describe briefly the purpose of this file. |
|---|
| 14 | * |
|---|
| 15 | * REFERENCE DOCUMENTS : |
|---|
| 16 | * |
|---|
| 17 | * Detailed description may be added here. |
|---|
| 18 | * |
|---|
| 19 | * \section info Change Information |
|---|
| 20 | * |
|---|
| 21 | * \verbatim |
|---|
| 22 | Date Modified by CRPRNr TASKNr Maintenance description |
|---|
| 23 | -------------|-----------|-------|-------|----------------------------------- |
|---|
| 24 | 26-Mar-2008 | B.GUILLOT | 13122 | 23456 | Creation |
|---|
| 25 | -------------|-----------|-------|-------|----------------------------------- |
|---|
| 26 | \endverbatim |
|---|
| 27 | * |
|---|
| 28 | */ |
|---|
| 29 | |
|---|
| 30 | #ifndef TMFRONTEND_H |
|---|
| 31 | #define TMFRONTEND_H |
|---|
| 32 | |
|---|
| 33 | /*============================================================================*/ |
|---|
| 34 | /* INCLUDE FILES */ |
|---|
| 35 | /*============================================================================*/ |
|---|
| 36 | |
|---|
| 37 | #ifdef __cplusplus |
|---|
| 38 | extern "C" { |
|---|
| 39 | #endif |
|---|
| 40 | |
|---|
| 41 | /*============================================================================*/ |
|---|
| 42 | /* ENUM OR TYPE DEFINITION */ |
|---|
| 43 | /*============================================================================*/ |
|---|
| 44 | |
|---|
| 45 | /* standard*/ |
|---|
| 46 | typedef enum _tmFrontEndStandard_t { |
|---|
| 47 | tmFrontEndStandardDVBT = 0, |
|---|
| 48 | tmFrontEndStandardDVBS, |
|---|
| 49 | tmFrontEndStandardDVBC, |
|---|
| 50 | tmFrontEndStandardDSS, |
|---|
| 51 | tmFrontEndStandardBSD, |
|---|
| 52 | tmFrontEndStandardDVBH, |
|---|
| 53 | tmFrontEndStandardAnalogDVBT, |
|---|
| 54 | tmFrontEndStandardDVBS2, |
|---|
| 55 | tmFrontEndStandardDVBT2, |
|---|
| 56 | tmFrontEndStandardMax |
|---|
| 57 | } tmFrontEndStandard_t, *ptmFrontEndStandard_t; |
|---|
| 58 | |
|---|
| 59 | /* spectral inversion*/ |
|---|
| 60 | typedef enum _tmFrontEndSpecInv_t { |
|---|
| 61 | tmFrontEndSpecInvAuto = 0, |
|---|
| 62 | tmFrontEndSpecInvOff, |
|---|
| 63 | tmFrontEndSpecInvOn, |
|---|
| 64 | tmFrontEndSpecInvMax |
|---|
| 65 | } tmFrontEndSpecInv_t, *ptmFrontEndSpecInv_t; |
|---|
| 66 | |
|---|
| 67 | /* modulation*/ |
|---|
| 68 | typedef enum _tmFrontEndModulation_t { |
|---|
| 69 | tmFrontEndModulationAuto = 0, |
|---|
| 70 | tmFrontEndModulationBpsk, |
|---|
| 71 | tmFrontEndModulationQpsk, |
|---|
| 72 | tmFrontEndModulationQam4, |
|---|
| 73 | tmFrontEndModulationPsk8, |
|---|
| 74 | tmFrontEndModulationQam16, |
|---|
| 75 | tmFrontEndModulationQam32, |
|---|
| 76 | tmFrontEndModulationQam64, |
|---|
| 77 | tmFrontEndModulationQam128, |
|---|
| 78 | tmFrontEndModulationQam256, |
|---|
| 79 | tmFrontEndModulationQam512, |
|---|
| 80 | tmFrontEndModulationQam1024, |
|---|
| 81 | tmFrontEndModulation8VSB, |
|---|
| 82 | tmFrontEndModulation16VSB, |
|---|
| 83 | tmFrontEndModulationQam, |
|---|
| 84 | tmFrontEndModulationMax |
|---|
| 85 | } tmFrontEndModulation_t, *ptmFrontEndModulation_t; |
|---|
| 86 | |
|---|
| 87 | /* viterbi rate*/ |
|---|
| 88 | typedef enum _tmFrontEndCodeRate_t { |
|---|
| 89 | tmFrontEndCodeRateAuto = 0, |
|---|
| 90 | tmFrontEndCodeRate_1_4, |
|---|
| 91 | tmFrontEndCodeRate_1_3, |
|---|
| 92 | tmFrontEndCodeRate_2_5, |
|---|
| 93 | tmFrontEndCodeRate_1_2, |
|---|
| 94 | tmFrontEndCodeRate_3_5, |
|---|
| 95 | tmFrontEndCodeRate_2_3, |
|---|
| 96 | tmFrontEndCodeRate_3_4, |
|---|
| 97 | tmFrontEndCodeRate_4_5, |
|---|
| 98 | tmFrontEndCodeRate_5_6, |
|---|
| 99 | tmFrontEndCodeRate_6_7, |
|---|
| 100 | tmFrontEndCodeRate_7_8, |
|---|
| 101 | tmFrontEndCodeRate_8_9, |
|---|
| 102 | tmFrontEndCodeRate_9_10, |
|---|
| 103 | tmFrontEndCodeRate_NotRelevant, |
|---|
| 104 | tmFrontEndCodeRateMax |
|---|
| 105 | } tmFrontEndCodeRate_t, *ptmFrontEndCodeRate_t; |
|---|
| 106 | |
|---|
| 107 | /* frequency offset*/ |
|---|
| 108 | typedef enum _tmFrontEndRfOffset_t { |
|---|
| 109 | tmFrontEndRfOffsetAuto = 0, |
|---|
| 110 | tmFrontEndRfOffsetNull, |
|---|
| 111 | tmFrontEndRfOffsetPlus125, |
|---|
| 112 | tmFrontEndRfOffsetMinus125, |
|---|
| 113 | tmFrontEndRfOffsetPlus166, |
|---|
| 114 | tmFrontEndRfOffsetMinus166, |
|---|
| 115 | tmFrontEndRfOffsetPlus333, |
|---|
| 116 | tmFrontEndRfOffsetMinus333, |
|---|
| 117 | tmFrontEndRfOffsetPlus500, |
|---|
| 118 | tmFrontEndRfOffsetMinus500, |
|---|
| 119 | tmFrontEndRfOffsetMax |
|---|
| 120 | } tmFrontEndRfOffset_t, *ptmFrontEndRfOffset_t; |
|---|
| 121 | |
|---|
| 122 | /* frequency offset*/ |
|---|
| 123 | typedef enum _tmFrontEndRfOffsetMode_t { |
|---|
| 124 | tmFrontEndRfOffsetModeAuto, |
|---|
| 125 | tmFrontEndRfOffsetModeManual, |
|---|
| 126 | tmFrontEndRfOffsetModeMax |
|---|
| 127 | } tmFrontEndRfOffsetMode_t, *ptmFrontEndRfOffsetMode_t; |
|---|
| 128 | |
|---|
| 129 | /* guard interval*/ |
|---|
| 130 | typedef enum _tmFrontEndGI_t { |
|---|
| 131 | tmFrontEndGIAuto = 0, |
|---|
| 132 | tmFrontEndGI_1_32, |
|---|
| 133 | tmFrontEndGI_1_16, |
|---|
| 134 | tmFrontEndGI_1_8, |
|---|
| 135 | tmFrontEndGI_1_4, |
|---|
| 136 | tmFrontEndGI_1_128, |
|---|
| 137 | tmFrontEndGI_19_128, |
|---|
| 138 | tmFrontEndGI_19_256, |
|---|
| 139 | tmFrontEndGIMax |
|---|
| 140 | } tmFrontEndGI_t, *ptmFrontEndGI_t; |
|---|
| 141 | |
|---|
| 142 | /* fast Fourrier transform size*/ |
|---|
| 143 | typedef enum _tmFrontEndFft_t { |
|---|
| 144 | tmFrontEndFftAuto = 0, |
|---|
| 145 | tmFrontEndFft1K, |
|---|
| 146 | tmFrontEndFft2K, |
|---|
| 147 | tmFrontEndFft8K, |
|---|
| 148 | tmFrontEndFft4K, |
|---|
| 149 | tmFrontEndFft16K, |
|---|
| 150 | tmFrontEndFft32K, |
|---|
| 151 | tmFrontEndFftMax |
|---|
| 152 | } tmFrontEndFft_t, *ptmFrontEndFft_t; |
|---|
| 153 | |
|---|
| 154 | /* hierarchy*/ |
|---|
| 155 | typedef enum _tmFrontEndHier_t { |
|---|
| 156 | tmFrontEndHierAuto = 0, |
|---|
| 157 | tmFrontEndHierNo, |
|---|
| 158 | tmFrontEndHierAlpha1, |
|---|
| 159 | tmFrontEndHierAlpha2, |
|---|
| 160 | tmFrontEndHierAlpha4, |
|---|
| 161 | tmFrontEndHierMax |
|---|
| 162 | } tmFrontEndHier_t, *ptmFrontEndHier_t; |
|---|
| 163 | |
|---|
| 164 | /* priority*/ |
|---|
| 165 | typedef enum _tmFrontEndPrior_t { |
|---|
| 166 | tmFrontEndPriorAuto = 0, |
|---|
| 167 | tmFrontEndPriorHigh, |
|---|
| 168 | tmFrontEndPriorLow, |
|---|
| 169 | tmFrontEndPriorMax |
|---|
| 170 | } tmFrontEndPrior_t, *ptmFrontEndPrior_t; |
|---|
| 171 | |
|---|
| 172 | /* roll off */ |
|---|
| 173 | typedef enum _tmFrontEndRollOff_t { |
|---|
| 174 | tmFrontEndRollOffAuto = 0, |
|---|
| 175 | tmFrontEndRollOff_0_15, |
|---|
| 176 | tmFrontEndRollOff_0_20, |
|---|
| 177 | tmFrontEndRollOff_0_25, |
|---|
| 178 | tmFrontEndRollOff_0_35, |
|---|
| 179 | tmFrontEndRollOffMax |
|---|
| 180 | } tmFrontEndRollOff_t, *ptmFrontEndRollOff_t; |
|---|
| 181 | |
|---|
| 182 | /* continuous tone */ |
|---|
| 183 | typedef enum _tmFrontEndContinuousTone_t { |
|---|
| 184 | tmFrontEndContinuousToneAuto = 0, |
|---|
| 185 | tmFrontEndContinuousToneOff, |
|---|
| 186 | tmFrontEndContinuousTone22KHz, |
|---|
| 187 | tmFrontEndContinuousToneMax |
|---|
| 188 | } tmFrontEndContinuousTone_t, *ptmFrontEndContinuousTone_t; |
|---|
| 189 | |
|---|
| 190 | typedef enum _tmFrontEndChannelType_t |
|---|
| 191 | { |
|---|
| 192 | tmFrontEndChannelTypeNone = 0x00, /* No detection */ |
|---|
| 193 | tmFrontEndChannelTypeDigital = 0x01, /* Digital channel */ |
|---|
| 194 | tmFrontEndChannelTypeAnalog = 0x02, /* Analog channel */ |
|---|
| 195 | tmFrontEndChannelTypeUnknown = 0x20 /* unknown channel type */ |
|---|
| 196 | } tmFrontEndChannelType_t,*ptmFrontEndChannelType_t; |
|---|
| 197 | |
|---|
| 198 | typedef enum _tmFrontEndChannelConfidence_t |
|---|
| 199 | { |
|---|
| 200 | tmFrontEndConfidenceNotAvailable, |
|---|
| 201 | tmFrontEndConfidenceNull, |
|---|
| 202 | tmFrontEndConfidenceLow, |
|---|
| 203 | tmFrontEndConfidenceMedium, |
|---|
| 204 | tmFrontEndConfidenceHigh |
|---|
| 205 | } tmFrontEndConfidence_t, *ptmFrontEndConfidence_t; |
|---|
| 206 | |
|---|
| 207 | /* not used */ |
|---|
| 208 | typedef enum _tmFrontEndDVBT2PLPType_t |
|---|
| 209 | { |
|---|
| 210 | tmFrontEndDVBT2PLPTypeAuto, |
|---|
| 211 | tmFrontEndDVBT2PLPTypeCommon, |
|---|
| 212 | tmFrontEndDVBT2PLPType1, |
|---|
| 213 | tmFrontEndDVBT2PLPType2, |
|---|
| 214 | tmFrontEndDVBT2PLPTypeMax |
|---|
| 215 | } tmFrontEndDVBT2PLPType_t, *ptmFrontEndDVBT2PLPType_t; |
|---|
| 216 | |
|---|
| 217 | /* not used */ |
|---|
| 218 | typedef enum _tmFrontEndDVBT2PLPPayloadType_t |
|---|
| 219 | { |
|---|
| 220 | tmFrontEndDVBT2PLPPayloadTypeAuto, |
|---|
| 221 | tmFrontEndDVBT2PLPPayloadTypeGFPS, |
|---|
| 222 | tmFrontEndDVBT2PLPPayloadTypeGCS, |
|---|
| 223 | tmFrontEndDVBT2PLPPayloadTypeGSE, |
|---|
| 224 | tmFrontEndDVBT2PLPPayloadTypeTS, |
|---|
| 225 | tmFrontEndDVBT2PLPPayloadTypeMax |
|---|
| 226 | } tmFrontEndDVBT2PLPPayloadType_t, *ptmFrontEndDVBT2PLPPayloadType_t; |
|---|
| 227 | |
|---|
| 228 | /* not used */ |
|---|
| 229 | typedef enum _tmFrontEndDVBT2FECType_t |
|---|
| 230 | { |
|---|
| 231 | tmFrontEndDVBT2FECTypeAuto, |
|---|
| 232 | tmFrontEndDVBT2FECType16K, |
|---|
| 233 | tmFrontEndDVBT2FECType64K, |
|---|
| 234 | tmFrontEndDVBT2FECTypeMax |
|---|
| 235 | } tmFrontEndDVBT2FECType_t, *ptmFrontEndDVBT2FECType_t; |
|---|
| 236 | |
|---|
| 237 | typedef enum _tmFrontEndRotationState_t |
|---|
| 238 | { |
|---|
| 239 | tmFrontEndRotationStateAuto, |
|---|
| 240 | tmFrontEndRotationStateOn, |
|---|
| 241 | tmFrontEndRotationStateOff, |
|---|
| 242 | tmFrontEndRotationStateMax |
|---|
| 243 | } tmFrontEndRotationState, *ptmFrontEndRotationState; |
|---|
| 244 | |
|---|
| 245 | typedef enum _tmFrontEndDVBT2InputType_t |
|---|
| 246 | { |
|---|
| 247 | tmFrontEndDVBT2InputTypeAuto, |
|---|
| 248 | tmFrontEndDVBT2InputTypeSISO, |
|---|
| 249 | tmFrontEndDVBT2InputTypeMISO, |
|---|
| 250 | tmFrontEndDVBT2InputTypeMax |
|---|
| 251 | } tmFrontEndDVBT2InputType_t, *ptmFrontEndDVBT2InputType_t; |
|---|
| 252 | |
|---|
| 253 | typedef enum _tmFrontEndFECMode_t |
|---|
| 254 | { |
|---|
| 255 | tmFrontEndFECModeUnknown = 0, |
|---|
| 256 | tmFrontEndFECModeAnnexA, |
|---|
| 257 | tmFrontEndFECModeAnnexB, |
|---|
| 258 | tmFrontEndFECModeAnnexC, |
|---|
| 259 | tmFrontEndFECModeMax |
|---|
| 260 | } tmFrontEndFECMode_t, *ptmFrontEndFECMode_t; |
|---|
| 261 | |
|---|
| 262 | typedef struct _tmFrontEndFracNb8_t |
|---|
| 263 | { |
|---|
| 264 | Int8 lInteger; |
|---|
| 265 | UInt8 uDivider; |
|---|
| 266 | }tmFrontEndFracNb8_t; |
|---|
| 267 | |
|---|
| 268 | typedef struct _tmFrontEndFracNb32_t |
|---|
| 269 | { |
|---|
| 270 | Int32 lInteger; |
|---|
| 271 | UInt32 uDivider; |
|---|
| 272 | }tmFrontEndFracNb32_t; |
|---|
| 273 | |
|---|
| 274 | #ifdef __cplusplus |
|---|
| 275 | } |
|---|
| 276 | #endif |
|---|
| 277 | |
|---|
| 278 | #endif /* TMFRONTEND_H */ |
|---|
| 279 | /*============================================================================*/ |
|---|
| 280 | /* END OF FILE */ |
|---|
| 281 | /*============================================================================*/ |
|---|