source: svn/newcon3bcm2_21bu/dst/dmw/src/EPG/DMW_RfDownload.h @ 45

Last change on this file since 45 was 45, checked in by megakiss, 11 years ago
  • Property svn:executable set to *
File size: 2.5 KB
Line 
1/****************************************************************************
2* NAME: DMW_RfDownload.h
3*----------------------------------------------------------------------------
4* Copyright (c) DIGITAL STREAM Technology Inc.
5*----------------------------------------------------------------------------
6* CREATED_BY: Do Gon Lee
7* CREATION_DATE: 2009/08/28
8* $Author: foxhunt $
9* $Revision: 1.0 $
10* $Date: 2009/08/28 10:47:19 $
11*----------------------------------------------------------------------------
12* PURPOSE:
13*       - RF Update API
14*****************************************************************************/
15
16#ifndef __DMW_RFDOWNLOAD_H__
17#define __DMW_RFDOWNLOAD_H__
18
19
20/*_____ I N C L U D E __________________________________________*/
21
22
23
24
25/*_____ D E F I N I T I O N ____________________________________*/
26
27#if COMMENT
28____Types____(){}
29#endif
30
31typedef struct 
32{
33        UINT8   version_number;
34        UINT16  table_id_extension;
35        UINT32  private_data_length;
36        UINT8   *private_data_byte;     
37
38} prvt_t, *prvtPtr_t;
39
40
41typedef void *(*MEM_ALLOC_FN)(UINT32 size);
42typedef void (*MEM_FREE_FN)(void *ptr);
43        /* ptrÀº freeÇÒ mem blockÀÇ ÁÖ¼ÒÀÌ´Ù. MEM_ALLOC_FN¿¡¼­ ¸®ÅÏµÈ ¹Ù·Î ±× °ªÀ̾î¾ß ÇÑ´Ù. */
44
45
46typedef struct
47{
48        /* Input argument; */
49        UINT16 Pid;
50        UINT8 TableId;
51
52        MEM_ALLOC_FN f_alloc;
53        MEM_FREE_FN f_free;
54
55        /* Result */
56        int        NumPrvts;
57        prvtPtr_t *PrvtList;    /* NumPrvts ¸¸Å­ÀÇ element¸¦ °¡Áø pointer array. */
58
59} RfDownloadInfo;
60
61
62typedef struct
63{
64        int NumChunk;
65        UINT8 **ChunkList;
66        UINT32 *ChunkSize;
67
68        UINT32 TotalPayloadSize;       
69
70} DataChunkList;
71
72
73typedef enum 
74{
75        RFDOWNLOAD_REPORT_DOWNLOAD,     /* download progress */
76} RfDownloadReport;
77
78
79typedef void (*RFDOWNLOAD_CALLBACK)(RfDownloadReport, UINT32 value);
80
81
82
83
84#pragma pack(push,1)
85        /* cafrii 070531, for new gcc compiler
86                 ¾Æ·¡ structure¸¦ ±×´ë·Î byte array¿¡ ´ëÀÀÇϵµ·Ï Çϱâ À§ÇØ. */
87
88/* cafrii 070205, stage4_update.c ¿Í À̸§ÀÌ °ãÃļ­ À̸§ º¯°æ.. */
89
90typedef struct 
91{
92        UINT8 svendor[16];
93        UINT8 sclass[16];
94        UINT8 smodel[16];
95        UINT8 sdesc[16];
96       
97} PNX_ID_TAG_V1;
98
99#pragma pack(pop)
100
101
102
103/*_____ F U N C T I O N ________________________________________*/
104
105STATUS RfDownload_Download(RfDownloadInfo *pInfo, UINT32 nRxTimeOutSec, 
106                                        RFDOWNLOAD_CALLBACK callback, BOOLEAN (*checkfn)());
107
108int RfDownload_VerifyHeader(RfDownloadInfo *pInfo, DataChunkList *list);
109
110void RfDownload_CleanUp(RfDownloadInfo *pInfo, DataChunkList *list);
111
112
113
114
115#endif  /* __DMW_RFDOWNLOAD_H__ */
Note: See TracBrowser for help on using the repository browser.