X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.h;h=548e67935366f5f5102962f4a8504d15d2865871;hb=6d22f1376c2fcad7c872db608630468d3abcca23;hp=e8809171ba4dc50c45bac98e6ada3d9351f9d309;hpb=dfc81d564ff8df06a3fb5635d77a2b9a31afde7b;p=swftools.git diff --git a/lib/rfxswf.h b/lib/rfxswf.h index e880917..548e679 100644 --- a/lib/rfxswf.h +++ b/lib/rfxswf.h @@ -71,6 +71,10 @@ extern "C" { #define REVERSESWAP32(s) (REVERSESWAP16(((s)>>16)&0x0000ffff)|((REVERSESWAP16(s)<<16)&0xffff0000)) #endif +#define ALLOC_ARRAY(type, num) (((type)*)rfxalloc(sizeof(type)*(num))) +void* rfxalloc(int size); +void rfxdealloc(void*data); + // SWF Types typedef unsigned long U32; @@ -220,6 +224,7 @@ int swf_DeleteTag(TAG * t); void swf_ClearTag(TAG * t); //frees tag data void swf_ResetTag(TAG*tag, U16 id); //set's tag position and length to 0, without freeing it +TAG* swf_CopyTag(TAG*tag, TAG*to_copy); //stores a copy of another tag into this taglist void swf_SetTagPos(TAG * t,U32 pos); // resets Bitcount U32 swf_GetTagPos(TAG * t); @@ -726,6 +731,9 @@ void swf_Optimize(SWF*swf); U8 swf_isDefiningTag(TAG * t); U8 swf_isPseudoDefiningTag(TAG * t); U8 swf_isAllowedSpriteTag(TAG * t); +U8 swf_isImageTag(TAG*tag); +U8 swf_isShapeTag(TAG*tag); + U16 swf_GetDefineID(TAG * t); SRECT swf_GetDefineBBox(TAG * t); void swf_SetDefineID(TAG * t, U16 newid);