MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
mh5root.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  * Copyright © 2000 Koninklijke Philips Electronics N.V
5  *
6  * This file is part of a DTVKit Software Component
7  * You are permitted to copy, modify or distribute this file subject to the terms
8  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
9  *
10  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
11  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
12  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
13  *
14  * If you or your organisation is not a member of DTVKit then you have access
15  * to this source code outside of the terms of the licence agreement
16  * and you are expected to delete this and any associated files immediately.
17  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
18  *******************************************************************************/
30 #ifndef _MH5ROOT_H
31 #define _MH5ROOT_H
32 
33 /*---includes for this file--------------------------------------------------*/
34 
35 #include "mh5base.h"
36 
37 /*---Constant and macro definitions for public use---------------------------*/
38 
39 /*---Enumerations for public use---------------------------------------------*/
40 
41 /*---Global type defs for public use-----------------------------------------*/
42 
43 typedef struct sMHEG5Root
44 {
45  /* No base class for this class */
46 
47  /* Exchanged attributes */
48  MHEG5Int id;
49 
50  /* Internal attributes */
51  MHEG5Bool runningStatus;
52  MHEG5Bool availabilityStatus;
53 
54  /* Engine data */
55  MHEG5Final clazz;
56 
57  MH5GroupPtr grp;
58 } MHEG5Root;
59 
60 /*---Global variable declarations for public use-----------------------------*/
61 
62 /*---Global Function prototypes for public use-------------------------------*/
63 
64 /*
65  Constructor
66  */
72 void MHEG5rootInit(MHEG5Root *root);
73 
74 
82 void MHEG5rootFree(MHEG5Root *root);
83 
84 
85 /*
86  Clone
87  */
94 void MHEG5rootClone(MHEG5Root *destination, MHEG5Root *source);
95 
96 
97 /*
98  Internal behaviours
99  */
120 void MHEG5rootPrepare(MHEG5Root *root);
121 
122 
144 void MHEG5rootActivate(MHEG5Root *root);
145 
146 
160 void MHEG5rootDeactivate(MHEG5Root *root);
161 
162 
191 void MHEG5rootDestruct(MHEG5Root *root);
192 
193 /*
194  Actions
195  */
213 MHEG5ErrorCode MHEG5getAvailabilityStatus(MHEG5Root *target, MHEG5GList *params);
214 
215 
232 MHEG5ErrorCode MHEG5getRunningStatus(MHEG5Root *target, MHEG5GList *params);
233 
234 
235 /*
236  Debug
237  */
238 #ifdef MH5PRINTOUT
239 
245 void MHEG5rootPrint(MHEG5Root *root, char *out);
246 #endif /* #ifdef MH5PRINTOUT */
247 
248 #endif /*_MH5ROOT_H*/
Basis MHEG5 data types.
void MHEG5rootClone(MHEG5Root *destination, MHEG5Root *source)
Implementation of the root part of the Close action.
Definition: mh5root.c:110
void MHEG5rootDestruct(MHEG5Root *root)
Implementation of the Destruction behaviour Destruction This behaviour has the basic semantics of ask...
Definition: mh5root.c:247
MHEG5ErrorCode MHEG5getAvailabilityStatus(MHEG5Root *target, MHEG5GList *params)
Implementation of the GetAvailabilityStatus action GetAvailabilityStatus (AvailabilityStatusVar) Set ...
Definition: mh5root.c:284
Definition: mh5group.h:47
MHEG5ErrorCode MHEG5getRunningStatus(MHEG5Root *target, MHEG5GList *params)
Implementation of the GetRunningStatus action GetRunningStatus (RunningStatusVar) Set the Variable re...
Definition: mh5root.c:336
Definition: mh5base.h:169
void MHEG5rootPrepare(MHEG5Root *root)
Implementation of the Preparation behaviour Preparation This behaviour has the basic semantics of all...
Definition: mh5root.c:139
void MHEG5rootDeactivate(MHEG5Root *root)
Implementation of the Deactivation behaviour Deactivation This behaviour has the basic semantics of n...
Definition: mh5root.c:210
void MHEG5rootInit(MHEG5Root *root)
Initialise a Root object with default values.
Definition: mh5root.c:87
Definition: mh5root.h:43
void MHEG5rootActivate(MHEG5Root *root)
Implementation of the Activation behaviour Activation This behaviour has the basic semantics of immed...
Definition: mh5root.c:187
void MHEG5rootFree(MHEG5Root *root)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
Definition: mh5root.c:99