X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.h;h=0abb8fcc5c8e090493bb21577f3befd94968088c;hb=f71ae3218035fa627852e76e246b2752883358af;hp=727147e70528c4cced4f9921007faeceddf9f4e0;hpb=330bd87cd1a74375c70b2a9db48f8e4d63aff9c5;p=swftools.git diff --git a/lib/rfxswf.h b/lib/rfxswf.h index 727147e..0abb8fc 100644 --- a/lib/rfxswf.h +++ b/lib/rfxswf.h @@ -148,6 +148,9 @@ typedef struct _SOUNDINFO U32* right; } SOUNDINFO; +#define FILEATTRIBUTE_USENETWORK 1 +#define FILEATTRIBUTE_AS3 8 +#define FILEATTRIBUTE_SYMBOLCLASS 16 typedef struct _SWF { U8 fileVersion; U8 compressed; // SWF or SWC? @@ -168,6 +171,7 @@ int swf_WriteSWF(int handle,SWF * swf); // Writes SWF to file, returns lengt int swf_WriteCGI(SWF * swf); // Outputs SWF with valid CGI header to stdout void swf_FreeTags(SWF * swf); // Frees all malloc'ed memory for swf SWF* swf_CopySWF(SWF*swf); +void swf_ReadABCfile(char*filename, SWF*swf); // for streaming: int swf_WriteHeader(int handle,SWF * swf); // Writes Header of swf to file @@ -232,7 +236,22 @@ int swf_SetU8(TAG * t,U8 v); // resets Bitcount int swf_SetU16(TAG * t,U16 v); void swf_SetS16(TAG * t,int v); int swf_SetU32(TAG * t,U32 v); -#define swf_SetString(t,s) swf_SetBlock(t,s,strlen((const char *)s)+1) +void swf_SetString(TAG*t,const char*s); + +/* abc datatypes */ +U32 swf_GetU30(TAG*tag); +int swf_SetU30(TAG*tag, U32 u); +void swf_SetABCU32(TAG*tag, U32 u); +U32 swf_GetABCU32(TAG*tag); +void swf_SetABCS32(TAG*tag, S32 v); +S32 swf_GetABCS32(TAG*tag); +int swf_SetU30String(TAG*tag, const char*str, int len); +double swf_GetD64(TAG*tag); +int swf_SetD64(TAG*tag, double v); +int swf_GetU24(TAG*tag); +int swf_GetS24(TAG*tag); +int swf_SetU24(TAG*tag, U32 v); +int swf_SetS24(TAG*tag, U32 v); //int swf_GetPoint(TAG * t,SPOINT * p); // resets Bitcount int swf_GetRect(TAG * t,SRECT * r); @@ -599,7 +618,7 @@ void swf_FontAddLayout(SWFFONT * f, int ascent, int descent, int leading); int swf_ParseDefineText(TAG * t, void(*callback)(void*self, int*chars, int*xpos, int nr, int fontid, int fontsize, int xstart, int ystart, RGBA* color), void*self); void swf_WriteFont(SWFFONT* font, char* filename); -SWFFONT* swf_ReadFont(char* filename); +SWFFONT* swf_ReadFont(const char* filename); void swf_FontFree(SWFFONT * f); @@ -727,8 +746,12 @@ void swf_uncgi(); // same behaviour as Steven Grimm's uncgi-library // as3/abc.c void*swf_ReadABC(TAG*tag); +void*swf_DumpABC(FILE*fo, void*code, char*prefix); void swf_WriteABC(TAG*tag, void*code); +void swf_FreeABC(void*code); void swf_AddButtonLinks(SWF*swf, char stop_each_frame, char events); +TAG*swf_AddAS3FontDefine(TAG*tag, U16 id, char*fontname); +#include "as3/compiler.h" // swfaction.c