DSMCC  17.9.0
 All Data Structures Files Functions Typedefs
sfm_cache.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2004 Ocean Blue Software Ltd
4  *
5  * This file is part of a DTVKit Software Component
6  * You are permitted to copy, modify or distribute this file subject to the terms
7  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
8  *
9  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
10  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
11  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
12  *
13  * If you or your organisation is not a member of DTVKit then you have access
14  * to this source code outside of the terms of the licence agreement
15  * and you are expected to delete this and any associated files immediately.
16  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
17  *******************************************************************************/
24 #ifndef _SFM_CACHE_H
25 #define _SFM_CACHE_H
26 
27 #include "sfm_main.h"
28 
29 typedef struct s_TableExt
30 {
31  U16BIT id;
32  U16BIT mask;
33 } S_TableExt;
34 
35 
36 typedef struct s_CacheTable *H_CacheTable;
37 typedef struct s_CacheFilter *H_CacheFilter;
38 
39 H_SfmCache SFMCacheCreate( H_SfmInstance sfm );
40 
41 H_CacheTable SFMCacheGetTable( H_SfmCache cache );
42 
43 void SFMCacheDestroy( H_SfmInstance sfm, void **pBufMtx );
44 
45 BOOLEAN SFMCacheValidHandle( H_SfmInstance sfm, void *ptr );
46 
47 
48 H_CacheFilter SFMCacheRetrieveFilter( H_SfmInstance sfm, H_CacheTable ctable,
49  U16BIT teid, U8BIT vers );
50 
61 void SFMCacheAddBlock( H_SfmInstance sfm, U8BIT size1, U8BIT bknum, void **phBuffer );
62 
70 void SFMCacheSearch( H_SfmInstance sfm, H_CacheTable ctable, S_TableExt tex,
71  U16BIT dsmref, E_SFM_STATUS status );
72 
80 void SFMCacheProcessSection( H_SfmInstance sfm, U8BIT *pSection, H_CacheFilter cfilter );
81 
82 #endif /*_SFM_CACHE_H*/
void SFMCacheAddBlock(H_SfmInstance sfm, U8BIT size1, U8BIT bknum, void **phBuffer)
Allocates space in cache for section data If allocation is made, *phBuffer has holds cache location...
Definition: sfm_cache.c:638
void SFMCacheProcessSection(H_SfmInstance sfm, U8BIT *pSection, H_CacheFilter cfilter)
Tells SFM Cache to update DSM-CC with cached buffer (reported to F_CacheMatch callback funtion...
Definition: sfm_cache.c:790
void SFMCacheSearch(H_SfmInstance sfm, H_CacheTable ctable, S_TableExt tex, U16BIT dsmref, E_SFM_STATUS status)
Search cache for section data.
Definition: sfm_cache.c:822
Section Filter Manager (SFM): main definitions.
H_CacheFilter SFMCacheRetrieveFilter(H_SfmInstance sfm, H_CacheTable ctable, U16BIT teid, U8BIT vers)
Search cache for section data.
Definition: sfm_cache.c:581
BOOLEAN SFMCacheValidHandle(H_SfmInstance sfm, void *ptr)
Definition: sfm_cache.c:757