MHEG5
15.3.0
|
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 _MH5DYNAMICLINEART_H 00031 #define _MH5DYNAMICLINEART_H 00032 00033 /*---includes for this file--------------------------------------------------*/ 00034 #include "mh5lineart.h" 00035 00036 /*---Constant and macro definitions for public use---------------------------*/ 00037 00038 /*---Enumerations for public use---------------------------------------------*/ 00039 00040 /*---Global type defs for public use-----------------------------------------*/ 00041 typedef struct sMHEG5DrawAction *pMHEG5DrawAction; 00042 00043 typedef struct 00044 { 00045 /* Base class */ 00046 MHEG5Lineart lineart; 00047 00048 /* No exchanged attributes for this class */ 00049 00050 /* internal attributes for this class */ 00051 pMHEG5DrawAction drawing; 00052 00053 } MHEG5DynamicLineart; 00054 00055 /*---Global variable declarations for public use-----------------------------*/ 00056 00057 /*---Global Function prototypes for public use-------------------------------*/ 00058 00070 void MHEG5dynamicLineartInit(MHEG5DynamicLineart *dla); 00071 00072 00080 void MHEG5dynamicLineartFree(MHEG5DynamicLineart *dla); 00081 00082 /* 00083 Internal behaviours 00084 */ 00085 void MHEG5dynamicLineartPrepare(MHEG5DynamicLineart *dynamicLineart); 00086 void MHEG5dynamicLineartActivate(MHEG5DynamicLineart *dynamicLineart); 00087 void MHEG5dynamicLineartDeactivate(MHEG5DynamicLineart *dynamicLineart); 00088 void MHEG5dynamicLineartDestruct(MHEG5DynamicLineart *dynamicLineart); 00089 00090 MHEG5ErrorCode MHEG5getLineWidth(MHEG5Root *target, MHEG5GList *params); 00091 MHEG5ErrorCode MHEG5getLineStyle(MHEG5Root *target, MHEG5GList *params); 00092 MHEG5ErrorCode MHEG5getLineColour(MHEG5Root *target, MHEG5GList *params); 00093 MHEG5ErrorCode MHEG5getFillColour(MHEG5Root *target, MHEG5GList *params); 00094 MHEG5ErrorCode MHEG5drawArc(MHEG5Root *target, MHEG5GList *params); 00095 MHEG5ErrorCode MHEG5drawSector(MHEG5Root *target, MHEG5GList *params); 00096 MHEG5ErrorCode MHEG5drawLine(MHEG5Root *target, MHEG5GList *params); 00097 MHEG5ErrorCode MHEG5drawOval(MHEG5Root *target, MHEG5GList *params); 00098 MHEG5ErrorCode MHEG5drawPolygon(MHEG5Root *target, MHEG5GList *params); 00099 MHEG5ErrorCode MHEG5drawPolyline(MHEG5Root *target, MHEG5GList *params); 00100 MHEG5ErrorCode MHEG5drawRectangle(MHEG5Root *target, MHEG5GList *params); 00101 MHEG5ErrorCode MHEG5clear(MHEG5Root *target, MHEG5GList *params); 00102 00103 void MHEG5freeDynamicLineart( MHEG5DynamicLineart *dynamicLineart ); 00104 void MHEG5initDynamicLineart( MHEG5DynamicLineart *dynamicLineart ); 00105 00106 /* 00107 Debug 00108 */ 00109 #ifdef MH5PRINTOUT 00110 void MHEG5dynamicLineartPrint(MHEG5DynamicLineart *dynamicLineart, char *out); 00111 #endif 00112 00113 #endif /*_MH5DYNAMICLINEART_H*/