MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
mh5dynamiclineart.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 _MH5DYNAMICLINEART_H
31 #define _MH5DYNAMICLINEART_H
32 
33 /*---includes for this file--------------------------------------------------*/
34 #include "mh5lineart.h"
35 
36 /*---Constant and macro definitions for public use---------------------------*/
37 
38 /*---Enumerations for public use---------------------------------------------*/
39 
40 /*---Global type defs for public use-----------------------------------------*/
41 typedef struct sMHEG5DrawAction *pMHEG5DrawAction;
42 
43 typedef struct
44 {
45  /* Base class */
46  MHEG5Lineart lineart;
47 
48  /* No exchanged attributes for this class */
49 
50  /* internal attributes for this class */
51  pMHEG5DrawAction drawing;
52 
54 
55 /*---Global variable declarations for public use-----------------------------*/
56 
57 /*---Global Function prototypes for public use-------------------------------*/
58 
71 
72 
81 
82 /*
83  Internal behaviours
84  */
89 
90 MHEG5ErrorCode MHEG5getLineWidth(MHEG5Root *target, MHEG5GList *params);
91 MHEG5ErrorCode MHEG5getLineStyle(MHEG5Root *target, MHEG5GList *params);
92 MHEG5ErrorCode MHEG5getLineColour(MHEG5Root *target, MHEG5GList *params);
93 MHEG5ErrorCode MHEG5getFillColour(MHEG5Root *target, MHEG5GList *params);
94 MHEG5ErrorCode MHEG5drawArc(MHEG5Root *target, MHEG5GList *params);
95 MHEG5ErrorCode MHEG5drawSector(MHEG5Root *target, MHEG5GList *params);
96 MHEG5ErrorCode MHEG5drawLine(MHEG5Root *target, MHEG5GList *params);
97 MHEG5ErrorCode MHEG5drawOval(MHEG5Root *target, MHEG5GList *params);
98 MHEG5ErrorCode MHEG5drawPolygon(MHEG5Root *target, MHEG5GList *params);
99 MHEG5ErrorCode MHEG5drawPolyline(MHEG5Root *target, MHEG5GList *params);
100 MHEG5ErrorCode MHEG5drawRectangle(MHEG5Root *target, MHEG5GList *params);
101 MHEG5ErrorCode MHEG5clear(MHEG5Root *target, MHEG5GList *params);
102 
103 void MHEG5freeDynamicLineart( MHEG5DynamicLineart *dynamicLineart );
104 void MHEG5initDynamicLineart( MHEG5DynamicLineart *dynamicLineart );
105 
106 /*
107  Debug
108  */
109 #ifdef MH5PRINTOUT
110 void MHEG5dynamicLineartPrint(MHEG5DynamicLineart *dynamicLineart, char *out);
111 #endif
112 
113 #endif /*_MH5DYNAMICLINEART_H*/
MHEG5ErrorCode MHEG5getLineWidth(MHEG5Root *target, MHEG5GList *params)
Retrieve the current Line Width of the DynamicLineart object Implementation of the GetLineWidth actio...
Definition: mh5dynamiclineart.c:558
MHEG5ErrorCode MHEG5getLineColour(MHEG5Root *target, MHEG5GList *params)
Retrieve the current LineColour of the DynamicLineart Object Implementation of the GetLineColour acti...
Definition: mh5dynamiclineart.c:656
void MHEG5dynamicLineartDeactivate(MHEG5DynamicLineart *dynamicLineart)
Apply the deactivation behaviour of the dynamiclineart class.
Definition: mh5dynamiclineart.c:519
Implement the MHEG5 LineArt Class. Defines functionality associated with vectorial representation of ...
MHEG5ErrorCode MHEG5drawArc(MHEG5Root *target, MHEG5GList *params)
Draws an arc between "StartAngle" and "StartAngle" + "ArcAngle". Implementation of the DrawArc action...
Definition: mh5dynamiclineart.c:790
MHEG5ErrorCode MHEG5drawRectangle(MHEG5Root *target, MHEG5GList *params)
Draws a rectangle. Implementation of the DrawRectangle action of the dynamiclineart class...
Definition: mh5dynamiclineart.c:940
MHEG5ErrorCode MHEG5drawPolygon(MHEG5Root *target, MHEG5GList *params)
Draw a closed polygon. Implementation of the DrawPolygon action of the dynamiclineart class...
Definition: mh5dynamiclineart.c:888
void MHEG5dynamicLineartPrepare(MHEG5DynamicLineart *dynamicLineart)
Apply the preparation behaviour of the dynamiclineart class Apply the preparation behaviour of the dy...
Definition: mh5dynamiclineart.c:484
Definition: mh5base.h:169
MHEG5ErrorCode MHEG5getFillColour(MHEG5Root *target, MHEG5GList *params)
Retrieve the current FillColour of the Dynamic Lineart object. Implementation of the GetFillColour ac...
Definition: mh5dynamiclineart.c:723
void MHEG5dynamicLineartInit(MHEG5DynamicLineart *dla)
<Function description>="">
Definition: mh5dynamiclineart.c:394
Definition: mh5dynamiclineart.h:43
MHEG5ErrorCode MHEG5clear(MHEG5Root *target, MHEG5GList *params)
Fills up the bounding box with the OriginalRefFillColour. Implementation of the Clear action of the d...
Definition: mh5dynamiclineart.c:966
void MHEG5initDynamicLineart(MHEG5DynamicLineart *dynamicLineart)
Create the canvas for a dynamic lineart object.
Definition: mh5dynamiclineart.c:421
MHEG5ErrorCode MHEG5drawOval(MHEG5Root *target, MHEG5GList *params)
Draws an ellipse bounded by the rectangle defined by the parameters. Implementation of the DrawOval a...
Definition: mh5dynamiclineart.c:862
MHEG5ErrorCode MHEG5drawLine(MHEG5Root *target, MHEG5GList *params)
Draws a line between ("X1", "Y1") and ("X2", "Y2"). Implementation of the DrawLine action of the dyna...
Definition: mh5dynamiclineart.c:837
MHEG5ErrorCode MHEG5drawPolyline(MHEG5Root *target, MHEG5GList *params)
Draws series of joint lines. Implementation of the DrawPolyline action of the dynamiclineart class...
Definition: mh5dynamiclineart.c:914
Definition: mh5root.h:43
void MHEG5dynamicLineartFree(MHEG5DynamicLineart *dla)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
Definition: mh5dynamiclineart.c:408
void MHEG5freeDynamicLineart(MHEG5DynamicLineart *dynamicLineart)
Create the canvas for a dynamic lineart object.
Definition: mh5dynamiclineart.c:465
MHEG5ErrorCode MHEG5drawSector(MHEG5Root *target, MHEG5GList *params)
Draws a sector between "StartAngle" and "StartAngle" + "ArcAngle". Implementation of the DrawSector a...
Definition: mh5dynamiclineart.c:814
MHEG5ErrorCode MHEG5getLineStyle(MHEG5Root *target, MHEG5GList *params)
Retrieve the current Line Style of the DynamicLineArt object Implementation of the GetLineStyle actio...
Definition: mh5dynamiclineart.c:607
void MHEG5dynamicLineartDestruct(MHEG5DynamicLineart *dynamicLineart)
Destruct a dynamiclineart object.
Definition: mh5dynamiclineart.c:534
void MHEG5dynamicLineartActivate(MHEG5DynamicLineart *dynamicLineart)
Apply the activation behaviour of the dynamiclineart class.
Definition: mh5dynamiclineart.c:496
Definition: mh5lineart.h:48