MHEG5  15.3.0
include/stb_nvm.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
00003  * Copyright © 2014 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  *******************************************************************************/
00025 #ifndef _STB_NVM_H
00026 #define _STB_NVM_H
00027 
00028 #include "techtype.h"
00029 
00030 /*---Constant and macro definitions for public use-----------------------------*/
00031 
00032 /*---Enumerations for public use-----------------------------------------------*/
00033 
00034 typedef enum
00035 {
00036    FILE_MODE_READ,
00037    FILE_MODE_WRITE,
00038    FILE_MODE_OVERWRITE
00039 } E_STB_DSK_FILE_MODE;
00040 
00041 typedef enum
00042 {
00043    FILE_POSITION_START,
00044    FILE_POSITION_END,
00045    FILE_POSITION_CURRENT
00046 } E_STB_DSK_FILE_POSITION;
00047 
00048 typedef enum
00049 {
00050    DIR_ENTRY_FILE,
00051    DIR_ENTRY_DIRECTORY,
00052    DIR_ENTRY_OTHER
00053 } E_STB_DIR_ENTRY_TYPE;
00054 
00055 
00056 /*---Global type defs for public use-------------------------------------------*/
00057 
00058 /*---Global Function prototypes for public use---------------------------------*/
00059 
00066 BOOLEAN STB_NVMFileSize(U8BIT *filename, U32BIT *filesize);
00067 
00076 void* STB_NVMOpenFile(U8BIT *name, E_STB_DSK_FILE_MODE mode);
00077 
00082 void STB_NVMCloseFile(void *file);
00083 
00091 U32BIT STB_NVMReadFile(void *file, U8BIT *data, U32BIT size);
00092 
00100 U32BIT STB_NVMWriteFile(void *file, U8BIT *data, U32BIT size);
00101 
00107 BOOLEAN STB_NVMDeleteFile(U8BIT *filename);
00108 
00114 void* STB_NVMOpenDirectory(U8BIT *dir_name);
00115 
00126 BOOLEAN STB_NVMReadDirectory(void *dir, U8BIT *filename, U16BIT filename_len,
00127    E_STB_DIR_ENTRY_TYPE *entry_type);
00128 
00133 void STB_NVMCloseDirectory(void *dir);
00134 
00135 #endif /*_STB_NVM_H*/
 All Data Structures Files Functions Variables Typedefs Defines