X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fpython%2Ftag.h;h=40130380a753a9981a37db96eab4748085ed5f5f;hb=180972a54ec5b2e0b4d0667092dbd38f7f90574e;hp=dcdbec1a9d834e52cecb2149325a770f5cca1b90;hpb=3281edc9ef69c0ba876f0146f55540227aa6a7fb;p=swftools.git diff --git a/lib/python/tag.h b/lib/python/tag.h index dcdbec1..4013038 100644 --- a/lib/python/tag.h +++ b/lib/python/tag.h @@ -23,15 +23,33 @@ #ifndef __tag_h__ #define __tag_h__ -#include "../rfxswf.h" -#undef HAVE_STAT #include +#undef HAVE_STAT +#include "../rfxswf.h" -extern PyTypeObject TagClass; - +#include "tagmap.h" + +typedef struct _tag_internals +{ + int (*parse)(struct _tag_internals*); + int (*fillTAG)(struct _tag_internals*); + void (*dealloc)(struct _tag_internals*); + int datasize; + void*data; + PyMethodDef* tagfunctions; + TAG*tag; + PyObject* tagmap; +} tag_internals_t; + +PyObject* tag_new(tag_internals_t*tag_internals); PyObject* tag_new2(TAG*_tag, PyObject* tagmap); TAG* tag_getTAG(PyObject*self, TAG*prevTag, PyObject*tagmap); PyObject* tag_getDependencies(PyObject*self); +tag_internals_t* tag_getinternals(PyObject*tag); +void register_tag(int id, tag_internals_t*spec); PyMethodDef* tag_getMethods(); + +extern PyTypeObject TagClass; + #endif