[cpp] pEvents -> events

This commit is contained in:
Mario Zechner 2025-07-30 09:41:42 +02:00
parent f1353f2c6d
commit f6fbbabd6b
35 changed files with 67 additions and 61 deletions

View File

@ -139,7 +139,7 @@ namespace spine {
/// @param blend Controls how mixing is applied when alpha < 1.
/// @param direction Indicates whether the timelines are mixing in or out. Used by timelines which perform instant transitions,
/// such as DrawOrderTimeline or AttachmentTimeline.
void apply(Skeleton &skeleton, float lastTime, float time, bool loop, Array<Event *> *pEvents, float alpha, MixBlend blend,
void apply(Skeleton &skeleton, float lastTime, float time, bool loop, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose);
/// The animation's name, which is unique across all animations in the skeleton.

View File

@ -60,7 +60,7 @@ namespace spine {
virtual ~AttachmentTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
/// Sets the time and attachment name for the specified frame.

View File

@ -66,7 +66,7 @@ namespace spine {
public:
BoneTimeline1(size_t frameCount, size_t bezierCount, int boneIndex, Property property);
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
virtual int getBoneIndex() const override {
@ -95,7 +95,7 @@ namespace spine {
public:
BoneTimeline2(size_t frameCount, size_t bezierCount, int boneIndex, Property property1, Property property2);
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
virtual int getBoneIndex() const override {

View File

@ -101,7 +101,7 @@ namespace spine {
virtual ~AlphaTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
virtual int getSlotIndex() override;

View File

@ -44,7 +44,7 @@ namespace spine {
public:
explicit DrawOrderTimeline(size_t frameCount);
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
size_t getFrameCount();

View File

@ -47,7 +47,7 @@ namespace spine {
~EventTimeline();
/// Fires events for frames > lastTime and <= time.
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
size_t getFrameCount();

View File

@ -49,7 +49,7 @@ namespace spine {
virtual ~IkConstraintTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
/// Sets the time, mix, softness, bend direction, compress, and stretch for the specified frame.

View File

@ -56,7 +56,7 @@ namespace spine {
/// @param time The frame time in seconds.
void setFrame(int frame, float time, Inherit inherit);
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;

View File

@ -49,7 +49,7 @@ namespace spine {
virtual ~PathConstraintMixTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
/// Sets the time and color for the specified frame.

View File

@ -49,7 +49,7 @@ namespace spine {
virtual ~PathConstraintPositionTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
};
}// namespace spine

View File

@ -46,7 +46,7 @@ namespace spine {
virtual ~PathConstraintSpacingTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
};
}

View File

@ -50,7 +50,7 @@ namespace spine {
/// @param constraintIndex -1 for all physics constraints in the skeleton.
explicit PhysicsConstraintTimeline(size_t frameCount, size_t bezierCount, int constraintIndex, Property property);
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
virtual int getConstraintIndex() const override {
@ -268,7 +268,7 @@ namespace spine {
setPropertyIds(ids, 1);
}
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
int getFrameCount() {

View File

@ -51,7 +51,7 @@ namespace spine {
virtual ~SequenceTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
/// Sets the time, mode, index, and frame time for the specified frame.

View File

@ -255,7 +255,7 @@ namespace spine {
/// @param outHeight The height of the AABB.
/// @param outVertexBuffer Reference to hold an array of floats. This method will assign it with new floats as needed.
/// @param clipping Pointer to a SkeletonClipping instance or NULL. If a clipper is given, clipping attachments will be taken into account.
void getBounds(float &outX, float &outY, float &outWidth, float &outHeight, Array<float> &outVertexBuffer, SkeletonClipping *clipper);
void getBounds(float &outX, float &outY, float &outWidth, float &outHeight, Array<float> &outVertexBuffer, SkeletonClipping *clipping);
Color &getColor();
@ -283,6 +283,8 @@ namespace spine {
void setPosition(float x, float y);
void getPosition(float &x, float &y);
float getWindX();
void setWindX(float windX);

View File

@ -45,7 +45,7 @@ namespace spine {
virtual ~SliderMixTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
};
}

View File

@ -45,7 +45,7 @@ namespace spine {
virtual ~SliderTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
};
}

View File

@ -49,7 +49,7 @@ namespace spine {
virtual ~SlotCurveTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
virtual int getSlotIndex() override;

View File

@ -54,14 +54,14 @@ namespace spine {
/// @param skeleton The skeleton the timeline is being applied to. This provides access to the bones, slots, and other skeleton components the timeline may change.
/// @param lastTime lastTime The time this timeline was last applied. Timelines such as EventTimeline trigger only at specific times rather than every frame. In that case, the timeline triggers everything between lastTime (exclusive) and time (inclusive).
/// @param time The time within the animation. Most timelines find the key before and the key after this time so they can interpolate between the keys.
/// @param pEvents If any events are fired, they are added to this array. Can be NULL to ignore firing events or if the timeline does not fire events. May be NULL.
/// @param events If any events are fired, they are added to this array. Can be NULL to ignore firing events or if the timeline does not fire events. May be NULL.
/// @param alpha alpha 0 applies the current or setup pose value (depending on pose parameter). 1 applies the timeline
/// value. Between 0 and 1 applies a value between the current or setup pose and the timeline value. By adjusting alpha over
/// time, an animation can be mixed in or out. alpha can also be useful to apply animations on top of each other (layered).
/// @param blend Controls how mixing is applied when alpha is than 1.
/// @param direction Indicates whether the timeline is mixing in or out. Used by timelines which perform instant transitions such as DrawOrderTimeline and AttachmentTimeline.
/// @param appliedPose True to modify the applied pose.
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) = 0;
size_t getFrameEntries();

View File

@ -50,7 +50,7 @@ namespace spine {
virtual ~TransformConstraintTimeline();
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
virtual void apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) override;
/// Sets the time, rotate mix, translate mix, scale mix, and shear mix for the specified frame.

View File

@ -57,7 +57,7 @@ Animation::~Animation() {
ArrayUtils::deleteElements(_timelines);
}
void Animation::apply(Skeleton &skeleton, float lastTime, float time, bool loop, Array<Event *> *pEvents, float alpha, MixBlend blend,
void Animation::apply(Skeleton &skeleton, float lastTime, float time, bool loop, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
if (loop && _duration != 0) {
time = MathUtil::fmod(time, _duration);
@ -67,7 +67,7 @@ void Animation::apply(Skeleton &skeleton, float lastTime, float time, bool loop,
}
for (size_t i = 0, n = _timelines.size(); i < n; ++i) {
_timelines[i]->apply(skeleton, lastTime, time, pEvents, alpha, blend, direction, appliedPose);
_timelines[i]->apply(skeleton, lastTime, time, events, alpha, blend, direction, appliedPose);
}
}

View File

@ -60,10 +60,10 @@ void AttachmentTimeline::setAttachment(Skeleton &skeleton, SlotPose &pose, Strin
pose.setAttachment(attachmentName == NULL || attachmentName->isEmpty() ? NULL : skeleton.getAttachment(_slotIndex, *attachmentName));
}
void AttachmentTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void AttachmentTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(alpha);
Slot *slot = skeleton._slots[_slotIndex];

View File

@ -48,10 +48,10 @@ BoneTimeline1::BoneTimeline1(size_t frameCount, size_t bezierCount, int boneInde
setPropertyIds(ids, 1);
}
void BoneTimeline1::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
void BoneTimeline1::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend, MixDirection direction,
bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
Bone *bone = skeleton._bones[_boneIndex];
if (bone->isActive()) {
@ -67,10 +67,10 @@ BoneTimeline2::BoneTimeline2(size_t frameCount, size_t bezierCount, int boneInde
setPropertyIds(ids, 2);
}
void BoneTimeline2::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
void BoneTimeline2::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend, MixDirection direction,
bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
Bone *bone = skeleton._bones[_boneIndex];
if (bone->isActive()) {

View File

@ -219,10 +219,10 @@ void AlphaTimeline::setSlotIndex(int inValue) {
_slotIndex = inValue;
}
void AlphaTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
void AlphaTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend, MixDirection direction,
bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
Slot *slot = skeleton._slots[_slotIndex];

View File

@ -52,11 +52,11 @@ DrawOrderTimeline::DrawOrderTimeline(size_t frameCount) : Timeline(frameCount, 1
}
}
void DrawOrderTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void DrawOrderTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(appliedPose);
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(alpha);
Array<Slot *> &drawOrder = skeleton._drawOrder;

View File

@ -53,10 +53,10 @@ IkConstraintTimeline::IkConstraintTimeline(size_t frameCount, size_t bezierCount
IkConstraintTimeline::~IkConstraintTimeline() {
}
void IkConstraintTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void IkConstraintTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
IkConstraint *constraint = (IkConstraint *) skeleton._constraints[_constraintIndex];
if (!constraint->isActive()) return;

View File

@ -57,10 +57,10 @@ void InheritTimeline::setFrame(int frame, float time, Inherit inherit) {
}
void InheritTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void InheritTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(alpha);
Bone *bone = skeleton._bones[_boneIndex];

View File

@ -53,10 +53,10 @@ PathConstraintMixTimeline::PathConstraintMixTimeline(size_t frameCount, size_t b
PathConstraintMixTimeline::~PathConstraintMixTimeline() {
}
void PathConstraintMixTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void PathConstraintMixTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
PathConstraint *constraint = (PathConstraint *) skeleton._constraints[_constraintIndex];

View File

@ -50,10 +50,10 @@ PathConstraintPositionTimeline::PathConstraintPositionTimeline(size_t frameCount
PathConstraintPositionTimeline::~PathConstraintPositionTimeline() {
}
void PathConstraintPositionTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void PathConstraintPositionTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
PathConstraint *constraint = (PathConstraint *) skeleton._constraints[_constraintIndex];

View File

@ -50,10 +50,10 @@ PathConstraintSpacingTimeline::PathConstraintSpacingTimeline(size_t frameCount,
PathConstraintSpacingTimeline::~PathConstraintSpacingTimeline() {
}
void PathConstraintSpacingTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void PathConstraintSpacingTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
PathConstraint *constraint = (PathConstraint *) skeleton._constraints[_constraintIndex];

View File

@ -71,11 +71,11 @@ void SequenceTimeline::setSlotIndex(int inValue) {
_slotIndex = inValue;
}
void SequenceTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void SequenceTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(alpha);
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
Slot *slot = skeleton.getSlots()[getSlotIndex()];
if (!slot->getBone().isActive()) return;

View File

@ -35,23 +35,23 @@
#include <spine/IkConstraint.h>
#include <spine/PathConstraint.h>
#include <spine/PhysicsConstraint.h>
#include <spine/Slider.h>
#include <spine/SkeletonData.h>
#include <spine/Skin.h>
#include <spine/Slider.h>
#include <spine/Slot.h>
#include <spine/TransformConstraint.h>
#include <spine/BoneData.h>
#include <spine/IkConstraintData.h>
#include <spine/ClippingAttachment.h>
#include <spine/IkConstraintData.h>
#include <spine/MeshAttachment.h>
#include <spine/PathAttachment.h>
#include <spine/PathConstraintData.h>
#include <spine/PhysicsConstraintData.h>
#include <spine/RegionAttachment.h>
#include <spine/SkeletonClipping.h>
#include <spine/SlotData.h>
#include <spine/TransformConstraintData.h>
#include <spine/SkeletonClipping.h>
#include <spine/ArrayUtils.h>
@ -224,7 +224,6 @@ void Skeleton::updateWorldTransform(Physics physics) {
}
}
void Skeleton::setupPose() {
setupPoseBones();
setupPoseSlots();
@ -490,6 +489,11 @@ void Skeleton::setPosition(float x, float y) {
_y = y;
}
void Skeleton::getPosition(float &x, float &y) {
x = _x;
y = _y;
}
float Skeleton::getWindX() {
return _windX;
}

View File

@ -51,10 +51,10 @@ SliderMixTimeline::SliderMixTimeline(size_t frameCount, size_t bezierCount, int
SliderMixTimeline::~SliderMixTimeline() {
}
void SliderMixTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void SliderMixTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
Slider *constraint = (Slider *) skeleton._constraints[_constraintIndex];

View File

@ -51,10 +51,10 @@ SliderTimeline::SliderTimeline(size_t frameCount, size_t bezierCount, int slider
SliderTimeline::~SliderTimeline() {
}
void SliderTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void SliderTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
Slider *constraint = (Slider *) skeleton._constraints[_constraintIndex];

View File

@ -53,10 +53,10 @@ void SlotCurveTimeline::setSlotIndex(int inValue) {
_slotIndex = inValue;
}
void SlotCurveTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void SlotCurveTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
Slot *slot = skeleton._slots[_slotIndex];

View File

@ -53,10 +53,10 @@ TransformConstraintTimeline::TransformConstraintTimeline(size_t frameCount, size
TransformConstraintTimeline::~TransformConstraintTimeline() {
}
void TransformConstraintTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *pEvents, float alpha, MixBlend blend,
void TransformConstraintTimeline::apply(Skeleton &skeleton, float lastTime, float time, Array<Event *> *events, float alpha, MixBlend blend,
MixDirection direction, bool appliedPose) {
SP_UNUSED(lastTime);
SP_UNUSED(pEvents);
SP_UNUSED(events);
SP_UNUSED(direction);
TransformConstraint *constraint = (TransformConstraint *) skeleton._constraints[_constraintIndex];