DSMCC  15.3.1
source/dsfm/src/sfm_cache.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
00003  * Copyright © 2004 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  *******************************************************************************/
00024 #ifndef _SFM_CACHE_H
00025 #define _SFM_CACHE_H
00026 
00027 #include "sfm_main.h"
00028 
00029 typedef struct s_TableExt
00030 {
00031    U16BIT id;
00032    U16BIT mask;
00033 } S_TableExt;
00034 
00035 
00036 typedef struct s_CacheTable  *H_CacheTable;
00037 typedef struct s_CacheFilter *H_CacheFilter;
00038 
00039 H_SfmCache SFMCacheCreate( H_SfmInstance sfm );
00040 
00041 H_CacheTable SFMCacheGetTable( H_SfmCache cache );
00042 
00043 void SFMCacheDestroy( H_SfmInstance sfm, void **pBufMtx );
00044 
00045 BOOLEAN SFMCacheValidHandle( H_SfmInstance sfm, void* ptr );
00046 
00047 
00048 H_CacheFilter SFMCacheRetrieveFilter( H_SfmInstance sfm, H_CacheTable ctable,
00049                      U16BIT teid, U8BIT vers );
00050 
00061 void SFMCacheAddBlock( H_SfmInstance sfm, U8BIT size1, U8BIT bknum, void** phBuffer );
00062 
00070 void SFMCacheSearch( H_SfmInstance sfm, H_CacheTable ctable, S_TableExt tex,
00071                      U16BIT dsmref, E_SFM_STATUS status );
00072 
00080 void SFMCacheProcessSection( H_SfmInstance sfm, U8BIT *pSection, H_CacheFilter cfilter );
00081 
00082 #endif /*_SFM_CACHE_H*/
 All Data Structures Files Functions Typedefs