DSMCC
15.3.1
|
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 _DSM_TYPES_H 00026 #define _DSM_TYPES_H 00027 00028 #include "dvblocator.h" 00029 00030 #define INVALID_CAROUSEL_ID 0xFFFFFFFF 00031 #define UNKNOWN_CAROUSEL_ID 0xFFFFFFFE 00032 00033 /* Enum used to specify type of behaviour in unload type operation. 00034 * The unload operation (normally on carousel) can cause any pending 00035 * object load requests to either: 00036 * 1. forced to abort, or 00037 * 2. kept pending until a new carousel is loaded. 00038 * This enum is used in relevant API functions. 00039 */ 00040 typedef enum 00041 { 00042 RST_MODE_FORCE, 00043 RST_MODE_PENDING, 00044 } E_DsmRstMode; 00045 00046 /* Enum used to report Object Carousel load status */ 00047 typedef enum { 00048 /*0*/ OC_LOAD_UNINITIATED = 0, 00049 /*1*/ OC_LOAD_IN_PROGRESS, 00050 /*2*/ OC_LOAD_BOOTED, 00051 /*3*/ OC_LOAD_COMPLETED, 00052 /*4*/ OC_LOAD_ABORTED_TIMEOUT, 00053 /*5*/ OC_LOAD_ABORTED_PATH_ERROR, 00054 /*6*/ OC_LOAD_ABORTED_ERROR, 00055 /*7*/ OC_LOAD_ABORTED_UNLOAD, 00056 /*8*/ OC_LOAD_FILE_GROUP_CHANGE 00057 } E_OCLoadStatus; 00058 00059 /* Carousel SRG User Info for File Groups - available once carousel is loaded 00060 * - used by Australia/South Africa MHEG profile */ 00061 typedef struct { 00062 U16BIT owner_id; 00063 U16BIT group_id; 00064 U8BIT group_priority; 00065 U8BIT use_flags; 00066 U8BIT receiver_profile; 00067 U8BIT group_version; 00068 U8BIT* location; 00069 } S_CarouselInfoFileGroup; 00070 00071 typedef U32BIT H_DsmEvent; 00072 00073 typedef struct s_ObjCarousel *H_ObjCarousel; 00074 00075 typedef struct s_DsmControl *H_DsmControl; 00076 00077 00078 #endif /*_DSM_TYPES_H*/