MythTV  master
Root.h
Go to the documentation of this file.
1 /* Root.h
2 
3  Copyright (C) David C. J. Matthews 2004 dm at prolingua.co.uk
4 
5  This program is free software; you can redistribute it and/or
6  modify it under the terms of the GNU General Public License
7  as published by the Free Software Foundation; either version 2
8  of the License, or (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
18  Or, point your browser to http://www.gnu.org/copyleft/gpl.html
19 
20 */
21 
22 
23 #if !defined(ROOTCLASS_H)
24 #define ROOTCLASS_H
25 
26 #include "BaseClasses.h"
27 #include "BaseActions.h"
28 class MHParseNode;
29 class MHLink;
30 class MHIngredient;
31 class MHEngine;
32 
40  // The next two events are added in UK MHEG.
42 
43 class MHRoot
44 {
45  public:
46  MHRoot() = default;
47  MHRoot(const MHRoot &/*ref*/) {}
48  virtual ~MHRoot() = default;
49  // Initialise - set up the item from the parse tree.
50  virtual void Initialise(MHParseNode *p, MHEngine *engine); // Set this up from the parse tree.
51  // Print this item.
52  virtual void PrintMe(FILE *fd, int nTabs) const;
53  // Test for shared status.
54  virtual bool IsShared() { return false; }
55 
56  // MHEG Actions.
57  // Preparation - sets up the run-time representation. Sets m_fAvailable and generates IsAvailable event.
58  virtual void Preparation(MHEngine *engine);
59  // Activation - starts running the object. Sets m_fRunning and generates IsRunning event.
60  virtual void Activation(MHEngine *engine);
61  // Deactivation - stops running the object. Clears m_fRunning
62  virtual void Deactivation(MHEngine *engine);
63  // Destruction - deletes the run-time representation. Clears m_fAvailable.
64  virtual void Destruction(MHEngine *engine);
65  // Prepare the content - This action is added in the corrigendum to the standard.
66  virtual void ContentPreparation(MHEngine */*engine*/) {}
67 
68  // Return an object with a given object number. In the root class this returns this object
69  // if it matches. Group and Stream classes also search their components.
70  virtual MHRoot *FindByObjectNo(int n);
71 
72  // Actions. The default behaviour if a sub-class doesn't override them is to fail.
73 
74  // Actions on Root class
75  virtual bool GetAvailabilityStatus() { return m_fAvailable; }
76  virtual bool GetRunningStatus() { return m_fRunning; }
77 
78  // Actions on Groups
79  virtual void SetTimer(int/*nTimerId*/, bool/*fAbsolute*/, int /*nMilliSecs*/, MHEngine */*engine*/)
80  { InvalidAction("SetTimer"); }
81  // This isn't an MHEG action as such but is used as part of the implementation of "Clone"
82  virtual void MakeClone(MHRoot* /*pTarget*/, MHRoot* /*pRef*/, MHEngine */*engine*/)
83  { InvalidAction("MakeClone"); }
84  virtual void SetInputRegister(int /*nReg*/, MHEngine */*engine*/)
85  { InvalidAction("SetInputRegister"); }
86 
87  // Actions on Ingredients.
88  virtual void SetData(const MHOctetString &/*included*/, MHEngine */*engine*/)
89  { InvalidAction("SetData"); }
90  virtual void SetData(const MHContentRef &/*referenced*/, bool /*fSizeGiven*/,
91  int /*size*/, bool /*fCCGiven*/, int /*cc*/, MHEngine */*engine*/)
92  { InvalidAction("SetData"); }
93  virtual void Preload(MHEngine */*engine*/) { InvalidAction("Preload"); }
94  virtual void Unload(MHEngine */*engine*/) { InvalidAction("Unload"); }
95  // The UK MHEG profile only requires cloning for Text, Bitmap and Rectangle.
96  virtual MHIngredient *Clone(MHEngine */*engine*/) { InvalidAction("Clone"); return nullptr; }
97 
98  // Actions on Presentables. The Run/Stop actions on presentables and the Activate/Deactivate actions
99  // on Links have identical effects. They could be merged.
100  virtual void Run(MHEngine */*engine*/) { InvalidAction("Run"); }
101  virtual void Stop(MHEngine */*engine*/) { InvalidAction("Stop"); }
102 
103  // Actions on variables.
104  virtual void TestVariable(int /*nOp*/, const MHUnion &/*parm*/, MHEngine */*engine*/)
105  { InvalidAction("TestVariable"); }
106  virtual void GetVariableValue(MHUnion &/*value*/, MHEngine */*engine*/)
107  { InvalidAction("GetVariableValue"); }
108  virtual void SetVariableValue(const MHUnion &/*value*/)
109  { InvalidAction("SetVariableValue"); }
110 
111  // Actions on Text objects
112  virtual void GetTextData(MHRoot * /*pDestination*/, MHEngine */*engine*/)
113  { InvalidAction("GetTextData"); }
114  virtual void SetBackgroundColour(const MHColour &/*colour*/, MHEngine */*engine*/)
115  { InvalidAction("SetBackgroundColour"); }
116  virtual void SetTextColour(const MHColour &/*colour*/, MHEngine */*engine*/)
117  { InvalidAction("SetTextColour"); }
118  virtual void SetFontAttributes(const MHOctetString &/*fontAttrs*/, MHEngine */*engine*/)
119  { InvalidAction("SetFontAttributes"); }
120 
121  // Actions on Links
122  virtual void Activate(bool /*f*/, MHEngine */*engine*/)
123  { InvalidAction("Activate/Deactivate"); } // Activate/Deactivate
124 
125  // Actions on Programs.
126  virtual void CallProgram(bool /*fIsFork*/, const MHObjectRef &/*success*/,
127  const MHSequence<MHParameter *> &/*args*/, MHEngine */*engine*/)
128  { InvalidAction("CallProgram"); }
129 
130  // Actions on TokenGroups
131  virtual void CallActionSlot(int /*n*/, MHEngine */*engine*/) { InvalidAction("CallActionSlot"); }
132  virtual void Move(int /*n*/, MHEngine */*engine*/) { InvalidAction("Move"); }
133  virtual void MoveTo(int /*n*/, MHEngine */*engine*/) { InvalidAction("MoveTo"); }
134  virtual void GetTokenPosition(MHRoot * /*pResult*/, MHEngine */*engine*/)
135  { InvalidAction("GetTokenPosition"); }
136 
137  // Actions on ListGroups
138  virtual void AddItem(int /*nIndex*/, MHRoot * /*pItem*/, MHEngine */*engine*/)
139  { InvalidAction("GetCellItem"); }
140  virtual void DelItem(MHRoot * /*pItem*/, MHEngine */*engine*/)
141  { InvalidAction("GetCellItem"); }
142  virtual void GetCellItem(int /*nCell*/, const MHObjectRef &/*itemDest*/, MHEngine */*engine*/)
143  { InvalidAction("GetCellItem"); }
144  virtual void GetListItem(int /*nCell*/, const MHObjectRef &/*itemDest*/, MHEngine */*engine*/)
145  { InvalidAction("GetCellItem"); }
146  virtual void GetItemStatus(int /*nCell*/, const MHObjectRef &/*itemDest*/, MHEngine */*engine*/)
147  { InvalidAction("GetItemStatus"); }
148  virtual void SelectItem(int /*nCell*/, MHEngine */*engine*/) { InvalidAction("SelectItem"); }
149  virtual void DeselectItem(int /*nCell*/, MHEngine */*engine*/) { InvalidAction("DeselectItem"); }
150  virtual void ToggleItem(int /*nCell*/, MHEngine */*engine*/) { InvalidAction("ToggleItem"); }
151  virtual void ScrollItems(int /*nCell*/, MHEngine */*engine*/) { InvalidAction("ScrollItems"); }
152  virtual void SetFirstItem(int /*nCell*/, MHEngine */*engine*/) { InvalidAction("SetFirstItem"); }
153  virtual void GetFirstItem(MHRoot * /*pResult*/, MHEngine */*engine*/) { InvalidAction("GetFirstItem"); }
154  virtual void GetListSize(MHRoot * /*pResult*/, MHEngine */*engine*/) { InvalidAction("GetListSize"); }
155 
156  // Actions on Visibles.
157  virtual void SetPosition(int /*nXPosition*/, int /*nYPosition*/, MHEngine */*engine*/)
158  { InvalidAction("SetPosition"); }
159  virtual void GetPosition(MHRoot * /*pXPosN*/, MHRoot * /*pYPosN*/)
160  { InvalidAction("GetPosition"); }
161  virtual void SetBoxSize(int /*nWidth*/, int /*nHeight*/, MHEngine */*engine*/)
162  { InvalidAction("SetBoxSize"); }
163  virtual void GetBoxSize(MHRoot * /*pWidthDest*/, MHRoot * /*HeightDest*/)
164  { InvalidAction("GetBoxSize"); }
165  virtual void SetPaletteRef(const MHObjectRef /*newPalette*/, MHEngine */*engine*/)
166  { InvalidAction("SetPaletteRef"); }
167  virtual void BringToFront(MHEngine */*engine*/) { InvalidAction("BringToFront"); }
168  virtual void SendToBack(MHEngine */*engine*/) { InvalidAction("SendToBack"); }
169  virtual void PutBefore(const MHRoot * /*pRef*/, MHEngine */*engine*/) { InvalidAction("PutBefore"); }
170  virtual void PutBehind(const MHRoot * /*pRef*/, MHEngine */*engine*/) { InvalidAction("PutBehind"); }
171  virtual void ResetPosition() { InvalidAction("ResetPosition"); } // Used internally by ListGroup
172 
173  // Actions on LineArt
174  virtual void SetFillColour(const MHColour &/*colour*/, MHEngine */*engine*/)
175  { InvalidAction("SetFillColour"); }
176  virtual void SetLineColour(const MHColour &/*colour*/, MHEngine */*engine*/)
177  { InvalidAction("SetLineColour"); }
178  virtual void SetLineWidth(int /*nWidth*/, MHEngine */*engine*/) { InvalidAction("SetLineWidth"); }
179  virtual void SetLineStyle(int /*nStyle*/, MHEngine */*engine*/) { InvalidAction("SetLineStyle"); }
180 
181  // Actions on Bitmaps
182  virtual void SetTransparency(int /*nTransPerCent*/, MHEngine */*engine*/)
183  { InvalidAction("SetTransparency"); }
184  virtual void ScaleBitmap(int /*xScale*/, int /*yScale*/, MHEngine */*engine*/)
185  { InvalidAction("ScaleBitmap"); }
186  virtual void SetBitmapDecodeOffset(int /*newXOffset*/, int /*newYOffset*/, MHEngine */*engine*/)
187  { InvalidAction("SetBitmapDecodeOffset"); }
188  virtual void GetBitmapDecodeOffset(MHRoot * /*pXOffset*/, MHRoot * /*pYOffset*/)
189  { InvalidAction("GetBitmapDecodeOffset"); }
190 
191  // Actions on Dynamic Line Art
192  virtual void Clear() { InvalidAction(""); }
193  virtual void GetLineWidth(MHRoot * /*pResult*/) { InvalidAction("GetLineWidth"); }
194  virtual void GetLineStyle(MHRoot * /*pResult*/) { InvalidAction("GetLineStyle"); }
195  virtual void GetLineColour(MHRoot * /*pResult*/) { InvalidAction("GetLineColour"); }
196  virtual void GetFillColour(MHRoot * /*pResult*/) { InvalidAction("GetFillColour"); }
197  virtual void DrawArcSector(bool /*fIsSector*/, int /*x*/, int /*y*/, int /*width*/, int /*height*/, int /*start*/,
198  int /*arc*/, MHEngine */*engine*/) { InvalidAction("DrawArc/Sector"); }
199  virtual void DrawLine(int /*x1*/, int /*y1*/, int /*x2*/, int /*y2*/, MHEngine */*engine*/)
200  { InvalidAction("DrawLine"); }
201  virtual void DrawOval(int /*x1*/, int /*y1*/, int /*width*/, int /*height*/, MHEngine */*engine*/)
202  { InvalidAction("DrawOval"); }
203  virtual void DrawRectangle(int /*x1*/, int /*y1*/, int /*x2*/, int /*y2*/, MHEngine */*engine*/)
204  { InvalidAction("DrawRectangle"); }
205  virtual void DrawPoly(bool /*fIsPolygon*/, int /*nPoints*/, const int * /*xArray*/, const int * /*yArray*/, MHEngine */*engine*/)
206  { InvalidAction("DrawPoly(gon/line)"); }
207 
208  // Actions on Video streams.
209  virtual void ScaleVideo(int /*xScale*/, int /*yScale*/, MHEngine */*engine*/)
210  { InvalidAction("ScaleVideo"); }
211  virtual void SetVideoDecodeOffset(int /*newXOffset*/, int /*newYOffset*/, MHEngine */*engine*/)
212  { InvalidAction("SetVideoDecodeOffset"); }
213  virtual void GetVideoDecodeOffset(MHRoot * /*pXOffset*/, MHRoot * /*pYOffset*/, MHEngine */*engine*/)
214  { InvalidAction("GetVideoDecodeOffset"); }
215  virtual void GetCounterPosition(MHRoot * /*pPos*/, MHEngine */*engine*/)
216  { InvalidAction("GetCounterPosition"); }
217  virtual void GetCounterMaxPosition(MHRoot * /*pPos*/, MHEngine */*engine*/)
218  { InvalidAction("GetCounterMaxPosition"); }
219  virtual void SetCounterPosition(int /*pos*/, MHEngine */*engine*/)
220  { InvalidAction("SetCounterPosition"); }
221  virtual void SetSpeed(int /*speed 0=stop*/, MHEngine */*engine*/)
222  { InvalidAction("SetSpeed"); }
223 
224  // Actions on Interactibles.
225  virtual void SetInteractionStatus(bool /*newStatus*/, MHEngine */*engine*/)
226  { InvalidAction("SetInteractionStatus"); }
227  virtual bool GetInteractionStatus(void) { InvalidAction("GetInteractionStatus"); return false; }
228  virtual void SetHighlightStatus(bool /*newStatus*/, MHEngine */*engine*/)
229  { InvalidAction("SetHighlightStatus"); }
230  virtual bool GetHighlightStatus(void) { InvalidAction("GetHighlightStatus"); return false; }
231 
232  // Actions on Sliders.
233  virtual void Step(int /*nbSteps*/, MHEngine * /*engine*/) { InvalidAction("Step"); }
234  virtual void SetSliderValue(int /*nbSteps*/, MHEngine * /*engine*/)
235  { InvalidAction("SetSliderValue"); }
236  virtual int GetSliderValue(void) { InvalidAction("GetSliderValue"); return 0; }
237  virtual void SetPortion(int /*newPortion*/, MHEngine * /*engine*/) { InvalidAction("SetPortion"); }
238  virtual int GetPortion(void) { InvalidAction("GetPortion"); return 0; }
239  // Additional action defined in UK MHEG.
240  virtual void SetSliderParameters(int /*newMin*/, int /*newMax*/, int /*newStep*/, MHEngine * /*engine*/)
241  { InvalidAction("SetSliderParameters"); }
242 
243  protected:
244 
245  void InvalidAction(const char *actionName);
246  public:
247  MHObjectRef m_ObjectReference; // Identifier of this object.
248 
249  virtual const char *ClassName() = 0; // For debugging messages.
250  protected:
251  bool m_fAvailable {false}; // Set once Preparation has completed.
252  bool m_fRunning {false}; // Set once Activation has completed.
253 
254  friend class MHEngine;
255 };
256 
257 // Get Availability Status - Does the object exist and is it available?.
259 {
260  public:
261  MHGetAvailabilityStatus(): MHElemAction(":GetAvailabilityStatus") {}
262  void Initialise(MHParseNode *p, MHEngine *engine) override; // MHElemAction
263  void Perform(MHEngine *engine) override; // MHElemAction
264  protected:
265  void PrintArgs(FILE *fd, int /*nTabs*/) const override // MHElemAction
266  { m_ResultVar.PrintMe(fd, 0); }
268 };
269 
270 // Get Running Status - Is the object running?.
272 {
273  public:
274  MHGetRunningStatus(): MHActionObjectRef(":GetRunningStatus") {}
275  void CallAction(MHEngine */*engine*/, MHRoot *pTarget, MHRoot *pResult) override // MHActionObjectRef
276  { pResult->SetVariableValue(pTarget->GetRunningStatus());}
277 };
278 
279 #endif
virtual void GetListSize(MHRoot *, MHEngine *)
Definition: Root.h:154
virtual void SetFontAttributes(const MHOctetString &, MHEngine *)
Definition: Root.h:118
virtual void Destruction(MHEngine *engine)
Definition: Root.cpp:97
virtual void ScaleBitmap(int, int, MHEngine *)
Definition: Root.h:184
virtual void DeselectItem(int, MHEngine *)
Definition: Root.h:149
virtual void GetTextData(MHRoot *, MHEngine *)
Definition: Root.h:112
void PrintMe(FILE *fd, int nTabs) const
virtual void SetTextColour(const MHColour &, MHEngine *)
Definition: Root.h:116
virtual ~MHRoot()=default
void Perform(MHEngine *engine) override
Definition: Root.cpp:130
virtual void GetBoxSize(MHRoot *, MHRoot *)
Definition: Root.h:163
virtual bool IsShared()
Definition: Root.h:54
virtual void SetVariableValue(const MHUnion &)
Definition: Root.h:108
virtual MHRoot * FindByObjectNo(int n)
Definition: Root.cpp:115
virtual void Clear()
Definition: Root.h:192
virtual void PrintMe(FILE *fd, int nTabs) const
Definition: Root.cpp:38
virtual int GetSliderValue(void)
Definition: Root.h:236
virtual void SetSliderParameters(int, int, int, MHEngine *)
Definition: Root.h:240
virtual void ScaleVideo(int, int, MHEngine *)
Definition: Root.h:209
virtual void GetLineWidth(MHRoot *)
Definition: Root.h:193
virtual void GetCounterPosition(MHRoot *, MHEngine *)
Definition: Root.h:215
void InvalidAction(const char *actionName)
Definition: Root.cpp:45
virtual void SetFirstItem(int, MHEngine *)
Definition: Root.h:152
virtual void GetVariableValue(MHUnion &, MHEngine *)
Definition: Root.h:106
virtual void SetSliderValue(int, MHEngine *)
Definition: Root.h:234
virtual void SendToBack(MHEngine *)
Definition: Root.h:168
virtual void Activation(MHEngine *engine)
Definition: Root.cpp:69
virtual bool GetRunningStatus()
Definition: Root.h:76
bool m_fAvailable
Definition: Root.h:251
virtual void DrawPoly(bool, int, const int *, const int *, MHEngine *)
Definition: Root.h:205
virtual void Deactivation(MHEngine *engine)
Definition: Root.cpp:85
virtual void SetBitmapDecodeOffset(int, int, MHEngine *)
Definition: Root.h:186
virtual void SetPosition(int, int, MHEngine *)
Definition: Root.h:157
virtual void SetInputRegister(int, MHEngine *)
Definition: Root.h:84
virtual void DrawRectangle(int, int, int, int, MHEngine *)
Definition: Root.h:203
void PrintArgs(FILE *fd, int) const override
Definition: Root.h:265
virtual int GetPortion(void)
Definition: Root.h:238
virtual bool GetInteractionStatus(void)
Definition: Root.h:227
virtual void GetItemStatus(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:146
virtual void GetLineStyle(MHRoot *)
Definition: Root.h:194
virtual void GetListItem(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:144
virtual const char * ClassName()=0
virtual void DrawArcSector(bool, int, int, int, int, int, int, MHEngine *)
Definition: Root.h:197
void CallAction(MHEngine *, MHRoot *pTarget, MHRoot *pResult) override
Definition: Root.h:275
virtual void GetTokenPosition(MHRoot *, MHEngine *)
Definition: Root.h:134
virtual void GetLineColour(MHRoot *)
Definition: Root.h:195
virtual void SetTransparency(int, MHEngine *)
Definition: Root.h:182
virtual void Activate(bool, MHEngine *)
Definition: Root.h:122
virtual void AddItem(int, MHRoot *, MHEngine *)
Definition: Root.h:138
virtual MHIngredient * Clone(MHEngine *)
Definition: Root.h:96
virtual void Move(int, MHEngine *)
Definition: Root.h:132
virtual void DrawLine(int, int, int, int, MHEngine *)
Definition: Root.h:199
MHObjectRef m_ResultVar
Definition: Root.h:267
virtual void SetBoxSize(int, int, MHEngine *)
Definition: Root.h:161
virtual void SetLineWidth(int, MHEngine *)
Definition: Root.h:178
virtual void SetLineStyle(int, MHEngine *)
Definition: Root.h:179
virtual void SelectItem(int, MHEngine *)
Definition: Root.h:148
virtual void GetBitmapDecodeOffset(MHRoot *, MHRoot *)
Definition: Root.h:188
virtual void SetData(const MHContentRef &, bool, int, bool, int, MHEngine *)
Definition: Root.h:90
virtual bool GetAvailabilityStatus()
Definition: Root.h:75
virtual void ToggleItem(int, MHEngine *)
Definition: Root.h:150
virtual void ContentPreparation(MHEngine *)
Definition: Root.h:66
virtual void ScrollItems(int, MHEngine *)
Definition: Root.h:151
virtual void CallActionSlot(int, MHEngine *)
Definition: Root.h:131
virtual void Run(MHEngine *)
Definition: Root.h:100
virtual void DrawOval(int, int, int, int, MHEngine *)
Definition: Root.h:201
void Initialise(MHParseNode *p, MHEngine *engine) override
Definition: Root.cpp:124
MHRoot(const MHRoot &)
Definition: Root.h:47
virtual void GetFillColour(MHRoot *)
Definition: Root.h:196
virtual void DelItem(MHRoot *, MHEngine *)
Definition: Root.h:140
Definition: Root.h:43
bool m_fRunning
Definition: Root.h:252
MHObjectRef m_ObjectReference
Definition: Root.h:247
virtual void PutBefore(const MHRoot *, MHEngine *)
Definition: Root.h:169
int FILE
Definition: mythburn.py:139
virtual void SetPaletteRef(const MHObjectRef, MHEngine *)
Definition: Root.h:165
virtual bool GetHighlightStatus(void)
Definition: Root.h:230
virtual void SetTimer(int, bool, int, MHEngine *)
Definition: Root.h:79
virtual void GetCellItem(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:142
MHRoot()=default
virtual void MoveTo(int, MHEngine *)
Definition: Root.h:133
virtual void Preload(MHEngine *)
Definition: Root.h:93
virtual void Unload(MHEngine *)
Definition: Root.h:94
MHGetRunningStatus()
Definition: Root.h:274
virtual void CallProgram(bool, const MHObjectRef &, const MHSequence< MHParameter * > &, MHEngine *)
Definition: Root.h:126
virtual void MakeClone(MHRoot *, MHRoot *, MHEngine *)
Definition: Root.h:82
virtual void Initialise(MHParseNode *p, MHEngine *engine)
Definition: Root.cpp:30
virtual void PutBehind(const MHRoot *, MHEngine *)
Definition: Root.h:170
virtual void SetFillColour(const MHColour &, MHEngine *)
Definition: Root.h:174
virtual void SetCounterPosition(int, MHEngine *)
Definition: Root.h:219
virtual void ResetPosition()
Definition: Root.h:171
virtual void Stop(MHEngine *)
Definition: Root.h:101
virtual void GetCounterMaxPosition(MHRoot *, MHEngine *)
Definition: Root.h:217
virtual void SetVideoDecodeOffset(int, int, MHEngine *)
Definition: Root.h:211
virtual void SetLineColour(const MHColour &, MHEngine *)
Definition: Root.h:176
virtual void SetSpeed(int, MHEngine *)
Definition: Root.h:221
virtual void SetPortion(int, MHEngine *)
Definition: Root.h:237
virtual void BringToFront(MHEngine *)
Definition: Root.h:167
virtual void Step(int, MHEngine *)
Definition: Root.h:233
virtual void GetVideoDecodeOffset(MHRoot *, MHRoot *, MHEngine *)
Definition: Root.h:213
EventType
Definition: Root.h:33
virtual void SetBackgroundColour(const MHColour &, MHEngine *)
Definition: Root.h:114
virtual void TestVariable(int, const MHUnion &, MHEngine *)
Definition: Root.h:104
virtual void SetData(const MHOctetString &, MHEngine *)
Definition: Root.h:88
virtual void Preparation(MHEngine *engine)
Definition: Root.cpp:52
virtual void SetInteractionStatus(bool, MHEngine *)
Definition: Root.h:225
virtual void GetFirstItem(MHRoot *, MHEngine *)
Definition: Root.h:153
virtual void SetHighlightStatus(bool, MHEngine *)
Definition: Root.h:228
virtual void GetPosition(MHRoot *, MHRoot *)
Definition: Root.h:159