diff --git a/spine-flutter/lib/spine_flutter_bindings_generated.dart b/spine-flutter/lib/spine_flutter_bindings_generated.dart index 64c8bc329..ba9258731 100644 --- a/spine-flutter/lib/spine_flutter_bindings_generated.dart +++ b/spine-flutter/lib/spine_flutter_bindings_generated.dart @@ -124,11 +124,594 @@ class SpineFlutterBindings { spine_skeleton_data_result Function( ffi.Pointer, ffi.Pointer, int)>(); + spine_bone_data spine_skeleton_data_find_bone( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_bone( + data, + name, + ); + } + + late final _spine_skeleton_data_find_bonePtr = _lookup< + ffi.NativeFunction< + spine_bone_data Function(ffi.Pointer, + ffi.Pointer)>>('spine_skeleton_data_find_bone'); + late final _spine_skeleton_data_find_bone = + _spine_skeleton_data_find_bonePtr.asFunction< + spine_bone_data Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_slot_data spine_skeleton_data_find_slot( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_slot( + data, + name, + ); + } + + late final _spine_skeleton_data_find_slotPtr = _lookup< + ffi.NativeFunction< + spine_slot_data Function(ffi.Pointer, + ffi.Pointer)>>('spine_skeleton_data_find_slot'); + late final _spine_skeleton_data_find_slot = + _spine_skeleton_data_find_slotPtr.asFunction< + spine_slot_data Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_skin spine_skeleton_data_find_skin( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_skin( + data, + name, + ); + } + + late final _spine_skeleton_data_find_skinPtr = _lookup< + ffi.NativeFunction< + spine_skin Function(ffi.Pointer, + ffi.Pointer)>>('spine_skeleton_data_find_skin'); + late final _spine_skeleton_data_find_skin = + _spine_skeleton_data_find_skinPtr.asFunction< + spine_skin Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_event_data spine_skeleton_data_find_event( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_event( + data, + name, + ); + } + + late final _spine_skeleton_data_find_eventPtr = _lookup< + ffi.NativeFunction< + spine_event_data Function(ffi.Pointer, + ffi.Pointer)>>('spine_skeleton_data_find_event'); + late final _spine_skeleton_data_find_event = + _spine_skeleton_data_find_eventPtr.asFunction< + spine_event_data Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_animation spine_skeleton_data_find_animation( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_animation( + data, + name, + ); + } + + late final _spine_skeleton_data_find_animationPtr = _lookup< + ffi.NativeFunction< + spine_animation Function(ffi.Pointer, + ffi.Pointer)>>('spine_skeleton_data_find_animation'); + late final _spine_skeleton_data_find_animation = + _spine_skeleton_data_find_animationPtr.asFunction< + spine_animation Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_ik_constraint spine_skeleton_data_find_ik_constraint( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_ik_constraint( + data, + name, + ); + } + + late final _spine_skeleton_data_find_ik_constraintPtr = _lookup< + ffi.NativeFunction< + spine_ik_constraint Function( + ffi.Pointer, ffi.Pointer)>>( + 'spine_skeleton_data_find_ik_constraint'); + late final _spine_skeleton_data_find_ik_constraint = + _spine_skeleton_data_find_ik_constraintPtr.asFunction< + spine_ik_constraint Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_transform_constraint spine_skeleton_data_find_transform_constraint( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_transform_constraint( + data, + name, + ); + } + + late final _spine_skeleton_data_find_transform_constraintPtr = _lookup< + ffi.NativeFunction< + spine_transform_constraint Function( + ffi.Pointer, ffi.Pointer)>>( + 'spine_skeleton_data_find_transform_constraint'); + late final _spine_skeleton_data_find_transform_constraint = + _spine_skeleton_data_find_transform_constraintPtr.asFunction< + spine_transform_constraint Function( + ffi.Pointer, ffi.Pointer)>(); + + spine_path_constraint spine_skeleton_data_find_path_constraint( + ffi.Pointer data, + ffi.Pointer name, + ) { + return _spine_skeleton_data_find_path_constraint( + data, + name, + ); + } + + late final _spine_skeleton_data_find_path_constraintPtr = _lookup< + ffi.NativeFunction< + spine_path_constraint Function( + ffi.Pointer, ffi.Pointer)>>( + 'spine_skeleton_data_find_path_constraint'); + late final _spine_skeleton_data_find_path_constraint = + _spine_skeleton_data_find_path_constraintPtr.asFunction< + spine_path_constraint Function( + ffi.Pointer, ffi.Pointer)>(); + + ffi.Pointer spine_skeleton_data_get_name( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_name( + data, + ); + } + + late final _spine_skeleton_data_get_namePtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_name'); + late final _spine_skeleton_data_get_name = _spine_skeleton_data_get_namePtr + .asFunction Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_bones( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_bones( + data, + ); + } + + late final _spine_skeleton_data_get_num_bonesPtr = + _lookup>( + 'spine_skeleton_data_get_num_bones'); + late final _spine_skeleton_data_get_num_bones = + _spine_skeleton_data_get_num_bonesPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_bones( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_bones( + data, + ); + } + + late final _spine_skeleton_data_get_bonesPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_bones'); + late final _spine_skeleton_data_get_bones = _spine_skeleton_data_get_bonesPtr + .asFunction Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_slots( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_slots( + data, + ); + } + + late final _spine_skeleton_data_get_num_slotsPtr = + _lookup>( + 'spine_skeleton_data_get_num_slots'); + late final _spine_skeleton_data_get_num_slots = + _spine_skeleton_data_get_num_slotsPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_slots( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_slots( + data, + ); + } + + late final _spine_skeleton_data_get_slotsPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_slots'); + late final _spine_skeleton_data_get_slots = _spine_skeleton_data_get_slotsPtr + .asFunction Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_skins( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_skins( + data, + ); + } + + late final _spine_skeleton_data_get_num_skinsPtr = + _lookup>( + 'spine_skeleton_data_get_num_skins'); + late final _spine_skeleton_data_get_num_skins = + _spine_skeleton_data_get_num_skinsPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_skins( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_skins( + data, + ); + } + + late final _spine_skeleton_data_get_skinsPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_skins'); + late final _spine_skeleton_data_get_skins = _spine_skeleton_data_get_skinsPtr + .asFunction Function(spine_skeleton_data)>(); + + spine_skin spine_skeleton_data_get_default_skin( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_default_skin( + data, + ); + } + + late final _spine_skeleton_data_get_default_skinPtr = + _lookup>( + 'spine_skeleton_data_get_default_skin'); + late final _spine_skeleton_data_get_default_skin = + _spine_skeleton_data_get_default_skinPtr + .asFunction(); + + void spine_skeleton_data_set_default_skin( + spine_skeleton_data data, + spine_skin skin, + ) { + return _spine_skeleton_data_set_default_skin( + data, + skin, + ); + } + + late final _spine_skeleton_data_set_default_skinPtr = _lookup< + ffi.NativeFunction< + ffi.Void Function(spine_skeleton_data, + spine_skin)>>('spine_skeleton_data_set_default_skin'); + late final _spine_skeleton_data_set_default_skin = + _spine_skeleton_data_set_default_skinPtr + .asFunction(); + + int spine_skeleton_data_get_num_events( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_events( + data, + ); + } + + late final _spine_skeleton_data_get_num_eventsPtr = + _lookup>( + 'spine_skeleton_data_get_num_events'); + late final _spine_skeleton_data_get_num_events = + _spine_skeleton_data_get_num_eventsPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_events( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_events( + data, + ); + } + + late final _spine_skeleton_data_get_eventsPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_events'); + late final _spine_skeleton_data_get_events = + _spine_skeleton_data_get_eventsPtr.asFunction< + ffi.Pointer Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_animations( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_animations( + data, + ); + } + + late final _spine_skeleton_data_get_num_animationsPtr = + _lookup>( + 'spine_skeleton_data_get_num_animations'); + late final _spine_skeleton_data_get_num_animations = + _spine_skeleton_data_get_num_animationsPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_animation( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_animation( + data, + ); + } + + late final _spine_skeleton_data_get_animationPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_animation'); + late final _spine_skeleton_data_get_animation = + _spine_skeleton_data_get_animationPtr.asFunction< + ffi.Pointer Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_ik_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_ik_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_num_ik_constraintsPtr = + _lookup>( + 'spine_skeleton_data_get_num_ik_constraints'); + late final _spine_skeleton_data_get_num_ik_constraints = + _spine_skeleton_data_get_num_ik_constraintsPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_ik_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_ik_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_ik_constraintsPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_ik_constraints'); + late final _spine_skeleton_data_get_ik_constraints = + _spine_skeleton_data_get_ik_constraintsPtr.asFunction< + ffi.Pointer Function( + spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_transform_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_transform_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_num_transform_constraintsPtr = + _lookup>( + 'spine_skeleton_data_get_num_transform_constraints'); + late final _spine_skeleton_data_get_num_transform_constraints = + _spine_skeleton_data_get_num_transform_constraintsPtr + .asFunction(); + + spine_transform_constraint_data spine_skeleton_data_get_transform_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_transform_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_transform_constraintsPtr = _lookup< + ffi.NativeFunction< + spine_transform_constraint_data Function(spine_skeleton_data)>>( + 'spine_skeleton_data_get_transform_constraints'); + late final _spine_skeleton_data_get_transform_constraints = + _spine_skeleton_data_get_transform_constraintsPtr.asFunction< + spine_transform_constraint_data Function(spine_skeleton_data)>(); + + int spine_skeleton_data_get_num_path_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_num_path_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_num_path_constraintsPtr = + _lookup>( + 'spine_skeleton_data_get_num_path_constraints'); + late final _spine_skeleton_data_get_num_path_constraints = + _spine_skeleton_data_get_num_path_constraintsPtr + .asFunction(); + + spine_path_constraint_data spine_skeleton_data_get_path_constraints( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_path_constraints( + data, + ); + } + + late final _spine_skeleton_data_get_path_constraintsPtr = _lookup< + ffi.NativeFunction< + spine_path_constraint_data Function(spine_skeleton_data)>>( + 'spine_skeleton_data_get_path_constraints'); + late final _spine_skeleton_data_get_path_constraints = + _spine_skeleton_data_get_path_constraintsPtr.asFunction< + spine_path_constraint_data Function(spine_skeleton_data)>(); + + double spine_skeleton_data_get_x( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_x( + data, + ); + } + + late final _spine_skeleton_data_get_xPtr = + _lookup>( + 'spine_skeleton_data_get_x'); + late final _spine_skeleton_data_get_x = _spine_skeleton_data_get_xPtr + .asFunction(); + + double spine_skeleton_data_get_y( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_y( + data, + ); + } + + late final _spine_skeleton_data_get_yPtr = + _lookup>( + 'spine_skeleton_data_get_y'); + late final _spine_skeleton_data_get_y = _spine_skeleton_data_get_yPtr + .asFunction(); + + double spine_skeleton_data_get_width( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_width( + data, + ); + } + + late final _spine_skeleton_data_get_widthPtr = + _lookup>( + 'spine_skeleton_data_get_width'); + late final _spine_skeleton_data_get_width = _spine_skeleton_data_get_widthPtr + .asFunction(); + + double spine_skeleton_data_get_height( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_height( + data, + ); + } + + late final _spine_skeleton_data_get_heightPtr = + _lookup>( + 'spine_skeleton_data_get_height'); + late final _spine_skeleton_data_get_height = + _spine_skeleton_data_get_heightPtr + .asFunction(); + + ffi.Pointer spine_skeleton_data_get_version( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_version( + data, + ); + } + + late final _spine_skeleton_data_get_versionPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_version'); + late final _spine_skeleton_data_get_version = + _spine_skeleton_data_get_versionPtr + .asFunction Function(spine_skeleton_data)>(); + + ffi.Pointer spine_skeleton_data_get_hash( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_hash( + data, + ); + } + + late final _spine_skeleton_data_get_hashPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_hash'); + late final _spine_skeleton_data_get_hash = _spine_skeleton_data_get_hashPtr + .asFunction Function(spine_skeleton_data)>(); + + ffi.Pointer spine_skeleton_data_get_images_path( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_images_path( + data, + ); + } + + late final _spine_skeleton_data_get_images_pathPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_images_path'); + late final _spine_skeleton_data_get_images_path = + _spine_skeleton_data_get_images_pathPtr + .asFunction Function(spine_skeleton_data)>(); + + ffi.Pointer spine_skeleton_data_get_audio_path( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_audio_path( + data, + ); + } + + late final _spine_skeleton_data_get_audio_pathPtr = _lookup< + ffi.NativeFunction< + ffi.Pointer Function( + spine_skeleton_data)>>('spine_skeleton_data_get_audio_path'); + late final _spine_skeleton_data_get_audio_path = + _spine_skeleton_data_get_audio_pathPtr + .asFunction Function(spine_skeleton_data)>(); + + double spine_skeleton_data_get_fps( + spine_skeleton_data data, + ) { + return _spine_skeleton_data_get_fps( + data, + ); + } + + late final _spine_skeleton_data_get_fpsPtr = + _lookup>( + 'spine_skeleton_data_get_fps'); + late final _spine_skeleton_data_get_fps = _spine_skeleton_data_get_fpsPtr + .asFunction(); + void spine_skeleton_data_dispose( - spine_skeleton_data skeletonData, + spine_skeleton_data data, ) { return _spine_skeleton_data_dispose( - skeletonData, + data, ); } @@ -2563,16 +3146,19 @@ class spine_skeleton_drawable extends ffi.Struct { typedef spine_skeleton = ffi.Pointer; typedef spine_animation_state = ffi.Pointer; typedef spine_animation_state_events = ffi.Pointer; +typedef spine_bone_data = ffi.Pointer; +typedef spine_slot_data = ffi.Pointer; +typedef spine_skin = ffi.Pointer; +typedef spine_event_data = ffi.Pointer; typedef spine_animation = ffi.Pointer; +typedef spine_ik_constraint = ffi.Pointer; +typedef spine_transform_constraint = ffi.Pointer; +typedef spine_path_constraint = ffi.Pointer; +typedef spine_ik_constraint_data = ffi.Pointer; +typedef spine_transform_constraint_data = ffi.Pointer; +typedef spine_path_constraint_data = ffi.Pointer; typedef spine_track_entry = ffi.Pointer; typedef spine_event = ffi.Pointer; typedef spine_bone = ffi.Pointer; typedef spine_slot = ffi.Pointer; -typedef spine_skin = ffi.Pointer; typedef spine_attachment = ffi.Pointer; -typedef spine_ik_constraint = ffi.Pointer; -typedef spine_transform_constraint = ffi.Pointer; -typedef spine_path_constraint = ffi.Pointer; -typedef spine_event_data = ffi.Pointer; -typedef spine_slot_data = ffi.Pointer; -typedef spine_bone_data = ffi.Pointer; diff --git a/spine-flutter/src/spine_flutter.cpp b/spine-flutter/src/spine_flutter.cpp index 7f45f4dc1..12f9ea222 100644 --- a/spine-flutter/src/spine_flutter.cpp +++ b/spine-flutter/src/spine_flutter.cpp @@ -96,13 +96,192 @@ FFI_PLUGIN_EXPORT spine_skeleton_data_result spine_skeleton_data_load_binary(spi return result; } -FFI_PLUGIN_EXPORT void spine_skeleton_data_dispose(spine_skeleton_data skeletonData) { - if (!skeletonData) return; - delete (SkeletonData*)skeletonData; +FFI_PLUGIN_EXPORT spine_bone_data spine_skeleton_data_find_bone(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_slot_data spine_skeleton_data_find_slot(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_skin spine_skeleton_data_find_skin(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_event_data spine_skeleton_data_find_event(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_animation spine_skeleton_data_find_animation(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_ik_constraint spine_skeleton_data_find_ik_constraint(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_transform_constraint spine_skeleton_data_find_transform_constraint(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_path_constraint spine_skeleton_data_find_path_constraint(spine_skeleton_data *data, const char *name) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_name(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_bones(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_bone_data* spine_skeleton_data_get_bones(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_slots(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_slot_data* spine_skeleton_data_get_slots(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_skins(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_skin* spine_skeleton_data_get_skins(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_skin spine_skeleton_data_get_default_skin(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT void spine_skeleton_data_set_default_skin(spine_skeleton_data data, spine_skin skin) { + if (data == nullptr) return; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_events(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_event_data* spine_skeleton_data_get_events(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_animations(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_animation* spine_skeleton_data_get_animation(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_ik_constraints(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_ik_constraint_data * spine_skeleton_data_get_ik_constraints(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_transform_constraints(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_transform_constraint_data spine_skeleton_data_get_transform_constraints(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_path_constraints(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT spine_path_constraint_data spine_skeleton_data_get_path_constraints(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_x(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_y(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_width(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_height(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_version(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_hash(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_images_path(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_audio_path(spine_skeleton_data data) { + if (data == nullptr) return nullptr; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_fps(spine_skeleton_data data) { + if (data == nullptr) return 0; + SkeletonData *_data = (SkeletonData*)data; +} + +FFI_PLUGIN_EXPORT void spine_skeleton_data_dispose(spine_skeleton_data data) { + if (!data) return; + delete (SkeletonData*)data; } // RenderCommand - spine_render_command *spine_render_command_create(int numVertices, int numIndices, spine_blend_mode blendMode, int pageIndex) { spine_render_command *cmd = SpineExtension::alloc(1, __FILE__, __LINE__); cmd->positions = SpineExtension::alloc(numVertices << 1, __FILE__, __LINE__); diff --git a/spine-flutter/src/spine_flutter.h b/spine-flutter/src/spine_flutter.h index ef37cd176..1c15edac2 100644 --- a/spine-flutter/src/spine_flutter.h +++ b/spine-flutter/src/spine_flutter.h @@ -116,7 +116,43 @@ FFI_PLUGIN_EXPORT void spine_atlas_dispose(spine_atlas *atlas); FFI_PLUGIN_EXPORT spine_skeleton_data_result spine_skeleton_data_load_json(spine_atlas *atlas, const char *skeletonData); FFI_PLUGIN_EXPORT spine_skeleton_data_result spine_skeleton_data_load_binary(spine_atlas *atlas, const unsigned char *skeletonData, int length); -FFI_PLUGIN_EXPORT void spine_skeleton_data_dispose(spine_skeleton_data skeletonData); +FFI_PLUGIN_EXPORT spine_bone_data spine_skeleton_data_find_bone(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_slot_data spine_skeleton_data_find_slot(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_skin spine_skeleton_data_find_skin(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_event_data spine_skeleton_data_find_event(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_animation spine_skeleton_data_find_animation(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_ik_constraint spine_skeleton_data_find_ik_constraint(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_transform_constraint spine_skeleton_data_find_transform_constraint(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT spine_path_constraint spine_skeleton_data_find_path_constraint(spine_skeleton_data *data, const char *name); +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_name(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_bones(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_bone_data* spine_skeleton_data_get_bones(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_slots(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_slot_data* spine_skeleton_data_get_slots(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_skins(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_skin* spine_skeleton_data_get_skins(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_skin spine_skeleton_data_get_default_skin(spine_skeleton_data data); +FFI_PLUGIN_EXPORT void spine_skeleton_data_set_default_skin(spine_skeleton_data data, spine_skin skin); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_events(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_event_data* spine_skeleton_data_get_events(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_animations(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_animation* spine_skeleton_data_get_animation(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_ik_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_ik_constraint_data * spine_skeleton_data_get_ik_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_transform_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_transform_constraint_data spine_skeleton_data_get_transform_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT int spine_skeleton_data_get_num_path_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT spine_path_constraint_data spine_skeleton_data_get_path_constraints(spine_skeleton_data data); +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_x(spine_skeleton_data data); +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_y(spine_skeleton_data data); +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_width(spine_skeleton_data data); +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_height(spine_skeleton_data data); +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_version(spine_skeleton_data data); +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_hash(spine_skeleton_data data); +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_images_path(spine_skeleton_data data); +FFI_PLUGIN_EXPORT const char* spine_skeleton_data_get_audio_path(spine_skeleton_data data); +FFI_PLUGIN_EXPORT float spine_skeleton_data_get_fps(spine_skeleton_data data); +FFI_PLUGIN_EXPORT void spine_skeleton_data_dispose(spine_skeleton_data data); FFI_PLUGIN_EXPORT spine_skeleton_drawable *spine_skeleton_drawable_create(spine_skeleton_data skeletonData); FFI_PLUGIN_EXPORT spine_render_command *spine_skeleton_drawable_render(spine_skeleton_drawable *drawable);