MHEG5  15.3.0
source/classes/inc/mh5root.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  * Copyright © 2000 Koninklijke Philips Electronics N.V
00005  *
00006  * This file is part of a DTVKit Software Component
00007  * You are permitted to copy, modify or distribute this file subject to the terms
00008  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
00009  * 
00010  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
00011  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
00012  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
00013  * 
00014  * If you or your organisation is not a member of DTVKit then you have access
00015  * to this source code outside of the terms of the licence agreement
00016  * and you are expected to delete this and any associated files immediately.
00017  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
00018  *******************************************************************************/
00030 #ifndef _MH5ROOT_H
00031 #define _MH5ROOT_H
00032 
00033 /*---includes for this file--------------------------------------------------*/
00034 
00035 #include "mh5base.h"
00036 
00037 /*---Constant and macro definitions for public use---------------------------*/
00038 
00039 /*---Enumerations for public use---------------------------------------------*/
00040 
00041 /*---Global type defs for public use-----------------------------------------*/
00042 
00043 typedef struct sMHEG5Root
00044 {
00045    /* No base class for this class */
00046 
00047    /* Exchanged attributes */
00048    MHEG5Int id;
00049 
00050    /* Internal attributes */
00051    MHEG5Bool runningStatus;
00052    MHEG5Bool availabilityStatus;
00053 
00054    /* Engine data */
00055    MHEG5Final clazz;
00056 
00057    MH5GroupPtr grp;
00058 } MHEG5Root;
00059 
00060 /*---Global variable declarations for public use-----------------------------*/
00061 
00062 /*---Global Function prototypes for public use-------------------------------*/
00063 
00064 /*
00065     Constructor
00066  */
00072 void MHEG5rootInit(MHEG5Root *root);
00073 
00074 
00082 void MHEG5rootFree(MHEG5Root *root);
00083 
00084 
00085 /*
00086     Clone
00087  */
00094 void MHEG5rootClone(MHEG5Root *destination, MHEG5Root *source);
00095 
00096 
00097 /*
00098     Internal behaviours
00099  */
00120 void MHEG5rootPrepare(MHEG5Root *root);
00121 
00122 
00144 void MHEG5rootActivate(MHEG5Root *root);
00145 
00146 
00160 void MHEG5rootDeactivate(MHEG5Root *root);
00161 
00162 
00191 void MHEG5rootDestruct(MHEG5Root *root);
00192 
00193 /*
00194     Actions
00195  */
00213 MHEG5ErrorCode MHEG5getAvailabilityStatus(MHEG5Root *target, MHEG5GList *params);
00214 
00215 
00232 MHEG5ErrorCode MHEG5getRunningStatus(MHEG5Root *target, MHEG5GList *params);
00233 
00234 
00235 /*
00236    Debug
00237  */
00238 #ifdef MH5PRINTOUT
00239 
00245 void MHEG5rootPrint(MHEG5Root *root, char *out);
00246 #endif  /* #ifdef MH5PRINTOUT */
00247 
00248 #endif /*_MH5ROOT_H*/
 All Data Structures Files Functions Variables Typedefs Defines