diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-05-28 18:31:05 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-05-28 18:31:05 +0200 |
| commit | ec9447ad5fbd6a818633e7b347f589a1da973b8b (patch) | |
| tree | 3194ef2ec6dc38dba2ab74ff0338e7aa3ae24407 /src/tools | |
| parent | 26b01d56f59bc17f48044ce79fbea41a7e2439cb (diff) | |
| download | box64-ec9447ad5fbd6a818633e7b347f589a1da973b8b.tar.gz box64-ec9447ad5fbd6a818633e7b347f589a1da973b8b.zip | |
Added GstTaskPoll to gtkclass wrapping
Diffstat (limited to 'src/tools')
| -rwxr-xr-x | src/tools/gtkclass.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/tools/gtkclass.c b/src/tools/gtkclass.c index e647f7b1..c41674e6 100755 --- a/src/tools/gtkclass.c +++ b/src/tools/gtkclass.c @@ -2398,6 +2398,49 @@ static void bridgeGstAllocatorClass(my_GstAllocatorClass_t* class) #undef SUPERGO +// ----- GstTaskPoolClass ------ +// wrapper x86 -> natives of callbacks +WRAPPER(GstTaskPool, prepare, void, (void* pool, void* error), "pp", pool, error); +WRAPPER(GstTaskPool, cleanup, void, (void* pool), "p", pool); +WRAPPER(GstTaskPool, push, void*, (void* pool, void* func, void* user_data, void* error), "pppp", pool, AddCheckBridge(my_bridge, vFp, func, 0, NULL), user_data, error); +WRAPPER(GstTaskPool, join, void, (void* pool, void* id), "pp", pool, id); +WRAPPER(GstTaskPool, dispose_handle, void, (void* pool, void* id), "pp", pool, id); + +#define SUPERGO() \ + GO(prepare, vFpp); \ + GO(cleanup, vFp); \ + GO(push, pFpppp); \ + GO(join, vFpp); \ + GO(dispose_handle, vFpp); \ + +// wrap (so bridge all calls, just in case) +static void wrapGstTaskPoolClass(my_GstTaskPoolClass_t* class) +{ + wrapGstObjectClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GstTaskPool (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGstTaskPoolClass(my_GstTaskPoolClass_t* class) +{ + unwrapGstObjectClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GstTaskPool (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGstTaskPoolClass(my_GstTaskPoolClass_t* class) +{ + bridgeGstObjectClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GstTaskPool (W, class->A) + SUPERGO() + #undef GO +} + +#undef SUPERGO + + // No more wrap/unwrap #undef WRAPPER #undef FIND |