[flutter] SkeletonData wrap scaffold.

This commit is contained in:
Mario Zechner 2022-08-30 10:58:25 +02:00
parent d0576b784c
commit b72022fdae
3 changed files with 815 additions and 14 deletions

View File

@ -124,11 +124,594 @@ class SpineFlutterBindings {
spine_skeleton_data_result Function(
ffi.Pointer<spine_atlas>, ffi.Pointer<ffi.Uint8>, int)>();
spine_bone_data spine_skeleton_data_find_bone(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>,
ffi.Pointer<ffi.Int8>)>>('spine_skeleton_data_find_bone');
late final _spine_skeleton_data_find_bone =
_spine_skeleton_data_find_bonePtr.asFunction<
spine_bone_data Function(
ffi.Pointer<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_slot_data spine_skeleton_data_find_slot(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>,
ffi.Pointer<ffi.Int8>)>>('spine_skeleton_data_find_slot');
late final _spine_skeleton_data_find_slot =
_spine_skeleton_data_find_slotPtr.asFunction<
spine_slot_data Function(
ffi.Pointer<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_skin spine_skeleton_data_find_skin(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> name,
) {
return _spine_skeleton_data_find_skin(
data,
name,
);
}
late final _spine_skeleton_data_find_skinPtr = _lookup<
ffi.NativeFunction<
spine_skin Function(ffi.Pointer<spine_skeleton_data>,
ffi.Pointer<ffi.Int8>)>>('spine_skeleton_data_find_skin');
late final _spine_skeleton_data_find_skin =
_spine_skeleton_data_find_skinPtr.asFunction<
spine_skin Function(
ffi.Pointer<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_event_data spine_skeleton_data_find_event(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>,
ffi.Pointer<ffi.Int8>)>>('spine_skeleton_data_find_event');
late final _spine_skeleton_data_find_event =
_spine_skeleton_data_find_eventPtr.asFunction<
spine_event_data Function(
ffi.Pointer<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_animation spine_skeleton_data_find_animation(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> name,
) {
return _spine_skeleton_data_find_animation(
data,
name,
);
}
late final _spine_skeleton_data_find_animationPtr = _lookup<
ffi.NativeFunction<
spine_animation Function(ffi.Pointer<spine_skeleton_data>,
ffi.Pointer<ffi.Int8>)>>('spine_skeleton_data_find_animation');
late final _spine_skeleton_data_find_animation =
_spine_skeleton_data_find_animationPtr.asFunction<
spine_animation Function(
ffi.Pointer<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_ik_constraint spine_skeleton_data_find_ik_constraint(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>>(
'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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_transform_constraint spine_skeleton_data_find_transform_constraint(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>>(
'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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
spine_path_constraint spine_skeleton_data_find_path_constraint(
ffi.Pointer<spine_skeleton_data> data,
ffi.Pointer<ffi.Int8> 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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>>(
'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<spine_skeleton_data>, ffi.Pointer<ffi.Int8>)>();
ffi.Pointer<ffi.Int8> 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<ffi.Int8> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_name');
late final _spine_skeleton_data_get_name = _spine_skeleton_data_get_namePtr
.asFunction<ffi.Pointer<ffi.Int8> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_bones');
late final _spine_skeleton_data_get_num_bones =
_spine_skeleton_data_get_num_bonesPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_bone_data> 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<spine_bone_data> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_bones');
late final _spine_skeleton_data_get_bones = _spine_skeleton_data_get_bonesPtr
.asFunction<ffi.Pointer<spine_bone_data> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_slots');
late final _spine_skeleton_data_get_num_slots =
_spine_skeleton_data_get_num_slotsPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_slot_data> 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<spine_slot_data> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_slots');
late final _spine_skeleton_data_get_slots = _spine_skeleton_data_get_slotsPtr
.asFunction<ffi.Pointer<spine_slot_data> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_skins');
late final _spine_skeleton_data_get_num_skins =
_spine_skeleton_data_get_num_skinsPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_skin> 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<spine_skin> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_skins');
late final _spine_skeleton_data_get_skins = _spine_skeleton_data_get_skinsPtr
.asFunction<ffi.Pointer<spine_skin> 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<ffi.NativeFunction<spine_skin Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_default_skin');
late final _spine_skeleton_data_get_default_skin =
_spine_skeleton_data_get_default_skinPtr
.asFunction<spine_skin Function(spine_skeleton_data)>();
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<void Function(spine_skeleton_data, spine_skin)>();
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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_events');
late final _spine_skeleton_data_get_num_events =
_spine_skeleton_data_get_num_eventsPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_event_data> 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<spine_event_data> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_events');
late final _spine_skeleton_data_get_events =
_spine_skeleton_data_get_eventsPtr.asFunction<
ffi.Pointer<spine_event_data> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_animations');
late final _spine_skeleton_data_get_num_animations =
_spine_skeleton_data_get_num_animationsPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_animation> 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<spine_animation> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_animation');
late final _spine_skeleton_data_get_animation =
_spine_skeleton_data_get_animationPtr.asFunction<
ffi.Pointer<spine_animation> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_ik_constraints');
late final _spine_skeleton_data_get_num_ik_constraints =
_spine_skeleton_data_get_num_ik_constraintsPtr
.asFunction<int Function(spine_skeleton_data)>();
ffi.Pointer<spine_ik_constraint_data> 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<spine_ik_constraint_data> 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<spine_ik_constraint_data> 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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_transform_constraints');
late final _spine_skeleton_data_get_num_transform_constraints =
_spine_skeleton_data_get_num_transform_constraintsPtr
.asFunction<int Function(spine_skeleton_data)>();
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<ffi.NativeFunction<ffi.Int32 Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_num_path_constraints');
late final _spine_skeleton_data_get_num_path_constraints =
_spine_skeleton_data_get_num_path_constraintsPtr
.asFunction<int Function(spine_skeleton_data)>();
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<ffi.NativeFunction<ffi.Float Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_x');
late final _spine_skeleton_data_get_x = _spine_skeleton_data_get_xPtr
.asFunction<double Function(spine_skeleton_data)>();
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<ffi.NativeFunction<ffi.Float Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_y');
late final _spine_skeleton_data_get_y = _spine_skeleton_data_get_yPtr
.asFunction<double Function(spine_skeleton_data)>();
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<ffi.NativeFunction<ffi.Float Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_width');
late final _spine_skeleton_data_get_width = _spine_skeleton_data_get_widthPtr
.asFunction<double Function(spine_skeleton_data)>();
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<ffi.NativeFunction<ffi.Float Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_height');
late final _spine_skeleton_data_get_height =
_spine_skeleton_data_get_heightPtr
.asFunction<double Function(spine_skeleton_data)>();
ffi.Pointer<ffi.Int8> 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<ffi.Int8> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_version');
late final _spine_skeleton_data_get_version =
_spine_skeleton_data_get_versionPtr
.asFunction<ffi.Pointer<ffi.Int8> Function(spine_skeleton_data)>();
ffi.Pointer<ffi.Int8> 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<ffi.Int8> Function(
spine_skeleton_data)>>('spine_skeleton_data_get_hash');
late final _spine_skeleton_data_get_hash = _spine_skeleton_data_get_hashPtr
.asFunction<ffi.Pointer<ffi.Int8> Function(spine_skeleton_data)>();
ffi.Pointer<ffi.Int8> 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<ffi.Int8> 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<ffi.Pointer<ffi.Int8> Function(spine_skeleton_data)>();
ffi.Pointer<ffi.Int8> 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<ffi.Int8> 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<ffi.Pointer<ffi.Int8> 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<ffi.NativeFunction<ffi.Float Function(spine_skeleton_data)>>(
'spine_skeleton_data_get_fps');
late final _spine_skeleton_data_get_fps = _spine_skeleton_data_get_fpsPtr
.asFunction<double Function(spine_skeleton_data)>();
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<ffi.Void>;
typedef spine_animation_state = ffi.Pointer<ffi.Void>;
typedef spine_animation_state_events = ffi.Pointer<ffi.Void>;
typedef spine_bone_data = ffi.Pointer<ffi.Void>;
typedef spine_slot_data = ffi.Pointer<ffi.Void>;
typedef spine_skin = ffi.Pointer<ffi.Void>;
typedef spine_event_data = ffi.Pointer<ffi.Void>;
typedef spine_animation = ffi.Pointer<ffi.Void>;
typedef spine_ik_constraint = ffi.Pointer<ffi.Void>;
typedef spine_transform_constraint = ffi.Pointer<ffi.Void>;
typedef spine_path_constraint = ffi.Pointer<ffi.Void>;
typedef spine_ik_constraint_data = ffi.Pointer<ffi.Void>;
typedef spine_transform_constraint_data = ffi.Pointer<ffi.Void>;
typedef spine_path_constraint_data = ffi.Pointer<ffi.Void>;
typedef spine_track_entry = ffi.Pointer<ffi.Void>;
typedef spine_event = ffi.Pointer<ffi.Void>;
typedef spine_bone = ffi.Pointer<ffi.Void>;
typedef spine_slot = ffi.Pointer<ffi.Void>;
typedef spine_skin = ffi.Pointer<ffi.Void>;
typedef spine_attachment = ffi.Pointer<ffi.Void>;
typedef spine_ik_constraint = ffi.Pointer<ffi.Void>;
typedef spine_transform_constraint = ffi.Pointer<ffi.Void>;
typedef spine_path_constraint = ffi.Pointer<ffi.Void>;
typedef spine_event_data = ffi.Pointer<ffi.Void>;
typedef spine_slot_data = ffi.Pointer<ffi.Void>;
typedef spine_bone_data = ffi.Pointer<ffi.Void>;

View File

@ -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<spine_render_command>(1, __FILE__, __LINE__);
cmd->positions = SpineExtension::alloc<float>(numVertices << 1, __FILE__, __LINE__);

View File

@ -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);