#include #include #include #include #include #include "qvector2d.h" #include "gen_qvector2d.h" extern "C" { extern void miqt_exec_callback(void* cb, int argc, void* argv); } QVector2D* QVector2D_new() { return new QVector2D(); } QVector2D* QVector2D_new2(uintptr_t param1) { return new QVector2D(static_cast(param1)); } QVector2D* QVector2D_new3(float xpos, float ypos) { return new QVector2D(static_cast(xpos), static_cast(ypos)); } QVector2D* QVector2D_new4(QPoint* point) { return new QVector2D(*point); } QVector2D* QVector2D_new5(QPointF* point) { return new QVector2D(*point); } QVector2D* QVector2D_new6(QVector3D* vector) { return new QVector2D(*vector); } QVector2D* QVector2D_new7(QVector4D* vector) { return new QVector2D(*vector); } QVector2D* QVector2D_new8(QVector2D* param1) { return new QVector2D(*param1); } bool QVector2D_IsNull(QVector2D* self) { return const_cast(self)->isNull(); } float QVector2D_X(QVector2D* self) { return const_cast(self)->x(); } float QVector2D_Y(QVector2D* self) { return const_cast(self)->y(); } void QVector2D_SetX(QVector2D* self, float x) { self->setX(static_cast(x)); } void QVector2D_SetY(QVector2D* self, float y) { self->setY(static_cast(y)); } float QVector2D_OperatorSubscript(QVector2D* self, int i) { return const_cast(self)->operator[](static_cast(i)); } float QVector2D_Length(QVector2D* self) { return const_cast(self)->length(); } float QVector2D_LengthSquared(QVector2D* self) { return const_cast(self)->lengthSquared(); } QVector2D* QVector2D_Normalized(QVector2D* self) { QVector2D ret = const_cast(self)->normalized(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QVector2D(ret)); } void QVector2D_Normalize(QVector2D* self) { self->normalize(); } float QVector2D_DistanceToPoint(QVector2D* self, QVector2D* point) { return const_cast(self)->distanceToPoint(*point); } float QVector2D_DistanceToLine(QVector2D* self, QVector2D* point, QVector2D* direction) { return const_cast(self)->distanceToLine(*point, *direction); } QVector2D* QVector2D_OperatorPlusAssign(QVector2D* self, QVector2D* vector) { QVector2D& ret = self->operator+=(*vector); // Cast returned reference into pointer return &ret; } QVector2D* QVector2D_OperatorMinusAssign(QVector2D* self, QVector2D* vector) { QVector2D& ret = self->operator-=(*vector); // Cast returned reference into pointer return &ret; } QVector2D* QVector2D_OperatorMultiplyAssign(QVector2D* self, float factor) { QVector2D& ret = self->operator*=(static_cast(factor)); // Cast returned reference into pointer return &ret; } QVector2D* QVector2D_OperatorMultiplyAssignWithVector(QVector2D* self, QVector2D* vector) { QVector2D& ret = self->operator*=(*vector); // Cast returned reference into pointer return &ret; } QVector2D* QVector2D_OperatorDivideAssign(QVector2D* self, float divisor) { QVector2D& ret = self->operator/=(static_cast(divisor)); // Cast returned reference into pointer return &ret; } QVector2D* QVector2D_OperatorDivideAssignWithVector(QVector2D* self, QVector2D* vector) { QVector2D& ret = self->operator/=(*vector); // Cast returned reference into pointer return &ret; } float QVector2D_DotProduct(QVector2D* v1, QVector2D* v2) { return QVector2D::dotProduct(*v1, *v2); } QVector3D* QVector2D_ToVector3D(QVector2D* self) { QVector3D ret = const_cast(self)->toVector3D(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QVector3D(ret)); } QVector4D* QVector2D_ToVector4D(QVector2D* self) { QVector4D ret = const_cast(self)->toVector4D(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QVector4D(ret)); } QPoint* QVector2D_ToPoint(QVector2D* self) { QPoint ret = const_cast(self)->toPoint(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QPoint(ret)); } QPointF* QVector2D_ToPointF(QVector2D* self) { QPointF ret = const_cast(self)->toPointF(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QPointF(ret)); } void QVector2D_Delete(QVector2D* self) { delete self; }