123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819 |
- //
- // Spine Runtimes License Agreement
- // Last updated April 5, 2025. Replaces all prior versions.
- //
- // Copyright (c) 2013-2025, Esoteric Software LLC
- //
- // Integration of the Spine Runtimes into software or otherwise creating
- // derivative works of the Spine Runtimes is permitted under the terms and
- // conditions of Section 2 of the Spine Editor License Agreement:
- // http://esotericsoftware.com/spine-editor-license
- //
- // Otherwise, it is permitted to integrate the Spine Runtimes into software
- // or otherwise create derivative works of the Spine Runtimes (collectively,
- // "Products"), provided that each user of the Products must obtain their own
- // Spine Editor license and redistribution of the Products in any form must
- // include this license and copyright notice.
- //
- // THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
- // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- // DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
- // DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
- // BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
- // ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- // THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- //
- // AUTO GENERATED FILE, DO NOT EDIT.
- import 'dart:ffi';
- import 'package:ffi/ffi.dart';
- import 'spine_dart_bindings_generated.dart';
- import '../spine_bindings.dart';
- import '../native_array.dart';
- import 'alpha_timeline.dart';
- import 'animation.dart';
- import 'atlas_page.dart';
- import 'atlas_region.dart';
- import 'attachment.dart';
- import 'attachment_timeline.dart';
- import 'bone.dart';
- import 'bone_data.dart';
- import 'bone_pose.dart';
- import 'bounding_box_attachment.dart';
- import 'clipping_attachment.dart';
- import 'constraint.dart';
- import 'constraint_data.dart';
- import 'deform_timeline.dart';
- import 'draw_order_timeline.dart';
- import 'event.dart';
- import 'event_data.dart';
- import 'event_timeline.dart';
- import 'from_property.dart';
- import 'from_rotate.dart';
- import 'from_scale_x.dart';
- import 'from_scale_y.dart';
- import 'from_shear_y.dart';
- import 'from_x.dart';
- import 'from_y.dart';
- import 'ik_constraint.dart';
- import 'ik_constraint_data.dart';
- import 'ik_constraint_timeline.dart';
- import 'inherit_timeline.dart';
- import 'mesh_attachment.dart';
- import 'path_attachment.dart';
- import 'path_constraint.dart';
- import 'path_constraint_data.dart';
- import 'path_constraint_mix_timeline.dart';
- import 'path_constraint_position_timeline.dart';
- import 'path_constraint_spacing_timeline.dart';
- import 'physics_constraint.dart';
- import 'physics_constraint_damping_timeline.dart';
- import 'physics_constraint_data.dart';
- import 'physics_constraint_gravity_timeline.dart';
- import 'physics_constraint_inertia_timeline.dart';
- import 'physics_constraint_mass_timeline.dart';
- import 'physics_constraint_mix_timeline.dart';
- import 'physics_constraint_reset_timeline.dart';
- import 'physics_constraint_strength_timeline.dart';
- import 'physics_constraint_wind_timeline.dart';
- import 'point_attachment.dart';
- import 'polygon.dart';
- import 'region_attachment.dart';
- import 'rgb2_timeline.dart';
- import 'rgb_timeline.dart';
- import 'rgba2_timeline.dart';
- import 'rgba_timeline.dart';
- import 'rotate_timeline.dart';
- import 'scale_timeline.dart';
- import 'scale_x_timeline.dart';
- import 'scale_y_timeline.dart';
- import 'sequence_timeline.dart';
- import 'shear_timeline.dart';
- import 'shear_x_timeline.dart';
- import 'shear_y_timeline.dart';
- import 'skin.dart';
- import 'slider.dart';
- import 'slider_data.dart';
- import 'slider_mix_timeline.dart';
- import 'slider_timeline.dart';
- import 'slot.dart';
- import 'slot_data.dart';
- import 'texture_region.dart';
- import 'timeline.dart';
- import 'to_property.dart';
- import 'to_rotate.dart';
- import 'to_scale_x.dart';
- import 'to_scale_y.dart';
- import 'to_shear_y.dart';
- import 'to_x.dart';
- import 'to_y.dart';
- import 'track_entry.dart';
- import 'transform_constraint.dart';
- import 'transform_constraint_data.dart';
- import 'transform_constraint_timeline.dart';
- import 'translate_timeline.dart';
- import 'translate_x_timeline.dart';
- import 'translate_y_timeline.dart';
- import 'update.dart';
- /// ArrayFloat wrapper
- class ArrayFloat extends NativeArray<double> {
- ArrayFloat.fromPointer(Pointer<spine_array_float_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_float_size(nativePtr.cast());
- }
- @override
- double operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_float_buffer(nativePtr.cast());
- return buffer.cast<Float>()[index];
- }
- }
- /// ArrayInt wrapper
- class ArrayInt extends NativeArray<int> {
- ArrayInt.fromPointer(Pointer<spine_array_int_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_int_size(nativePtr.cast());
- }
- @override
- int operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_int_buffer(nativePtr.cast());
- return buffer.cast<Int32>()[index];
- }
- }
- /// ArrayUnsignedShort wrapper
- class ArrayUnsignedShort extends NativeArray<int> {
- ArrayUnsignedShort.fromPointer(Pointer<spine_array_unsigned_short_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_unsigned_short_size(nativePtr.cast());
- }
- @override
- int operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_unsigned_short_buffer(nativePtr.cast());
- return buffer.cast<Uint16>()[index];
- }
- }
- /// ArrayPropertyId wrapper
- class ArrayPropertyId extends NativeArray<int> {
- ArrayPropertyId.fromPointer(Pointer<spine_array_property_id_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_property_id_size(nativePtr.cast());
- }
- @override
- int operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_property_id_buffer(nativePtr.cast());
- // NOTE: This will not compile due to C API bug - buffer() returns int instead of Pointer
- return buffer.cast<Int64>()[index];
- }
- }
- /// ArrayAnimation wrapper
- class ArrayAnimation extends NativeArray<Animation?> {
- ArrayAnimation.fromPointer(Pointer<spine_array_animation_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_animation_size(nativePtr.cast());
- }
- @override
- Animation? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_animation_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Animation.fromPointer(buffer[index]);
- }
- }
- /// ArrayAtlasPage wrapper
- class ArrayAtlasPage extends NativeArray<AtlasPage?> {
- ArrayAtlasPage.fromPointer(Pointer<spine_array_atlas_page_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_atlas_page_size(nativePtr.cast());
- }
- @override
- AtlasPage? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_atlas_page_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : AtlasPage.fromPointer(buffer[index]);
- }
- }
- /// ArrayAtlasRegion wrapper
- class ArrayAtlasRegion extends NativeArray<AtlasRegion?> {
- ArrayAtlasRegion.fromPointer(Pointer<spine_array_atlas_region_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_atlas_region_size(nativePtr.cast());
- }
- @override
- AtlasRegion? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_atlas_region_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : AtlasRegion.fromPointer(buffer[index]);
- }
- }
- /// ArrayAttachment wrapper
- class ArrayAttachment extends NativeArray<Attachment?> {
- ArrayAttachment.fromPointer(Pointer<spine_array_attachment_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_attachment_size(nativePtr.cast());
- }
- @override
- Attachment? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_attachment_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_attachment_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_bounding_box_attachment':
- return BoundingBoxAttachment.fromPointer(buffer[index].cast());
- case 'spine_clipping_attachment':
- return ClippingAttachment.fromPointer(buffer[index].cast());
- case 'spine_mesh_attachment':
- return MeshAttachment.fromPointer(buffer[index].cast());
- case 'spine_path_attachment':
- return PathAttachment.fromPointer(buffer[index].cast());
- case 'spine_point_attachment':
- return PointAttachment.fromPointer(buffer[index].cast());
- case 'spine_region_attachment':
- return RegionAttachment.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class Attachment');
- }
- }
- }
- /// ArrayBone wrapper
- class ArrayBone extends NativeArray<Bone?> {
- ArrayBone.fromPointer(Pointer<spine_array_bone_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_bone_size(nativePtr.cast());
- }
- @override
- Bone? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_bone_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Bone.fromPointer(buffer[index]);
- }
- }
- /// ArrayBoneData wrapper
- class ArrayBoneData extends NativeArray<BoneData?> {
- ArrayBoneData.fromPointer(Pointer<spine_array_bone_data_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_bone_data_size(nativePtr.cast());
- }
- @override
- BoneData? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_bone_data_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : BoneData.fromPointer(buffer[index]);
- }
- }
- /// ArrayBonePose wrapper
- class ArrayBonePose extends NativeArray<BonePose?> {
- ArrayBonePose.fromPointer(Pointer<spine_array_bone_pose_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_bone_pose_size(nativePtr.cast());
- }
- @override
- BonePose? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_bone_pose_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : BonePose.fromPointer(buffer[index]);
- }
- }
- /// ArrayBoundingBoxAttachment wrapper
- class ArrayBoundingBoxAttachment extends NativeArray<BoundingBoxAttachment?> {
- ArrayBoundingBoxAttachment.fromPointer(Pointer<spine_array_bounding_box_attachment_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_bounding_box_attachment_size(nativePtr.cast());
- }
- @override
- BoundingBoxAttachment? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_bounding_box_attachment_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : BoundingBoxAttachment.fromPointer(buffer[index]);
- }
- }
- /// ArrayConstraint wrapper
- class ArrayConstraint extends NativeArray<Constraint?> {
- ArrayConstraint.fromPointer(Pointer<spine_array_constraint_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_constraint_size(nativePtr.cast());
- }
- @override
- Constraint? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_constraint_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_constraint_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_ik_constraint':
- return IkConstraint.fromPointer(buffer[index].cast());
- case 'spine_path_constraint':
- return PathConstraint.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint':
- return PhysicsConstraint.fromPointer(buffer[index].cast());
- case 'spine_slider':
- return Slider.fromPointer(buffer[index].cast());
- case 'spine_transform_constraint':
- return TransformConstraint.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class Constraint');
- }
- }
- }
- /// ArrayConstraintData wrapper
- class ArrayConstraintData extends NativeArray<ConstraintData?> {
- ArrayConstraintData.fromPointer(Pointer<spine_array_constraint_data_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_constraint_data_size(nativePtr.cast());
- }
- @override
- ConstraintData? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_constraint_data_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_constraint_data_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_ik_constraint_data':
- return IkConstraintData.fromPointer(buffer[index].cast());
- case 'spine_path_constraint_data':
- return PathConstraintData.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_data':
- return PhysicsConstraintData.fromPointer(buffer[index].cast());
- case 'spine_slider_data':
- return SliderData.fromPointer(buffer[index].cast());
- case 'spine_transform_constraint_data':
- return TransformConstraintData.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class ConstraintData');
- }
- }
- }
- /// ArrayEvent wrapper
- class ArrayEvent extends NativeArray<Event?> {
- ArrayEvent.fromPointer(Pointer<spine_array_event_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_event_size(nativePtr.cast());
- }
- @override
- Event? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_event_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Event.fromPointer(buffer[index]);
- }
- }
- /// ArrayEventData wrapper
- class ArrayEventData extends NativeArray<EventData?> {
- ArrayEventData.fromPointer(Pointer<spine_array_event_data_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_event_data_size(nativePtr.cast());
- }
- @override
- EventData? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_event_data_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : EventData.fromPointer(buffer[index]);
- }
- }
- /// ArrayFromProperty wrapper
- class ArrayFromProperty extends NativeArray<FromProperty?> {
- ArrayFromProperty.fromPointer(Pointer<spine_array_from_property_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_from_property_size(nativePtr.cast());
- }
- @override
- FromProperty? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_from_property_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_from_property_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_from_rotate':
- return FromRotate.fromPointer(buffer[index].cast());
- case 'spine_from_scale_x':
- return FromScaleX.fromPointer(buffer[index].cast());
- case 'spine_from_scale_y':
- return FromScaleY.fromPointer(buffer[index].cast());
- case 'spine_from_shear_y':
- return FromShearY.fromPointer(buffer[index].cast());
- case 'spine_from_x':
- return FromX.fromPointer(buffer[index].cast());
- case 'spine_from_y':
- return FromY.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class FromProperty');
- }
- }
- }
- /// ArrayPhysicsConstraint wrapper
- class ArrayPhysicsConstraint extends NativeArray<PhysicsConstraint?> {
- ArrayPhysicsConstraint.fromPointer(Pointer<spine_array_physics_constraint_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_physics_constraint_size(nativePtr.cast());
- }
- @override
- PhysicsConstraint? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_physics_constraint_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : PhysicsConstraint.fromPointer(buffer[index]);
- }
- }
- /// ArrayPolygon wrapper
- class ArrayPolygon extends NativeArray<Polygon?> {
- ArrayPolygon.fromPointer(Pointer<spine_array_polygon_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_polygon_size(nativePtr.cast());
- }
- @override
- Polygon? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_polygon_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Polygon.fromPointer(buffer[index]);
- }
- }
- /// ArraySkin wrapper
- class ArraySkin extends NativeArray<Skin?> {
- ArraySkin.fromPointer(Pointer<spine_array_skin_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_skin_size(nativePtr.cast());
- }
- @override
- Skin? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_skin_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Skin.fromPointer(buffer[index]);
- }
- }
- /// ArraySlot wrapper
- class ArraySlot extends NativeArray<Slot?> {
- ArraySlot.fromPointer(Pointer<spine_array_slot_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_slot_size(nativePtr.cast());
- }
- @override
- Slot? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_slot_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : Slot.fromPointer(buffer[index]);
- }
- }
- /// ArraySlotData wrapper
- class ArraySlotData extends NativeArray<SlotData?> {
- ArraySlotData.fromPointer(Pointer<spine_array_slot_data_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_slot_data_size(nativePtr.cast());
- }
- @override
- SlotData? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_slot_data_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : SlotData.fromPointer(buffer[index]);
- }
- }
- /// ArrayTextureRegion wrapper
- class ArrayTextureRegion extends NativeArray<TextureRegion?> {
- ArrayTextureRegion.fromPointer(Pointer<spine_array_texture_region_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_texture_region_size(nativePtr.cast());
- }
- @override
- TextureRegion? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_texture_region_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : TextureRegion.fromPointer(buffer[index]);
- }
- }
- /// ArrayTimeline wrapper
- class ArrayTimeline extends NativeArray<Timeline?> {
- ArrayTimeline.fromPointer(Pointer<spine_array_timeline_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_timeline_size(nativePtr.cast());
- }
- @override
- Timeline? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_timeline_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_timeline_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_alpha_timeline':
- return AlphaTimeline.fromPointer(buffer[index].cast());
- case 'spine_attachment_timeline':
- return AttachmentTimeline.fromPointer(buffer[index].cast());
- case 'spine_deform_timeline':
- return DeformTimeline.fromPointer(buffer[index].cast());
- case 'spine_draw_order_timeline':
- return DrawOrderTimeline.fromPointer(buffer[index].cast());
- case 'spine_event_timeline':
- return EventTimeline.fromPointer(buffer[index].cast());
- case 'spine_ik_constraint_timeline':
- return IkConstraintTimeline.fromPointer(buffer[index].cast());
- case 'spine_inherit_timeline':
- return InheritTimeline.fromPointer(buffer[index].cast());
- case 'spine_path_constraint_mix_timeline':
- return PathConstraintMixTimeline.fromPointer(buffer[index].cast());
- case 'spine_path_constraint_position_timeline':
- return PathConstraintPositionTimeline.fromPointer(buffer[index].cast());
- case 'spine_path_constraint_spacing_timeline':
- return PathConstraintSpacingTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_damping_timeline':
- return PhysicsConstraintDampingTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_gravity_timeline':
- return PhysicsConstraintGravityTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_inertia_timeline':
- return PhysicsConstraintInertiaTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_mass_timeline':
- return PhysicsConstraintMassTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_mix_timeline':
- return PhysicsConstraintMixTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_reset_timeline':
- return PhysicsConstraintResetTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_strength_timeline':
- return PhysicsConstraintStrengthTimeline.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint_wind_timeline':
- return PhysicsConstraintWindTimeline.fromPointer(buffer[index].cast());
- case 'spine_rgb2_timeline':
- return Rgb2Timeline.fromPointer(buffer[index].cast());
- case 'spine_rgba2_timeline':
- return Rgba2Timeline.fromPointer(buffer[index].cast());
- case 'spine_rgba_timeline':
- return RgbaTimeline.fromPointer(buffer[index].cast());
- case 'spine_rgb_timeline':
- return RgbTimeline.fromPointer(buffer[index].cast());
- case 'spine_rotate_timeline':
- return RotateTimeline.fromPointer(buffer[index].cast());
- case 'spine_scale_timeline':
- return ScaleTimeline.fromPointer(buffer[index].cast());
- case 'spine_scale_x_timeline':
- return ScaleXTimeline.fromPointer(buffer[index].cast());
- case 'spine_scale_y_timeline':
- return ScaleYTimeline.fromPointer(buffer[index].cast());
- case 'spine_sequence_timeline':
- return SequenceTimeline.fromPointer(buffer[index].cast());
- case 'spine_shear_timeline':
- return ShearTimeline.fromPointer(buffer[index].cast());
- case 'spine_shear_x_timeline':
- return ShearXTimeline.fromPointer(buffer[index].cast());
- case 'spine_shear_y_timeline':
- return ShearYTimeline.fromPointer(buffer[index].cast());
- case 'spine_slider_mix_timeline':
- return SliderMixTimeline.fromPointer(buffer[index].cast());
- case 'spine_slider_timeline':
- return SliderTimeline.fromPointer(buffer[index].cast());
- case 'spine_transform_constraint_timeline':
- return TransformConstraintTimeline.fromPointer(buffer[index].cast());
- case 'spine_translate_timeline':
- return TranslateTimeline.fromPointer(buffer[index].cast());
- case 'spine_translate_x_timeline':
- return TranslateXTimeline.fromPointer(buffer[index].cast());
- case 'spine_translate_y_timeline':
- return TranslateYTimeline.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class Timeline');
- }
- }
- }
- /// ArrayToProperty wrapper
- class ArrayToProperty extends NativeArray<ToProperty?> {
- ArrayToProperty.fromPointer(Pointer<spine_array_to_property_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_to_property_size(nativePtr.cast());
- }
- @override
- ToProperty? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_to_property_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_to_property_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_to_rotate':
- return ToRotate.fromPointer(buffer[index].cast());
- case 'spine_to_scale_x':
- return ToScaleX.fromPointer(buffer[index].cast());
- case 'spine_to_scale_y':
- return ToScaleY.fromPointer(buffer[index].cast());
- case 'spine_to_shear_y':
- return ToShearY.fromPointer(buffer[index].cast());
- case 'spine_to_x':
- return ToX.fromPointer(buffer[index].cast());
- case 'spine_to_y':
- return ToY.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class ToProperty');
- }
- }
- }
- /// ArrayTrackEntry wrapper
- class ArrayTrackEntry extends NativeArray<TrackEntry?> {
- ArrayTrackEntry.fromPointer(Pointer<spine_array_track_entry_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_track_entry_size(nativePtr.cast());
- }
- @override
- TrackEntry? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_track_entry_buffer(nativePtr.cast());
- return buffer[index].address == 0 ? null : TrackEntry.fromPointer(buffer[index]);
- }
- }
- /// ArrayUpdate wrapper
- class ArrayUpdate extends NativeArray<Update?> {
- ArrayUpdate.fromPointer(Pointer<spine_array_update_wrapper> super.ptr);
- @override
- int get length {
- return SpineBindings.bindings.spine_array_update_size(nativePtr.cast());
- }
- @override
- Update? operator [](int index) {
- if (index < 0 || index >= length) {
- throw RangeError.index(index, this, 'index');
- }
- final buffer = SpineBindings.bindings.spine_array_update_buffer(nativePtr.cast());
- if (buffer[index].address == 0) return null;
- final rtti = SpineBindings.bindings.spine_update_get_rtti(buffer[index]);
- final className = SpineBindings.bindings.spine_rtti_get_class_name(rtti).cast<Utf8>().toDartString();
- switch (className) {
- case 'spine_bone':
- return Bone.fromPointer(buffer[index].cast());
- case 'spine_bone_pose':
- return BonePose.fromPointer(buffer[index].cast());
- case 'spine_ik_constraint':
- return IkConstraint.fromPointer(buffer[index].cast());
- case 'spine_path_constraint':
- return PathConstraint.fromPointer(buffer[index].cast());
- case 'spine_physics_constraint':
- return PhysicsConstraint.fromPointer(buffer[index].cast());
- case 'spine_slider':
- return Slider.fromPointer(buffer[index].cast());
- case 'spine_transform_constraint':
- return TransformConstraint.fromPointer(buffer[index].cast());
- default:
- throw UnsupportedError('Unknown concrete type: $className for abstract class Update');
- }
- }
- }
|