MHEG5  18.9.0
MHEG5 Documentation
mh5hotspot.c
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  *******************************************************************************/
31 /*---includes for this file--------------------------------------------------*/
32 #include <stdlib.h>
33 
34 #include "mh5profile.h"
35 #include "mh5hotspot.h"
36 #include "mh5memory.h" /*for constructor/destructor */
37 
38 #ifndef MHEG5PROFILE_UK1_06
39 
40 /*
41  Debug
42  */
43 #ifdef MH5PRINTOUT
44 
45 void MHEG5hotspotPrint(MHEG5Hotspot *hotspot, char *out)
46 {
47  MHEG5buttonPrint(&hotspot->button, out);
48 }
49 
50 #endif
51 
52 
53 /*
54  Constructor
55  */
62 {
63  assert(hotspot);
64 
65  MHEG5buttonInit(&hotspot->button);
66 }
67 
76 {
77  assert(hotspot);
78 
79  MHEG5buttonFree(&hotspot->button);
80 }
81 
82 /*
83  Internal behaviours
84  */
85 /*
86  32.3 Internal behaviours
87  this class has the same behaviours as its base class, with identical semantics.
88  */
90 {
91  assert(hotspot);
92  MHEG5buttonPrepare(&hotspot->button);
93 }
94 
96 {
97  assert(hotspot);
98  MHEG5buttonActivate(&hotspot->button);
99 }
100 
102 {
103  assert(hotspot);
104  MHEG5buttonDeactivate(&hotspot->button);
105 }
106 
108 {
109  assert(hotspot);
110  MHEG5buttonDestruct(&hotspot->button);
111 }
112 
113 #endif
void MHEG5hotspotInit(MHEG5Hotspot *hotspot)
Initialise a hotspot object with default values.
Definition: mh5hotspot.c:61
void MHEG5hotspotDeactivate(MHEG5Hotspot *hotspot)
Definition: mh5hotspot.c:101
void MHEG5hotspotActivate(MHEG5Hotspot *hotspot)
Definition: mh5hotspot.c:95
Implement the MHEG5 Hotspot Class. Defines invisible unlabelled rectangular areas on the screen that ...
void MHEG5buttonActivate(MHEG5Button *button)
Apply the activation behaviour of the button class. As this class has no own activation behaviour thi...
Definition: mh5button.c:145
void MHEG5hotspotPrepare(MHEG5Hotspot *hotspot)
Definition: mh5hotspot.c:89
void MHEG5buttonInit(MHEG5Button *button)
<Function description>="">
Definition: mh5button.c:94
void MHEG5hotspotDestruct(MHEG5Hotspot *hotspot)
Definition: mh5hotspot.c:107
This file defines the profile for the MHEG engine.
void MHEG5buttonFree(MHEG5Button *button)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
Definition: mh5button.c:109
redirection include
void MHEG5buttonDestruct(MHEG5Button *button)
Destruct a button object.
Definition: mh5button.c:179
void MHEG5buttonPrepare(MHEG5Button *button)
Apply the preparation behaviour of the button class Apply the preparation behaviour of the button cla...
Definition: mh5button.c:128
void MHEG5buttonDeactivate(MHEG5Button *button)
Apply the deactivation behaviour of the button class. As this class has no own deactivation behaviour...
Definition: mh5button.c:163
MHEG5Button button
Definition: mh5hotspot.h:41
void MHEG5hotspotFree(MHEG5Hotspot *hotspot)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
Definition: mh5hotspot.c:75