diff --git a/3-mid/physics/implement/box2d/generate/builder b/3-mid/physics/implement/box2d/generate/builder index 93bfe7f..20765ed 100755 --- a/3-mid/physics/implement/box2d/generate/builder +++ b/3-mid/physics/implement/box2d/generate/builder @@ -17,13 +17,12 @@ echo Generating the binding. echo swig4ada -ada -c++ -cpperraswarn box2d_c.i -rm portable_new_line_Token.tmp echo echo Pretty printing. echo -gnatpp -rnb -I/usr/local/include -I../../c_math/source/thin *.ads -cargs -gnat05 +gnatpp -rnb -I/usr/local/include -I../../c_math/source/thin *.ads indent -sob -di16 *.cxx diff --git a/3-mid/physics/implement/box2d/source/c/box2d-joint.cpp b/3-mid/physics/implement/box2d/source/c/box2d-joint.cpp index f2e3f11..b0099db 100644 --- a/3-mid/physics/implement/box2d/source/c/box2d-joint.cpp +++ b/3-mid/physics/implement/box2d/source/c/box2d-joint.cpp @@ -198,7 +198,7 @@ b2d_Joint_set_local_Anchor (Joint* Self, bool is_Anchor_A, local_Anchor->y)); else b2_revolute_Joint->GetLocalAnchorB() = (b2Vec2 (local_Anchor->x, - local_Anchor->y)); + local_Anchor->y)); } @@ -319,10 +319,32 @@ b2d_Joint_Velocity_is (Joint* Self, int DoF, } +bool +b2d_Joint_collide_Connected (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + + return b2_Joint->GetCollideConnected(); +} + + /// Hinge // +bool +b2d_Joint_hinge_limit_Enabled (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->IsLimitEnabled(); +} + + + void b2d_Joint_hinge_Limits_are (Joint* Self, Real Low, Real High) @@ -343,4 +365,93 @@ b2d_Joint_hinge_Limits_are (Joint* Self, Real Low, } + +Vector_3 +b2d_Joint_hinge_local_Anchor_on_A (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + b2Vec2 Anchor = b2_Hinge->GetLocalAnchorA(); + + return {Anchor.x, Anchor.y, 0.0}; +} + + + +Vector_3 +b2d_Joint_hinge_local_Anchor_on_B (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + b2Vec2 Anchor = b2_Hinge->GetLocalAnchorB(); + + return {Anchor.x, Anchor.y, 0.0}; +} + + + +Real +b2d_Joint_hinge_reference_Angle (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->GetReferenceAngle(); +} + + + +Real +b2d_Joint_hinge_Angle (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->GetJointAngle(); +} + + + + + +bool +b2d_Joint_hinge_motor_Enabled (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->IsMotorEnabled(); +} + + + +Real +b2d_Joint_hinge_motor_Speed (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->GetMotorSpeed(); +} + + + +Real +b2d_Joint_hinge_max_motor_Torque (Joint* Self) +{ + b2JointDef* b2_Self = (b2JointDef*) Self; + b2Joint* b2_Joint = (b2Joint*) b2_Self->userData.pointer; + b2RevoluteJoint* b2_Hinge = dynamic_cast (b2_Joint); + + return b2_Hinge->GetMaxMotorTorque(); +} + + + } // extern "C" diff --git a/3-mid/physics/implement/box2d/source/c/box2d-joint.h b/3-mid/physics/implement/box2d/source/c/box2d-joint.h index 824de1a..2f56ac1 100644 --- a/3-mid/physics/implement/box2d/source/c/box2d-joint.h +++ b/3-mid/physics/implement/box2d/source/c/box2d-joint.h @@ -79,7 +79,7 @@ extern "C" void b2d_Joint_Frame_B_is (Joint* Self, Matrix_4x4* Now); void b2d_Joint_set_local_Anchor (Joint* Self, bool is_Anchor_A, - Vector_3* local_Anchor); + Vector_3* local_Anchor); bool b2d_Joint_is_Limited (Joint* Self, int DoF); @@ -91,14 +91,28 @@ extern "C" Vector_3 b2d_Joint_reaction_Force (Joint* Self); Real b2d_Joint_reaction_Torque (Joint* Self); + bool b2d_Joint_collide_Connected (Joint* Self); + /// Hinge // + bool b2d_Joint_hinge_limit_Enabled (Joint* Self); + void b2d_Joint_hinge_Limits_are (Joint* Self, Real Low, Real High); + Vector_3 b2d_Joint_hinge_local_Anchor_on_A (Joint* Self); + Vector_3 b2d_Joint_hinge_local_Anchor_on_B (Joint* Self); + + Real b2d_Joint_hinge_reference_Angle (Joint* Self); + Real b2d_Joint_hinge_Angle (Joint* Self); + bool b2d_Joint_hinge_motor_Enabled (Joint* Self); + Real b2d_Joint_hinge_motor_Speed (Joint* Self); + Real b2d_Joint_hinge_max_motor_Torque (Joint* Self); + + } // extern "C" diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_contact.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_contact.ads index 398d48c..5e9da3a 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_contact.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_contact.ads @@ -2,84 +2,59 @@ -- with c_math_c.Vector_3; with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; - - +use Interfaces.C; +with Interfaces.C.Pointers; package box2d_c.b2d_Contact is -- Item -- -type Item is - record - Object_A : access box2d_c.Object; - Object_B : access box2d_c.Object; - Site : aliased c_math_c.Vector_3.Item; - end record; - - + type Item is record + Object_A : access box2d_c.Object; + Object_B : access box2d_c.Object; + Site : aliased c_math_c.Vector_3.Item; + end record; -- Item_Array -- - type Item_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_Contact.Item; - - + type Item_Array is + array (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_Contact.Item; -- Pointer -- - package C_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_Contact.Item, - element_Array => box2d_c.b2d_Contact.Item_Array, - default_Terminator => (others => <>)); + package C_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.b2d_Contact.Item, + Element_Array => box2d_c.b2d_Contact.Item_Array, + Default_Terminator => (others => <>)); -subtype Pointer is C_Pointers.Pointer; + subtype Pointer is C_Pointers.Pointer; -- Pointer_Array -- - type Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_Contact.Pointer; - - + type Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_Contact.Pointer; -- Pointer_Pointer -- - package C_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_Contact.Pointer, - element_Array => box2d_c.b2d_Contact.Pointer_Array, - default_Terminator => null); + package C_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.b2d_Contact.Pointer, + Element_Array => box2d_c.b2d_Contact.Pointer_Array, + Default_Terminator => null); -subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; + subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; - - - - - - function construct return box2d_c.b2d_Contact.Item; + function construct return box2d_c.b2d_Contact.Item; procedure destruct_0 (Self : in box2d_c.b2d_Contact.Item); procedure destruct (Self : in box2d_c.b2d_Contact.Item); - - - - - - - - private - - - pragma Import (CPP, construct, "ada_new_b2d_Contact_b2d_Contact"); pragma Import (CPP, destruct_0, "_ZN11b2d_ContactD1Ev"); pragma Import (CPP, destruct, "_ZN11b2d_ContactD1Ev"); - - end box2d_c.b2d_Contact; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_point_collision.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_point_collision.ads index cd1b313..31d090f 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_point_collision.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_point_collision.ads @@ -2,83 +2,64 @@ -- with c_math_c.Vector_3; with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; - - +use Interfaces.C; +with Interfaces.C.Pointers; package box2d_c.b2d_point_Collision is -- Item -- -type Item is - record - near_Object : access box2d_c.Object; - Site_world : aliased c_math_c.Vector_3.Item; - end record; - - + type Item is record + near_Object : access box2d_c.Object; + Site_world : aliased c_math_c.Vector_3.Item; + end record; -- Item_Array -- - type Item_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_point_Collision.Item; - - + type Item_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_point_Collision + .Item; -- Pointer -- - package C_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_point_Collision.Item, - element_Array => box2d_c.b2d_point_Collision.Item_Array, - default_Terminator => (others => <>)); + package C_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, + Element => box2d_c.b2d_point_Collision.Item, + Element_Array => box2d_c.b2d_point_Collision.Item_Array, + Default_Terminator => (others => <>)); -subtype Pointer is C_Pointers.Pointer; + subtype Pointer is C_Pointers.Pointer; -- Pointer_Array -- - type Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_point_Collision.Pointer; - - + type Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_point_Collision + .Pointer; -- Pointer_Pointer -- - package C_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_point_Collision.Pointer, - element_Array => box2d_c.b2d_point_Collision.Pointer_Array, - default_Terminator => null); + package C_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, + Element => box2d_c.b2d_point_Collision.Pointer, + Element_Array => box2d_c.b2d_point_Collision.Pointer_Array, + Default_Terminator => null); -subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; + subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; - - - - - - function construct return box2d_c.b2d_point_Collision.Item; + function construct return box2d_c.b2d_point_Collision.Item; procedure destruct_0 (Self : in box2d_c.b2d_point_Collision.Item); procedure destruct (Self : in box2d_c.b2d_point_Collision.Item); - - - - - - - - private - - - - pragma Import (CPP, construct, "ada_new_b2d_point_Collision_b2d_point_Collision"); + pragma Import + (CPP, construct, "ada_new_b2d_point_Collision_b2d_point_Collision"); pragma Import (CPP, destruct_0, "_ZN19b2d_point_CollisionD1Ev"); pragma Import (CPP, destruct, "_ZN19b2d_point_CollisionD1Ev"); - - end box2d_c.b2d_point_Collision; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_ray_collision.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_ray_collision.ads index 353fe9d..e3aafc9 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_ray_collision.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-b2d_ray_collision.ads @@ -3,85 +3,65 @@ with c_math_c; with c_math_c.Vector_3; with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; - - +use Interfaces.C; +with Interfaces.C.Pointers; package box2d_c.b2d_ray_Collision is -- Item -- -type Item is - record - near_Object : access box2d_c.Object; - hit_Fraction : aliased c_math_c.Real; - Normal_world : aliased c_math_c.Vector_3.Item; - Site_world : aliased c_math_c.Vector_3.Item; - end record; - - + type Item is record + near_Object : access box2d_c.Object; + hit_Fraction : aliased c_math_c.Real; + Normal_world : aliased c_math_c.Vector_3.Item; + Site_world : aliased c_math_c.Vector_3.Item; + end record; -- Item_Array -- - type Item_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_ray_Collision.Item; - - + type Item_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_ray_Collision + .Item; -- Pointer -- - package C_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_ray_Collision.Item, - element_Array => box2d_c.b2d_ray_Collision.Item_Array, - default_Terminator => (others => <>)); + package C_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.b2d_ray_Collision.Item, + Element_Array => box2d_c.b2d_ray_Collision.Item_Array, + Default_Terminator => (others => <>)); -subtype Pointer is C_Pointers.Pointer; + subtype Pointer is C_Pointers.Pointer; -- Pointer_Array -- - type Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2d_ray_Collision.Pointer; - - + type Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.b2d_ray_Collision + .Pointer; -- Pointer_Pointer -- - package C_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2d_ray_Collision.Pointer, - element_Array => box2d_c.b2d_ray_Collision.Pointer_Array, - default_Terminator => null); + package C_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, + Element => box2d_c.b2d_ray_Collision.Pointer, + Element_Array => box2d_c.b2d_ray_Collision.Pointer_Array, + Default_Terminator => null); -subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; + subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; - - - - - - function construct return box2d_c.b2d_ray_Collision.Item; + function construct return box2d_c.b2d_ray_Collision.Item; procedure destruct_0 (Self : in box2d_c.b2d_ray_Collision.Item); procedure destruct (Self : in box2d_c.b2d_ray_Collision.Item); - - - - - - - - private - - - - pragma Import (CPP, construct, "ada_new_b2d_ray_Collision_b2d_ray_Collision"); + pragma Import + (CPP, construct, "ada_new_b2d_ray_Collision_b2d_ray_Collision"); pragma Import (CPP, destruct_0, "_ZN17b2d_ray_CollisionD1Ev"); pragma Import (CPP, destruct, "_ZN17b2d_ray_CollisionD1Ev"); - - end box2d_c.b2d_ray_Collision; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-binding.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-binding.ads index 008d006..26bc50d 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-binding.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-binding.ads @@ -11,271 +11,356 @@ with c_math_c.Matrix_4x4; with c_math_c.Pointers; with c_math_c.Vector_2; with c_math_c.Vector_3; -with interfaces.c; +with Interfaces.C; with swig; with Interfaces.C; - -use Interfaces.C; - - +use Interfaces.C; package box2d_c.Binding is + function b2d_new_Circle + (Radius : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Polygon + (Vertices : in c_math_c.Vector_2.Pointer; + vertex_Count : in Interfaces.C.int) + return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Box + (half_Extents : in c_math_c.Vector_3.Pointer) + return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Capsule + (Radii : in c_math_c.Vector_2.Pointer; Height : in c_math_c.Real) + return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Cone + (Radius : in c_math_c.Real; Height : in c_math_c.Real) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_Circle (Radius : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_convex_Hull + (Points : in c_math_c.Vector_3.Pointer; point_Count : in Interfaces.C.int) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_Polygon (Vertices : in c_math_c.Vector_2.Pointer; - vertex_Count : in interfaces.c.int) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Cylinder + (half_Extents : in c_math_c.Vector_3.Pointer) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_Box (half_Extents : in c_math_c.Vector_3.Pointer) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Heightfield + (Width : in Interfaces.C.int; Depth : in Interfaces.C.int; + Heights : in c_math_c.Pointers.Real_Pointer; + min_Height : in c_math_c.Real; max_Height : in c_math_c.Real; + Scale : in c_math_c.Vector_3.Pointer) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_Capsule (Radii : in c_math_c.Vector_2.Pointer; - Height : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_multiSphere + (Positions : in c_math_c.Vector_3.Pointer; + Radii : in c_math_c.Pointers.Real_Pointer; + sphere_Count : in Interfaces.C.int) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_Cone (Radius : in c_math_c.Real; - Height : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Plane + (Normal : in c_math_c.Vector_3.Pointer; Offset : in c_math_c.Real) + return box2d_c.Pointers.Shape_Pointer; - function b2d_new_convex_Hull (Points : in c_math_c.Vector_3.Pointer; - point_Count : in interfaces.c.int) return box2d_c.Pointers.Shape_Pointer; - - function b2d_new_Cylinder (half_Extents : in c_math_c.Vector_3.Pointer) return box2d_c.Pointers.Shape_Pointer; - - function b2d_new_Heightfield (Width : in interfaces.c.int; - Depth : in interfaces.c.int; - Heights : in c_math_c.Pointers.Real_Pointer; - min_Height : in c_math_c.Real; - max_Height : in c_math_c.Real; - Scale : in c_math_c.Vector_3.Pointer) return box2d_c.Pointers.Shape_Pointer; - - function b2d_new_multiSphere (Positions : in c_math_c.Vector_3.Pointer; - Radii : in c_math_c.Pointers.Real_Pointer; - sphere_Count : in interfaces.c.int) return box2d_c.Pointers.Shape_Pointer; - - function b2d_new_Plane (Normal : in c_math_c.Vector_3.Pointer; - Offset : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; - - function b2d_new_Sphere (Radius : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; + function b2d_new_Sphere + (Radius : in c_math_c.Real) return box2d_c.Pointers.Shape_Pointer; procedure b2d_free_Shape (Self : in box2d_c.Pointers.Shape_Pointer); - function b2d_Shape_user_Data (Self : in box2d_c.Pointers.Shape_Pointer) return swig.void_ptr; + function b2d_Shape_user_Data + (Self : in box2d_c.Pointers.Shape_Pointer) return swig.void_ptr; - procedure b2d_Shape_user_Data_is (Self : in box2d_c.Pointers.Shape_Pointer; - Now : in swig.void_ptr); + procedure b2d_Shape_user_Data_is + (Self : in box2d_c.Pointers.Shape_Pointer; Now : in swig.void_ptr); - procedure b2d_shape_Scale_is (Self : in box2d_c.Pointers.Shape_Pointer; - Now : in c_math_c.Vector_2.Item); + procedure b2d_shape_Scale_is + (Self : in box2d_c.Pointers.Shape_Pointer; + Now : in c_math_c.Vector_2.Item); - function b2d_new_Object (Site : in c_math_c.Vector_2.Pointer; - Mass : in c_math_c.Real; - Friction : in c_math_c.Real; - Restitution : in c_math_c.Real; - the_Shape : in box2d_c.Pointers.Shape_Pointer) return box2d_c.Pointers.Object_Pointer; + function b2d_new_Object + (Site : in c_math_c.Vector_2.Pointer; Mass : in c_math_c.Real; + Friction : in c_math_c.Real; Restitution : in c_math_c.Real; + the_Shape : in box2d_c.Pointers.Shape_Pointer) + return box2d_c.Pointers.Object_Pointer; procedure b2d_free_Object (Self : in box2d_c.Pointers.Object_Pointer); - procedure b2d_Object_Scale_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Vector_2.Pointer); + procedure b2d_Object_Scale_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Vector_2.Pointer); - function b2d_Object_Shape (Self : in box2d_c.Pointers.Object_Pointer) return box2d_c.Pointers.Shape_Pointer; + function b2d_Object_Shape + (Self : in box2d_c.Pointers.Object_Pointer) + return box2d_c.Pointers.Shape_Pointer; - function b2d_Object_user_Data (Self : in box2d_c.Pointers.Object_Pointer) return swig.void_ptr; + function b2d_Object_user_Data + (Self : in box2d_c.Pointers.Object_Pointer) return swig.void_ptr; - procedure b2d_Object_user_Data_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in swig.void_ptr); + procedure b2d_Object_user_Data_is + (Self : in box2d_c.Pointers.Object_Pointer; Now : in swig.void_ptr); - function b2d_Object_Mass (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Real; + function b2d_Object_Mass + (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Real; - procedure b2d_Object_Friction_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Real); + procedure b2d_Object_Friction_is + (Self : in box2d_c.Pointers.Object_Pointer; Now : in c_math_c.Real); - procedure b2d_Object_Restitution_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Real); + procedure b2d_Object_Restitution_is + (Self : in box2d_c.Pointers.Object_Pointer; Now : in c_math_c.Real); - function b2d_Object_Site (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; + function b2d_Object_Site + (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; - procedure b2d_Object_Site_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_Site_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Vector_3.Pointer); - function b2d_Object_Spin (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Matrix_3x3.Item; + function b2d_Object_Spin + (Self : in box2d_c.Pointers.Object_Pointer) + return c_math_c.Matrix_3x3.Item; - procedure b2d_Object_Spin_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Matrix_3x3.Pointer); + procedure b2d_Object_Spin_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Matrix_3x3.Pointer); - function b2d_Object_xy_Spin (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Real; + function b2d_Object_xy_Spin + (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Real; - procedure b2d_Object_xy_Spin_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Real); + procedure b2d_Object_xy_Spin_is + (Self : in box2d_c.Pointers.Object_Pointer; Now : in c_math_c.Real); - function b2d_Object_Transform (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Matrix_4x4.Item; + function b2d_Object_Transform + (Self : in box2d_c.Pointers.Object_Pointer) + return c_math_c.Matrix_4x4.Item; - procedure b2d_Object_Transform_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Matrix_4x4.Pointer); + procedure b2d_Object_Transform_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Matrix_4x4.Pointer); - function b2d_Object_Speed (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; + function b2d_Object_Speed + (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; - procedure b2d_Object_Speed_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_Speed_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Vector_3.Pointer); - function b2d_Object_Gyre (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; + function b2d_Object_Gyre + (Self : in box2d_c.Pointers.Object_Pointer) return c_math_c.Vector_3.Item; - procedure b2d_Object_Gyre_is (Self : in box2d_c.Pointers.Object_Pointer; - Now : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_Gyre_is + (Self : in box2d_c.Pointers.Object_Pointer; + Now : in c_math_c.Vector_3.Pointer); - procedure b2d_Object_apply_Force (Self : in box2d_c.Pointers.Object_Pointer; - Force : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_apply_Force + (Self : in box2d_c.Pointers.Object_Pointer; + Force : in c_math_c.Vector_3.Pointer); - procedure b2d_Object_apply_Torque (Self : in box2d_c.Pointers.Object_Pointer; - Torque : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_apply_Torque + (Self : in box2d_c.Pointers.Object_Pointer; + Torque : in c_math_c.Vector_3.Pointer); - procedure b2d_Object_apply_Torque_impulse (Self : in box2d_c.Pointers.Object_Pointer; - Torque : in c_math_c.Vector_3.Pointer); + procedure b2d_Object_apply_Torque_impulse + (Self : in box2d_c.Pointers.Object_Pointer; + Torque : in c_math_c.Vector_3.Pointer); procedure b2d_dump (Self : in box2d_c.Pointers.Object_Pointer); - function b2d_new_hinge_Joint_with_local_anchors (in_Space : in box2d_c.Pointers.Space_Pointer; - Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Anchor_in_A : in c_math_c.Vector_3.Pointer; - Anchor_in_B : in c_math_c.Vector_3.Pointer; - low_Limit : in interfaces.c.c_float; - high_Limit : in interfaces.c.c_float; - collide_Connected : in swig.bool) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_hinge_Joint_with_local_anchors + (in_Space : in box2d_c.Pointers.Space_Pointer; + Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Anchor_in_A : in c_math_c.Vector_3.Pointer; + Anchor_in_B : in c_math_c.Vector_3.Pointer; + low_Limit : in Interfaces.C.C_float; + high_Limit : in Interfaces.C.C_float; collide_Connected : in swig.bool) + return box2d_c.Pointers.Joint_Pointer; - function b2d_new_hinge_Joint (in_Space : in box2d_c.Pointers.Space_Pointer; - Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Frame_A : in c_math_c.Matrix_4x4.Pointer; - Frame_B : in c_math_c.Matrix_4x4.Pointer; - low_Limit : in interfaces.c.c_float; - high_Limit : in interfaces.c.c_float; - collide_Connected : in swig.bool) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_hinge_Joint + (in_Space : in box2d_c.Pointers.Space_Pointer; + Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Frame_A : in c_math_c.Matrix_4x4.Pointer; + Frame_B : in c_math_c.Matrix_4x4.Pointer; + low_Limit : in Interfaces.C.C_float; + high_Limit : in Interfaces.C.C_float; collide_Connected : in swig.bool) + return box2d_c.Pointers.Joint_Pointer; procedure b2d_free_hinge_Joint (Self : in box2d_c.Pointers.Joint_Pointer); - function b2d_new_space_hinge_Joint (in_Space : in box2d_c.Pointers.Space_Pointer; - Object_A : in box2d_c.Pointers.Object_Pointer; - Frame_A : in c_math_c.Matrix_4x4.Pointer) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_space_hinge_Joint + (in_Space : in box2d_c.Pointers.Space_Pointer; + Object_A : in box2d_c.Pointers.Object_Pointer; + Frame_A : in c_math_c.Matrix_4x4.Pointer) + return box2d_c.Pointers.Joint_Pointer; - function b2d_new_DoF6_Joint (Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Frame_A : in c_math_c.Matrix_4x4.Pointer; - Frame_B : in c_math_c.Matrix_4x4.Pointer) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_DoF6_Joint + (Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Frame_A : in c_math_c.Matrix_4x4.Pointer; + Frame_B : in c_math_c.Matrix_4x4.Pointer) + return box2d_c.Pointers.Joint_Pointer; - function b2d_new_cone_twist_Joint (Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Frame_A : in c_math_c.Matrix_4x4.Pointer; - Frame_B : in c_math_c.Matrix_4x4.Pointer) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_cone_twist_Joint + (Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Frame_A : in c_math_c.Matrix_4x4.Pointer; + Frame_B : in c_math_c.Matrix_4x4.Pointer) + return box2d_c.Pointers.Joint_Pointer; - function b2d_new_slider_Joint (Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Frame_A : in c_math_c.Matrix_4x4.Pointer; - Frame_B : in c_math_c.Matrix_4x4.Pointer) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_slider_Joint + (Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Frame_A : in c_math_c.Matrix_4x4.Pointer; + Frame_B : in c_math_c.Matrix_4x4.Pointer) + return box2d_c.Pointers.Joint_Pointer; - function b2d_new_ball_Joint (Object_A : in box2d_c.Pointers.Object_Pointer; - Object_B : in box2d_c.Pointers.Object_Pointer; - Pivot_in_A : in c_math_c.Vector_3.Pointer; - Pivot_in_B : in c_math_c.Vector_3.Pointer) return box2d_c.Pointers.Joint_Pointer; + function b2d_new_ball_Joint + (Object_A : in box2d_c.Pointers.Object_Pointer; + Object_B : in box2d_c.Pointers.Object_Pointer; + Pivot_in_A : in c_math_c.Vector_3.Pointer; + Pivot_in_B : in c_math_c.Vector_3.Pointer) + return box2d_c.Pointers.Joint_Pointer; - function b2d_Joint_user_Data (Self : in box2d_c.Pointers.Joint_Pointer) return swig.void_ptr; + function b2d_Joint_user_Data + (Self : in box2d_c.Pointers.Joint_Pointer) return swig.void_ptr; - procedure b2d_Joint_user_Data_is (Self : in box2d_c.Pointers.Joint_Pointer; - Now : in swig.void_ptr); + function b2d_Joint_Object_A + (Self : in box2d_c.Pointers.Joint_Pointer) + return box2d_c.Pointers.Object_Pointer; - function b2d_Joint_Object_A (Self : in box2d_c.Pointers.Joint_Pointer) return box2d_c.Pointers.Object_Pointer; + function b2d_Joint_Object_B + (Self : in box2d_c.Pointers.Joint_Pointer) + return box2d_c.Pointers.Object_Pointer; - function b2d_Joint_Object_B (Self : in box2d_c.Pointers.Joint_Pointer) return box2d_c.Pointers.Object_Pointer; + function b2d_Joint_Frame_A + (Self : in box2d_c.Pointers.Joint_Pointer) + return c_math_c.Matrix_4x4.Item; - function b2d_Joint_Frame_A (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Matrix_4x4.Item; + function b2d_Joint_Frame_B + (Self : in box2d_c.Pointers.Joint_Pointer) + return c_math_c.Matrix_4x4.Item; - function b2d_Joint_Frame_B (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Matrix_4x4.Item; + procedure b2d_Joint_Frame_A_is + (Self : in box2d_c.Pointers.Joint_Pointer; + Now : in c_math_c.Matrix_4x4.Pointer); - procedure b2d_Joint_Frame_A_is (Self : in box2d_c.Pointers.Joint_Pointer; - Now : in c_math_c.Matrix_4x4.Pointer); + procedure b2d_Joint_Frame_B_is + (Self : in box2d_c.Pointers.Joint_Pointer; + Now : in c_math_c.Matrix_4x4.Pointer); - procedure b2d_Joint_Frame_B_is (Self : in box2d_c.Pointers.Joint_Pointer; - Now : in c_math_c.Matrix_4x4.Pointer); + procedure b2d_Joint_set_local_Anchor + (Self : in box2d_c.Pointers.Joint_Pointer; is_Anchor_A : in swig.bool; + local_Anchor : in c_math_c.Vector_3.Pointer); - procedure b2d_Joint_set_local_Anchor (Self : in box2d_c.Pointers.Joint_Pointer; - is_Anchor_A : in swig.bool; - local_Anchor : in c_math_c.Vector_3.Pointer); + function b2d_Joint_is_Limited + (Self : in box2d_c.Pointers.Joint_Pointer; DoF : in Interfaces.C.int) + return swig.bool; - function b2d_Joint_is_Limited (Self : in box2d_c.Pointers.Joint_Pointer; - DoF : in interfaces.c.int) return swig.bool; + function b2d_Joint_Extent + (Self : in box2d_c.Pointers.Joint_Pointer; DoF : in Interfaces.C.int) + return swig.bool; - function b2d_Joint_Extent (Self : in box2d_c.Pointers.Joint_Pointer; - DoF : in interfaces.c.int) return swig.bool; + procedure b2d_Joint_Velocity_is + (Self : in box2d_c.Pointers.Joint_Pointer; DoF : in Interfaces.C.int; + Now : in c_math_c.Real); - procedure b2d_Joint_Velocity_is (Self : in box2d_c.Pointers.Joint_Pointer; - DoF : in interfaces.c.int; - Now : in c_math_c.Real); + function b2d_Joint_reaction_Force + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Vector_3.Item; - function b2d_Joint_reaction_Force (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Vector_3.Item; + function b2d_Joint_reaction_Torque + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; - function b2d_Joint_reaction_Torque (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; + function b2d_Joint_collide_Connected + (Self : in box2d_c.Pointers.Joint_Pointer) return swig.bool; - procedure b2d_Joint_hinge_Limits_are (Self : in box2d_c.Pointers.Joint_Pointer; - Low : in c_math_c.Real; - High : in c_math_c.Real); + function b2d_Joint_hinge_limit_Enabled + (Self : in box2d_c.Pointers.Joint_Pointer) return swig.bool; - function b2d_new_Space return box2d_c.Pointers.Space_Pointer; + procedure b2d_Joint_hinge_Limits_are + (Self : in box2d_c.Pointers.Joint_Pointer; Low : in c_math_c.Real; + High : in c_math_c.Real); + + function b2d_Joint_hinge_local_Anchor_on_A + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Vector_3.Item; + + function b2d_Joint_hinge_local_Anchor_on_B + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Vector_3.Item; + + function b2d_Joint_hinge_reference_Angle + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; + + function b2d_Joint_hinge_Angle + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; + + function b2d_Joint_hinge_motor_Enabled + (Self : in box2d_c.Pointers.Joint_Pointer) return swig.bool; + + function b2d_Joint_hinge_motor_Speed + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; + + function b2d_Joint_hinge_max_motor_Torque + (Self : in box2d_c.Pointers.Joint_Pointer) return c_math_c.Real; + + function b2d_new_Space return box2d_c.Pointers.Space_Pointer; procedure b2d_free_Space (Self : in box2d_c.Pointers.Space_Pointer); - procedure b2d_Space_add_Object (Self : in box2d_c.Pointers.Space_Pointer; - the_Object : in box2d_c.Pointers.Object_Pointer); + procedure b2d_Space_add_Object + (Self : in box2d_c.Pointers.Space_Pointer; + the_Object : in box2d_c.Pointers.Object_Pointer); - procedure b2d_Space_rid_Object (Self : in box2d_c.Pointers.Space_Pointer; - the_Object : in box2d_c.Pointers.Object_Pointer); + procedure b2d_Space_rid_Object + (Self : in box2d_c.Pointers.Space_Pointer; + the_Object : in box2d_c.Pointers.Object_Pointer); - procedure b2d_Space_add_Joint (Self : in box2d_c.Pointers.Space_Pointer; - the_Joint : in box2d_c.Pointers.Joint_Pointer); + procedure b2d_Space_add_Joint + (Self : in box2d_c.Pointers.Space_Pointer; + the_Joint : in box2d_c.Pointers.Joint_Pointer); - procedure b2d_Space_rid_Joint (Self : in box2d_c.Pointers.Space_Pointer; - the_Joint : in box2d_c.Pointers.Joint_Pointer); + procedure b2d_Space_rid_Joint + (Self : in box2d_c.Pointers.Space_Pointer; + the_Joint : in box2d_c.Pointers.Joint_Pointer); - function b2d_b2Joint_user_Data (the_Joint : in box2d_c.Pointers.b2Joint_Pointer) return swig.void_ptr; + function b2d_b2Joint_user_Data + (the_Joint : in box2d_c.Pointers.b2Joint_Pointer) return swig.void_ptr; - function b2d_Space_first_Joint (Self : in box2d_c.Pointers.Space_Pointer) return box2d_c.joint_Cursor.Item; + function b2d_Space_first_Joint + (Self : in box2d_c.Pointers.Space_Pointer) + return box2d_c.joint_Cursor.Item; procedure b2d_Space_next_Joint (Cursor : in box2d_c.joint_Cursor.Pointer); - function b2d_Space_joint_Element (Cursor : in box2d_c.joint_Cursor.Pointer) return box2d_c.Pointers.b2Joint_Pointer; - - procedure b2d_Space_Gravity_is (Self : in box2d_c.Pointers.Space_Pointer; - Now : in c_math_c.Vector_3.Pointer); - - procedure b2d_Space_evolve (Self : in box2d_c.Pointers.Space_Pointer; - By : in interfaces.c.c_float); - - function b2d_Space_cast_Ray (Self : in box2d_c.Pointers.Space_Pointer; - From : in c_math_c.Vector_3.Pointer; - To : in c_math_c.Vector_3.Pointer) return box2d_c.b2d_ray_Collision.Item; - - function b2d_Space_cast_Point (Self : in box2d_c.Pointers.Space_Pointer; - Point : in c_math_c.Vector_3.Pointer) return box2d_c.b2d_point_Collision.Item; - - function b2d_space_contact_Count (Self : in box2d_c.Pointers.Space_Pointer) return interfaces.c.int; - - function b2d_space_Contact (Self : in box2d_c.Pointers.Space_Pointer; - contact_Id : in interfaces.c.int) return box2d_c.b2d_Contact.Item; - - + function b2d_Space_joint_Element + (Cursor : in box2d_c.joint_Cursor.Pointer) + return box2d_c.Pointers.b2Joint_Pointer; + procedure b2d_Space_Gravity_is + (Self : in box2d_c.Pointers.Space_Pointer; + Now : in c_math_c.Vector_3.Pointer); + procedure b2d_Space_evolve + (Self : in box2d_c.Pointers.Space_Pointer; By : in Interfaces.C.C_float); + function b2d_Space_cast_Ray + (Self : in box2d_c.Pointers.Space_Pointer; + From : in c_math_c.Vector_3.Pointer; To : in c_math_c.Vector_3.Pointer) + return box2d_c.b2d_ray_Collision.Item; + function b2d_Space_cast_Point + (Self : in box2d_c.Pointers.Space_Pointer; + Point : in c_math_c.Vector_3.Pointer) + return box2d_c.b2d_point_Collision.Item; + function b2d_space_contact_Count + (Self : in box2d_c.Pointers.Space_Pointer) return Interfaces.C.int; + function b2d_space_Contact + (Self : in box2d_c.Pointers.Space_Pointer; + contact_Id : in Interfaces.C.int) return box2d_c.b2d_Contact.Item; private - - pragma Import (C, b2d_new_Circle, "Ada_b2d_new_Circle"); pragma Import (C, b2d_new_Polygon, "Ada_b2d_new_Polygon"); pragma Import (C, b2d_new_Box, "Ada_b2d_new_Box"); @@ -296,10 +381,12 @@ private pragma Import (C, b2d_Object_Scale_is, "Ada_b2d_Object_Scale_is"); pragma Import (C, b2d_Object_Shape, "Ada_b2d_Object_Shape"); pragma Import (C, b2d_Object_user_Data, "Ada_b2d_Object_user_Data"); - pragma Import (C, b2d_Object_user_Data_is, "Ada_b2d_Object_user_Data_is"); + pragma Import + (C, b2d_Object_user_Data_is, "Ada_b2d_Object_user_Data_is"); pragma Import (C, b2d_Object_Mass, "Ada_b2d_Object_Mass"); pragma Import (C, b2d_Object_Friction_is, "Ada_b2d_Object_Friction_is"); - pragma Import (C, b2d_Object_Restitution_is, "Ada_b2d_Object_Restitution_is"); + pragma Import + (C, b2d_Object_Restitution_is, "Ada_b2d_Object_Restitution_is"); pragma Import (C, b2d_Object_Site, "Ada_b2d_Object_Site"); pragma Import (C, b2d_Object_Site_is, "Ada_b2d_Object_Site_is"); pragma Import (C, b2d_Object_Spin, "Ada_b2d_Object_Spin"); @@ -307,38 +394,72 @@ private pragma Import (C, b2d_Object_xy_Spin, "Ada_b2d_Object_xy_Spin"); pragma Import (C, b2d_Object_xy_Spin_is, "Ada_b2d_Object_xy_Spin_is"); pragma Import (C, b2d_Object_Transform, "Ada_b2d_Object_Transform"); - pragma Import (C, b2d_Object_Transform_is, "Ada_b2d_Object_Transform_is"); + pragma Import + (C, b2d_Object_Transform_is, "Ada_b2d_Object_Transform_is"); pragma Import (C, b2d_Object_Speed, "Ada_b2d_Object_Speed"); pragma Import (C, b2d_Object_Speed_is, "Ada_b2d_Object_Speed_is"); pragma Import (C, b2d_Object_Gyre, "Ada_b2d_Object_Gyre"); pragma Import (C, b2d_Object_Gyre_is, "Ada_b2d_Object_Gyre_is"); pragma Import (C, b2d_Object_apply_Force, "Ada_b2d_Object_apply_Force"); - pragma Import (C, b2d_Object_apply_Torque, "Ada_b2d_Object_apply_Torque"); - pragma Import (C, b2d_Object_apply_Torque_impulse, "Ada_b2d_Object_apply_Torque_impulse"); + pragma Import + (C, b2d_Object_apply_Torque, "Ada_b2d_Object_apply_Torque"); + pragma Import + (C, b2d_Object_apply_Torque_impulse, + "Ada_b2d_Object_apply_Torque_impulse"); pragma Import (C, b2d_dump, "Ada_b2d_dump"); - pragma Import (C, b2d_new_hinge_Joint_with_local_anchors, "Ada_b2d_new_hinge_Joint_with_local_anchors"); + pragma Import + (C, b2d_new_hinge_Joint_with_local_anchors, + "Ada_b2d_new_hinge_Joint_with_local_anchors"); pragma Import (C, b2d_new_hinge_Joint, "Ada_b2d_new_hinge_Joint"); pragma Import (C, b2d_free_hinge_Joint, "Ada_b2d_free_hinge_Joint"); - pragma Import (C, b2d_new_space_hinge_Joint, "Ada_b2d_new_space_hinge_Joint"); + pragma Import + (C, b2d_new_space_hinge_Joint, "Ada_b2d_new_space_hinge_Joint"); pragma Import (C, b2d_new_DoF6_Joint, "Ada_b2d_new_DoF6_Joint"); - pragma Import (C, b2d_new_cone_twist_Joint, "Ada_b2d_new_cone_twist_Joint"); + pragma Import + (C, b2d_new_cone_twist_Joint, "Ada_b2d_new_cone_twist_Joint"); pragma Import (C, b2d_new_slider_Joint, "Ada_b2d_new_slider_Joint"); pragma Import (C, b2d_new_ball_Joint, "Ada_b2d_new_ball_Joint"); pragma Import (C, b2d_Joint_user_Data, "Ada_b2d_Joint_user_Data"); - pragma Import (C, b2d_Joint_user_Data_is, "Ada_b2d_Joint_user_Data_is"); pragma Import (C, b2d_Joint_Object_A, "Ada_b2d_Joint_Object_A"); pragma Import (C, b2d_Joint_Object_B, "Ada_b2d_Joint_Object_B"); pragma Import (C, b2d_Joint_Frame_A, "Ada_b2d_Joint_Frame_A"); pragma Import (C, b2d_Joint_Frame_B, "Ada_b2d_Joint_Frame_B"); pragma Import (C, b2d_Joint_Frame_A_is, "Ada_b2d_Joint_Frame_A_is"); pragma Import (C, b2d_Joint_Frame_B_is, "Ada_b2d_Joint_Frame_B_is"); - pragma Import (C, b2d_Joint_set_local_Anchor, "Ada_b2d_Joint_set_local_Anchor"); + pragma Import + (C, b2d_Joint_set_local_Anchor, "Ada_b2d_Joint_set_local_Anchor"); pragma Import (C, b2d_Joint_is_Limited, "Ada_b2d_Joint_is_Limited"); pragma Import (C, b2d_Joint_Extent, "Ada_b2d_Joint_Extent"); pragma Import (C, b2d_Joint_Velocity_is, "Ada_b2d_Joint_Velocity_is"); - pragma Import (C, b2d_Joint_reaction_Force, "Ada_b2d_Joint_reaction_Force"); - pragma Import (C, b2d_Joint_reaction_Torque, "Ada_b2d_Joint_reaction_Torque"); - pragma Import (C, b2d_Joint_hinge_Limits_are, "Ada_b2d_Joint_hinge_Limits_are"); + pragma Import + (C, b2d_Joint_reaction_Force, "Ada_b2d_Joint_reaction_Force"); + pragma Import + (C, b2d_Joint_reaction_Torque, "Ada_b2d_Joint_reaction_Torque"); + pragma Import + (C, b2d_Joint_collide_Connected, "Ada_b2d_Joint_collide_Connected"); + pragma Import + (C, b2d_Joint_hinge_limit_Enabled, + "Ada_b2d_Joint_hinge_limit_Enabled"); + pragma Import + (C, b2d_Joint_hinge_Limits_are, "Ada_b2d_Joint_hinge_Limits_are"); + pragma Import + (C, b2d_Joint_hinge_local_Anchor_on_A, + "Ada_b2d_Joint_hinge_local_Anchor_on_A"); + pragma Import + (C, b2d_Joint_hinge_local_Anchor_on_B, + "Ada_b2d_Joint_hinge_local_Anchor_on_B"); + pragma Import + (C, b2d_Joint_hinge_reference_Angle, + "Ada_b2d_Joint_hinge_reference_Angle"); + pragma Import (C, b2d_Joint_hinge_Angle, "Ada_b2d_Joint_hinge_Angle"); + pragma Import + (C, b2d_Joint_hinge_motor_Enabled, + "Ada_b2d_Joint_hinge_motor_Enabled"); + pragma Import + (C, b2d_Joint_hinge_motor_Speed, "Ada_b2d_Joint_hinge_motor_Speed"); + pragma Import + (C, b2d_Joint_hinge_max_motor_Torque, + "Ada_b2d_Joint_hinge_max_motor_Torque"); pragma Import (C, b2d_new_Space, "Ada_b2d_new_Space"); pragma Import (C, b2d_free_Space, "Ada_b2d_free_Space"); pragma Import (C, b2d_Space_add_Object, "Ada_b2d_Space_add_Object"); @@ -348,14 +469,14 @@ private pragma Import (C, b2d_b2Joint_user_Data, "Ada_b2d_b2Joint_user_Data"); pragma Import (C, b2d_Space_first_Joint, "Ada_b2d_Space_first_Joint"); pragma Import (C, b2d_Space_next_Joint, "Ada_b2d_Space_next_Joint"); - pragma Import (C, b2d_Space_joint_Element, "Ada_b2d_Space_joint_Element"); + pragma Import + (C, b2d_Space_joint_Element, "Ada_b2d_Space_joint_Element"); pragma Import (C, b2d_Space_Gravity_is, "Ada_b2d_Space_Gravity_is"); pragma Import (C, b2d_Space_evolve, "Ada_b2d_Space_evolve"); pragma Import (C, b2d_Space_cast_Ray, "Ada_b2d_Space_cast_Ray"); pragma Import (C, b2d_Space_cast_Point, "Ada_b2d_Space_cast_Point"); - pragma Import (C, b2d_space_contact_Count, "Ada_b2d_space_contact_Count"); + pragma Import + (C, b2d_space_contact_Count, "Ada_b2d_space_contact_Count"); pragma Import (C, b2d_space_Contact, "Ada_b2d_space_Contact"); - - end box2d_c.Binding; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-joint_cursor.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-joint_cursor.ads index 81dcbd9..d0f6497 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-joint_cursor.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-joint_cursor.ads @@ -1,82 +1,57 @@ -- This file is generated by SWIG. Please do not modify by hand. -- with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; - - +use Interfaces.C; +with Interfaces.C.Pointers; package box2d_c.joint_Cursor is -- Item -- -type Item is - record - Joint : access box2d_c.b2Joint; - end record; - - + type Item is record + Joint : access box2d_c.b2Joint; + end record; -- Item_Array -- - type Item_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.joint_Cursor.Item; - - + type Item_Array is + array (Interfaces.C.size_t range <>) of aliased box2d_c.joint_Cursor.Item; -- Pointer -- - package C_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.joint_Cursor.Item, - element_Array => box2d_c.joint_Cursor.Item_Array, - default_Terminator => (others => <>)); + package C_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.joint_Cursor.Item, + Element_Array => box2d_c.joint_Cursor.Item_Array, + Default_Terminator => (others => <>)); -subtype Pointer is C_Pointers.Pointer; + subtype Pointer is C_Pointers.Pointer; -- Pointer_Array -- - type Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.joint_Cursor.Pointer; - - + type Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.joint_Cursor.Pointer; -- Pointer_Pointer -- - package C_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.joint_Cursor.Pointer, - element_Array => box2d_c.joint_Cursor.Pointer_Array, - default_Terminator => null); + package C_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.joint_Cursor.Pointer, + Element_Array => box2d_c.joint_Cursor.Pointer_Array, + Default_Terminator => null); -subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; + subtype Pointer_Pointer is C_Pointer_Pointers.Pointer; - - - - - - function construct return box2d_c.joint_Cursor.Item; + function construct return box2d_c.joint_Cursor.Item; procedure destruct_0 (Self : in box2d_c.joint_Cursor.Item); procedure destruct (Self : in box2d_c.joint_Cursor.Item); - - - - - - - - private - - - pragma Import (CPP, construct, "ada_new_joint_Cursor_joint_Cursor"); pragma Import (CPP, destruct_0, "_ZN12joint_CursorD1Ev"); pragma Import (CPP, destruct, "_ZN12joint_CursorD1Ev"); - - end box2d_c.joint_Cursor; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-pointer_pointers.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-pointer_pointers.ads index 1b680ae..c9beaec 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-pointer_pointers.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-pointer_pointers.ads @@ -2,76 +2,55 @@ -- with box2d_c.Pointers; with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; - - +use Interfaces.C; +with Interfaces.C.Pointers; package box2d_c.pointer_Pointers is - - -- Shape_Pointer_Pointer - -- - package C_Shape_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Pointers.Shape_Pointer, - element_Array => box2d_c.Pointers.Shape_Pointer_Array, - default_Terminator => null); - -subtype Shape_Pointer_Pointer is C_Shape_Pointer_Pointers.Pointer; - + -- + package C_Shape_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.Pointers.Shape_Pointer, + Element_Array => box2d_c.Pointers.Shape_Pointer_Array, + Default_Terminator => null); + subtype Shape_Pointer_Pointer is C_Shape_Pointer_Pointers.Pointer; -- Object_Pointer_Pointer - -- - package C_Object_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Pointers.Object_Pointer, - element_Array => box2d_c.Pointers.Object_Pointer_Array, - default_Terminator => null); - -subtype Object_Pointer_Pointer is C_Object_Pointer_Pointers.Pointer; - + -- + package C_Object_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.Pointers.Object_Pointer, + Element_Array => box2d_c.Pointers.Object_Pointer_Array, + Default_Terminator => null); + subtype Object_Pointer_Pointer is C_Object_Pointer_Pointers.Pointer; -- Joint_Pointer_Pointer - -- - package C_Joint_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Pointers.Joint_Pointer, - element_Array => box2d_c.Pointers.Joint_Pointer_Array, - default_Terminator => null); - -subtype Joint_Pointer_Pointer is C_Joint_Pointer_Pointers.Pointer; - + -- + package C_Joint_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.Pointers.Joint_Pointer, + Element_Array => box2d_c.Pointers.Joint_Pointer_Array, + Default_Terminator => null); + subtype Joint_Pointer_Pointer is C_Joint_Pointer_Pointers.Pointer; -- Space_Pointer_Pointer - -- - package C_Space_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Pointers.Space_Pointer, - element_Array => box2d_c.Pointers.Space_Pointer_Array, - default_Terminator => null); - -subtype Space_Pointer_Pointer is C_Space_Pointer_Pointers.Pointer; - + -- + package C_Space_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, Element => box2d_c.Pointers.Space_Pointer, + Element_Array => box2d_c.Pointers.Space_Pointer_Array, + Default_Terminator => null); + subtype Space_Pointer_Pointer is C_Space_Pointer_Pointers.Pointer; -- b2Joint_Pointer_Pointer - -- - package C_b2Joint_Pointer_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Pointers.b2Joint_Pointer, - element_Array => box2d_c.Pointers.b2Joint_Pointer_Array, - default_Terminator => null); - -subtype b2Joint_Pointer_Pointer is C_b2Joint_Pointer_Pointers.Pointer; - - - - - - - - + -- + package C_b2Joint_Pointer_Pointers is new Interfaces.C.Pointers + (Index => Interfaces.C.size_t, + Element => box2d_c.Pointers.b2Joint_Pointer, + Element_Array => box2d_c.Pointers.b2Joint_Pointer_Array, + Default_Terminator => null); + subtype b2Joint_Pointer_Pointer is C_b2Joint_Pointer_Pointers.Pointer; end box2d_c.pointer_Pointers; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c-pointers.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c-pointers.ads index d22c73e..ae4e0a4 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c-pointers.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c-pointers.ads @@ -1,90 +1,88 @@ -- This file is generated by SWIG. Please do not modify by hand. -- with Interfaces.C; - -use Interfaces.C; -with interfaces.C.Pointers; +use Interfaces.C; +with Interfaces.C.Pointers; with System; - - package box2d_c.Pointers is + use System; -- Shape_Pointer -- - package C_Shape_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Shape, - element_Array => box2d_c.Shape_Array, - default_Terminator => System.null_Address); + package C_Shape_Pointers is new interfaces.c.Pointers + (Index => interfaces.c.size_t, Element => box2d_c.Shape, + element_Array => box2d_c.Shape_Array, default_Terminator => null_Address); subtype Shape_Pointer is C_Shape_Pointers.Pointer; -- Shape_Pointer_Array -- - type Shape_Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Pointers.Shape_Pointer; - - + type Shape_Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.Pointers + .Shape_Pointer; -- Object_Pointer -- - package C_Object_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Object, - element_Array => box2d_c.Object_Array, - default_Terminator => System.null_Address); + package C_Object_Pointers is new interfaces.c.Pointers + (Index => interfaces.c.size_t, Element => box2d_c.Object, + element_Array => box2d_c.Object_Array, default_Terminator => null_Address); subtype Object_Pointer is C_Object_Pointers.Pointer; -- Object_Pointer_Array -- - type Object_Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Pointers.Object_Pointer; - - + type Object_Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.Pointers + .Object_Pointer; -- Joint_Pointer -- - package C_Joint_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Joint, - element_Array => box2d_c.Joint_Array, - default_Terminator => System.null_Address); + package C_Joint_Pointers is new interfaces.c.Pointers + (Index => interfaces.c.size_t, Element => box2d_c.Joint, + element_Array => box2d_c.Joint_Array, default_Terminator => null_Address); subtype Joint_Pointer is C_Joint_Pointers.Pointer; -- Joint_Pointer_Array -- - type Joint_Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Pointers.Joint_Pointer; - - + type Joint_Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.Pointers + .Joint_Pointer; -- Space_Pointer -- - package C_Space_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.Space, - element_Array => box2d_c.Space_Array, - default_Terminator => System.null_Address); + package C_Space_Pointers is new interfaces.c.Pointers + (Index => interfaces.c.size_t, Element => box2d_c.Space, + element_Array => box2d_c.Space_Array, default_Terminator => null_Address); subtype Space_Pointer is C_Space_Pointers.Pointer; -- Space_Pointer_Array -- - type Space_Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Pointers.Space_Pointer; - - + type Space_Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.Pointers + .Space_Pointer; -- b2Joint_Pointer -- - package C_b2Joint_Pointers is new interfaces.c.Pointers (Index => interfaces.c.size_t, - Element => box2d_c.b2Joint, - element_Array => box2d_c.b2Joint_Array, - default_Terminator => System.null_Address); + package C_b2Joint_Pointers is new interfaces.c.Pointers + (Index => interfaces.c.size_t, Element => box2d_c.b2Joint, + element_Array => box2d_c.b2Joint_Array, default_Terminator => null_Address); subtype b2Joint_Pointer is C_b2Joint_Pointers.Pointer; -- b2Joint_Pointer_Array -- - type b2Joint_Pointer_Array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Pointers.b2Joint_Pointer; - - + type b2Joint_Pointer_Array is + array + (Interfaces.C.size_t range <>) of aliased box2d_c.Pointers + .b2Joint_Pointer; end box2d_c.Pointers; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c.ads b/3-mid/physics/implement/box2d/source/thin/box2d_c.ads index 4e64c9f..f14000d 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c.ads +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c.ads @@ -2,50 +2,43 @@ -- with swig; with Interfaces.C; - -use Interfaces.C; - - +use Interfaces.C; package box2d_c is -- Shape - -- + -- subtype Shape is swig.opaque_structure; - type Shape_array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Shape; + type Shape_array is + array (interfaces.C.Size_t range <>) of aliased box2d_c.Shape; -- Object - -- + -- subtype Object is swig.opaque_structure; - type Object_array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Object; + type Object_array is + array (interfaces.C.Size_t range <>) of aliased box2d_c.Object; -- Joint - -- + -- subtype Joint is swig.opaque_structure; - type Joint_array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Joint; + type Joint_array is + array (interfaces.C.Size_t range <>) of aliased box2d_c.Joint; -- Space - -- + -- subtype Space is swig.opaque_structure; - type Space_array is array (interfaces.C.Size_t range <>) of aliased box2d_c.Space; + type Space_array is + array (interfaces.C.Size_t range <>) of aliased box2d_c.Space; -- b2Joint - -- + -- subtype b2Joint is swig.opaque_structure; - type b2Joint_array is array (interfaces.C.Size_t range <>) of aliased box2d_c.b2Joint; - - - - - - - - - + type b2Joint_array is + array (interfaces.C.Size_t range <>) of aliased box2d_c.b2Joint; end box2d_c; diff --git a/3-mid/physics/implement/box2d/source/thin/box2d_c_wrap.cxx b/3-mid/physics/implement/box2d/source/thin/box2d_c_wrap.cxx index f7f9e25..9b99204 100644 --- a/3-mid/physics/implement/box2d/source/thin/box2d_c_wrap.cxx +++ b/3-mid/physics/implement/box2d/source/thin/box2d_c_wrap.cxx @@ -10,24 +10,54 @@ #ifdef __cplusplus /* SwigValueWrapper is described in swig.swg */ -template class SwigValueWrapper { - struct SwigMovePointer { - T *ptr; - SwigMovePointer(T *p) : ptr(p) { } - ~SwigMovePointer() { delete ptr; } - SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; } - } pointer; - SwigValueWrapper& operator=(const SwigValueWrapper& rhs); - SwigValueWrapper(const SwigValueWrapper& rhs); +template < typename T > class SwigValueWrapper +{ + struct SwigMovePointer + { + T *ptr; + SwigMovePointer (T * p):ptr (p) + { + } + ~SwigMovePointer () + { + delete ptr; + } + SwigMovePointer & operator= (SwigMovePointer & rhs) + { + T *oldptr = ptr; + ptr = 0; + delete oldptr; + ptr = rhs.ptr; + rhs.ptr = 0; + return *this; + } + } + pointer; + SwigValueWrapper & operator= (const SwigValueWrapper < T > &rhs); + SwigValueWrapper (const SwigValueWrapper < T > &rhs); public: - SwigValueWrapper() : pointer(0) { } - SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; } - operator T&() const { return *pointer.ptr; } - T *operator&() { return pointer.ptr; } +SwigValueWrapper ():pointer (0) + { + } + SwigValueWrapper & operator= (const T & t) + { + SwigMovePointer tmp (new T (t)); + pointer = tmp; + return *this; + } + operator T & () const + { + return *pointer.ptr; + } + T *operator& () + { + return pointer.ptr; + } }; -template T SwigValueInit() { - return T(); +template < typename T > T SwigValueInit () +{ + return T (); } #endif @@ -38,112 +68,112 @@ template T SwigValueInit() { /* template workaround for compilers that cannot correctly implement the C++ standard */ #ifndef SWIGTEMPLATEDISAMBIGUATOR -# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) -# define SWIGTEMPLATEDISAMBIGUATOR template -# elif defined(__HP_aCC) +#if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) +#define SWIGTEMPLATEDISAMBIGUATOR template +#elif defined(__HP_aCC) /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */ /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */ -# define SWIGTEMPLATEDISAMBIGUATOR template -# else -# define SWIGTEMPLATEDISAMBIGUATOR -# endif +#define SWIGTEMPLATEDISAMBIGUATOR template +#else +#define SWIGTEMPLATEDISAMBIGUATOR +#endif #endif /* inline attribute */ #ifndef SWIGINLINE -# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) -# define SWIGINLINE inline -# else -# define SWIGINLINE -# endif +#if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) +#define SWIGINLINE inline +#else +#define SWIGINLINE +#endif #endif /* attribute recognised by some compilers to avoid 'unused' warnings */ #ifndef SWIGUNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define SWIGUNUSED __attribute__ ((__unused__)) -# else -# define SWIGUNUSED -# endif -# elif defined(__ICC) -# define SWIGUNUSED __attribute__ ((__unused__)) -# else -# define SWIGUNUSED -# endif +#if defined(__GNUC__) +#if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +#define SWIGUNUSED __attribute__ ((__unused__)) +#else +#define SWIGUNUSED +#endif +#elif defined(__ICC) +#define SWIGUNUSED __attribute__ ((__unused__)) +#else +#define SWIGUNUSED +#endif #endif #ifndef SWIG_MSC_UNSUPPRESS_4505 -# if defined(_MSC_VER) -# pragma warning(disable : 4505) /* unreferenced local function has been removed */ -# endif +#if defined(_MSC_VER) +#pragma warning(disable : 4505) /* unreferenced local function has been removed */ +#endif #endif #ifndef SWIGUNUSEDPARM -# ifdef __cplusplus -# define SWIGUNUSEDPARM(p) -# else -# define SWIGUNUSEDPARM(p) p SWIGUNUSED -# endif +#ifdef __cplusplus +#define SWIGUNUSEDPARM(p) +#else +#define SWIGUNUSEDPARM(p) p SWIGUNUSED +#endif #endif /* internal SWIG method */ #ifndef SWIGINTERN -# define SWIGINTERN static SWIGUNUSED +#define SWIGINTERN static SWIGUNUSED #endif /* internal inline SWIG method */ #ifndef SWIGINTERNINLINE -# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE +#define SWIGINTERNINLINE SWIGINTERN SWIGINLINE #endif /* exporting methods */ #if defined(__GNUC__) -# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) -# ifndef GCC_HASCLASSVISIBILITY -# define GCC_HASCLASSVISIBILITY -# endif -# endif +#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) +#ifndef GCC_HASCLASSVISIBILITY +#define GCC_HASCLASSVISIBILITY +#endif +#endif #endif #ifndef SWIGEXPORT -# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) -# if defined(STATIC_LINKED) -# define SWIGEXPORT -# else -# define SWIGEXPORT __declspec(dllexport) -# endif -# else -# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) -# define SWIGEXPORT __attribute__ ((visibility("default"))) -# else -# define SWIGEXPORT -# endif -# endif +#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +#if defined(STATIC_LINKED) +#define SWIGEXPORT +#else +#define SWIGEXPORT __declspec(dllexport) +#endif +#else +#if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) +#define SWIGEXPORT __attribute__ ((visibility("default"))) +#else +#define SWIGEXPORT +#endif +#endif #endif /* calling conventions for Windows */ #ifndef SWIGSTDCALL -# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) -# define SWIGSTDCALL __stdcall -# else -# define SWIGSTDCALL -# endif +#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +#define SWIGSTDCALL __stdcall +#else +#define SWIGSTDCALL +#endif #endif /* Deal with Microsoft's attempt at deprecating C standard runtime functions */ #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) -# define _CRT_SECURE_NO_DEPRECATE +#define _CRT_SECURE_NO_DEPRECATE #endif /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */ #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE) -# define _SCL_SECURE_NO_DEPRECATE +#define _SCL_SECURE_NO_DEPRECATE #endif /* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */ #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES) -# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 +#define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 #endif /* Intel's compiler complains if a variable which was never initialised is @@ -152,2186 +182,1618 @@ template T SwigValueInit() { * See: https://github.com/swig/swig/issues/192 for more discussion. */ #ifdef __INTEL_COMPILER -# pragma warning disable 592 +#pragma warning disable 592 #endif - #include #include #include #if defined(_WIN32) || defined(__CYGWIN32__) -# define DllExport __declspec( dllexport ) -# define SWIGSTDCALL __stdcall +#define DllExport __declspec( dllexport ) +#define SWIGSTDCALL __stdcall #else -# define DllExport -# define SWIGSTDCALL +#define DllExport +#define SWIGSTDCALL #endif #ifdef __cplusplus -# include +#include #endif - - - - - -extern "C" +extern "C" { - #include "../c/box2d-shape.h" - #include "../c/box2d-object.h" - #include "../c/box2d-joint.h" - #include "../c/box2d-space.h" +#include "../c/box2d-shape.h" +#include "../c/box2d-object.h" +#include "../c/box2d-joint.h" +#include "../c/box2d-space.h" } - - - #ifdef __cplusplus -extern "C" { +extern "C" +{ #endif -DllExport void * SWIGSTDCALL Ada_b2d_new_Circle ( - float a_arg1 - ) -{ - void * jresult ; - Real arg1 ; - Shape *result = 0 ; + DllExport void *SWIGSTDCALL Ada_b2d_new_Circle (float a_arg1) + { + void *jresult; + Real arg1; + Shape *result = 0; + arg1 = (Real) a_arg1; - arg1 = (Real) a_arg1; + result = (Shape *) b2d_new_Circle (arg1); + jresult = (void *) result; + return jresult; - result = (Shape *)b2d_new_Circle(arg1); - jresult = (void *) result; + } + DllExport void *SWIGSTDCALL Ada_b2d_new_Polygon (void *a_arg1, int a_arg2) + { + void *jresult; + Vector_2 *arg1; + int arg2; + Shape *result = 0; + arg1 = (Vector_2 *) a_arg1; - return jresult; + arg2 = (int) a_arg2; -} + result = (Shape *) b2d_new_Polygon (arg1, arg2); + jresult = (void *) result; + return jresult; + } -DllExport void * SWIGSTDCALL Ada_b2d_new_Polygon ( - void * a_arg1 - , + DllExport void *SWIGSTDCALL Ada_b2d_new_Box (void *a_arg1) + { + void *jresult; + Vector_3 *arg1 = (Vector_3 *) 0; + Shape *result = 0; - int a_arg2 - ) -{ - void * jresult ; - Vector_2 *arg1 ; - int arg2 ; - Shape *result = 0 ; + arg1 = (Vector_3 *) a_arg1; - arg1 = (Vector_2 *) a_arg1; + result = (Shape *) b2d_new_Box (arg1); + jresult = (void *) result; + return jresult; - arg2 = (int) a_arg2; + } + DllExport void *SWIGSTDCALL Ada_b2d_new_Capsule (void *a_arg1, float a_arg2) + { + void *jresult; + Vector_2 *arg1 = (Vector_2 *) 0; + Real arg2; + Shape *result = 0; - result = (Shape *)b2d_new_Polygon(arg1,arg2); - jresult = (void *) result; + arg1 = (Vector_2 *) a_arg1; + arg2 = (Real) a_arg2; + result = (Shape *) b2d_new_Capsule (arg1, arg2); + jresult = (void *) result; - return jresult; + return jresult; -} + } + DllExport void *SWIGSTDCALL Ada_b2d_new_Cone (float a_arg1, float a_arg2) + { + void *jresult; + Real arg1; + Real arg2; + Shape *result = 0; + arg1 = (Real) a_arg1; -DllExport void * SWIGSTDCALL Ada_b2d_new_Box ( - void * a_arg1 - ) -{ - void * jresult ; - Vector_3 *arg1 = (Vector_3 *) 0 ; - Shape *result = 0 ; + arg2 = (Real) a_arg2; - arg1 = (Vector_3 *)a_arg1; + result = (Shape *) b2d_new_Cone (arg1, arg2); + jresult = (void *) result; - result = (Shape *)b2d_new_Box(arg1); - jresult = (void *) result; + return jresult; + } + DllExport void *SWIGSTDCALL Ada_b2d_new_convex_Hull (void *a_arg1, + int a_arg2) + { + void *jresult; + Vector_3 *arg1; + int arg2; + Shape *result = 0; - return jresult; + arg1 = (Vector_3 *) a_arg1; -} + arg2 = (int) a_arg2; + result = (Shape *) b2d_new_convex_Hull (arg1, arg2); + jresult = (void *) result; + return jresult; -DllExport void * SWIGSTDCALL Ada_b2d_new_Capsule ( - void * a_arg1 - , + } - float a_arg2 - ) -{ - void * jresult ; - Vector_2 *arg1 = (Vector_2 *) 0 ; - Real arg2 ; - Shape *result = 0 ; + DllExport void *SWIGSTDCALL Ada_b2d_new_Cylinder (void *a_arg1) + { + void *jresult; + Vector_3 *arg1 = (Vector_3 *) 0; + Shape *result = 0; - arg1 = (Vector_2 *)a_arg1; + arg1 = (Vector_3 *) a_arg1; + result = (Shape *) b2d_new_Cylinder (arg1); + jresult = (void *) result; - arg2 = (Real) a_arg2; + return jresult; + } - result = (Shape *)b2d_new_Capsule(arg1,arg2); - jresult = (void *) result; + DllExport void *SWIGSTDCALL Ada_b2d_new_Heightfield (int a_arg1, + int a_arg2, + float *a_arg3, + float a_arg4, + float a_arg5, + void *a_arg6) + { + void *jresult; + int arg1; + int arg2; + Real *arg3 = (Real *) 0; + Real arg4; + Real arg5; + Vector_3 *arg6 = (Vector_3 *) 0; + Shape *result = 0; + arg1 = (int) a_arg1; + arg2 = (int) a_arg2; - return jresult; + arg3 = (Real *) a_arg3; -} + arg4 = (Real) a_arg4; + arg5 = (Real) a_arg5; + arg6 = (Vector_3 *) a_arg6; -DllExport void * SWIGSTDCALL Ada_b2d_new_Cone ( - float a_arg1 - , + result = + (Shape *) b2d_new_Heightfield (arg1, arg2, arg3, arg4, arg5, arg6); + jresult = (void *) result; - float a_arg2 - ) -{ - void * jresult ; - Real arg1 ; - Real arg2 ; - Shape *result = 0 ; + return jresult; + } - arg1 = (Real) a_arg1; + DllExport void *SWIGSTDCALL Ada_b2d_new_multiSphere (void *a_arg1, + float *a_arg2, + int a_arg3) + { + void *jresult; + Vector_3 *arg1; + Real *arg2 = (Real *) 0; + int arg3; + Shape *result = 0; + arg1 = (Vector_3 *) a_arg1; + arg2 = (Real *) a_arg2; - arg2 = (Real) a_arg2; + arg3 = (int) a_arg3; + result = (Shape *) b2d_new_multiSphere (arg1, arg2, arg3); + jresult = (void *) result; - result = (Shape *)b2d_new_Cone(arg1,arg2); - jresult = (void *) result; + return jresult; + } + DllExport void *SWIGSTDCALL Ada_b2d_new_Plane (void *a_arg1, float a_arg2) + { + void *jresult; + Vector_3 *arg1 = (Vector_3 *) 0; + Real arg2; + Shape *result = 0; - return jresult; + arg1 = (Vector_3 *) a_arg1; -} + arg2 = (Real) a_arg2; + result = (Shape *) b2d_new_Plane (arg1, arg2); + jresult = (void *) result; + return jresult; -DllExport void * SWIGSTDCALL Ada_b2d_new_convex_Hull ( - void * a_arg1 - , + } - int a_arg2 - ) -{ - void * jresult ; - Vector_3 *arg1 ; - int arg2 ; - Shape *result = 0 ; + DllExport void *SWIGSTDCALL Ada_b2d_new_Sphere (float a_arg1) + { + void *jresult; + Real arg1; + Shape *result = 0; - arg1 = (Vector_3 *) a_arg1; + arg1 = (Real) a_arg1; + result = (Shape *) b2d_new_Sphere (arg1); + jresult = (void *) result; - arg2 = (int) a_arg2; + return jresult; + } - result = (Shape *)b2d_new_convex_Hull(arg1,arg2); - jresult = (void *) result; + DllExport void SWIGSTDCALL Ada_b2d_free_Shape (void *a_arg1) + { + Shape *arg1 = (Shape *) 0; + arg1 = (Shape *) a_arg1; + b2d_free_Shape (arg1); - return jresult; + } -} + DllExport void *SWIGSTDCALL Ada_b2d_Shape_user_Data (void *a_arg1) + { + void *jresult; + Shape *arg1 = (Shape *) 0; + void *result = 0; + arg1 = (Shape *) a_arg1; + result = (void *) b2d_Shape_user_Data (arg1); + jresult = (void *) result; -DllExport void * SWIGSTDCALL Ada_b2d_new_Cylinder ( - void * a_arg1 - ) -{ - void * jresult ; - Vector_3 *arg1 = (Vector_3 *) 0 ; - Shape *result = 0 ; + return jresult; - arg1 = (Vector_3 *)a_arg1; + } - result = (Shape *)b2d_new_Cylinder(arg1); - jresult = (void *) result; + DllExport void SWIGSTDCALL Ada_b2d_Shape_user_Data_is (void *a_arg1, + void *a_arg2) + { + Shape *arg1 = (Shape *) 0; + void *arg2 = (void *) 0; + arg1 = (Shape *) a_arg1; + arg2 = (void *) a_arg2; - return jresult; + b2d_Shape_user_Data_is (arg1, arg2); -} + } + DllExport void SWIGSTDCALL Ada_b2d_shape_Scale_is (void *a_arg1, + Vector_2 a_arg2) + { + Shape *arg1 = (Shape *) 0; + Vector_2 arg2; + Vector_2 *argp2; + arg1 = (Shape *) a_arg1; -DllExport void * SWIGSTDCALL Ada_b2d_new_Heightfield ( - int a_arg1 - , + argp2 = (Vector_2 *) & a_arg2; - int a_arg2 - , + arg2 = *argp2; - float* a_arg3 - , + b2d_shape_Scale_is (arg1, arg2); - float a_arg4 - , + } - float a_arg5 - , + DllExport void *SWIGSTDCALL Ada_b2d_new_Object (void *a_arg1, + float a_arg2, + float a_arg3, + float a_arg4, void *a_arg5) + { + void *jresult; + Vector_2 *arg1 = (Vector_2 *) 0; + Real arg2; + Real arg3; + Real arg4; + Shape *arg5 = (Shape *) 0; + Object *result = 0; - void * a_arg6 - ) -{ - void * jresult ; - int arg1 ; - int arg2 ; - Real *arg3 = (Real *) 0 ; - Real arg4 ; - Real arg5 ; - Vector_3 *arg6 = (Vector_3 *) 0 ; - Shape *result = 0 ; + arg1 = (Vector_2 *) a_arg1; + arg2 = (Real) a_arg2; - arg1 = (int) a_arg1; + arg3 = (Real) a_arg3; + arg4 = (Real) a_arg4; + arg5 = (Shape *) a_arg5; - arg2 = (int) a_arg2; + result = (Object *) b2d_new_Object (arg1, arg2, arg3, arg4, arg5); + jresult = (void *) result; + return jresult; + } - arg3 = (Real *) a_arg3; + DllExport void SWIGSTDCALL Ada_b2d_free_Object (void *a_arg1) + { + Object *arg1 = (Object *) 0; + arg1 = (Object *) a_arg1; + b2d_free_Object (arg1); - arg4 = (Real) a_arg4; + } + DllExport void SWIGSTDCALL Ada_b2d_Object_Scale_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_2 *arg2 = (Vector_2 *) 0; + arg1 = (Object *) a_arg1; - arg5 = (Real) a_arg5; + arg2 = (Vector_2 *) a_arg2; + b2d_Object_Scale_is (arg1, arg2); - arg6 = (Vector_3 *)a_arg6; + } - result = (Shape *)b2d_new_Heightfield(arg1,arg2,arg3,arg4,arg5,arg6); - jresult = (void *) result; + DllExport void *SWIGSTDCALL Ada_b2d_Object_Shape (void *a_arg1) + { + void *jresult; + Object *arg1 = (Object *) 0; + Shape *result = 0; + arg1 = (Object *) a_arg1; + result = (Shape *) b2d_Object_Shape (arg1); + jresult = (void *) result; - return jresult; + return jresult; -} + } + DllExport void *SWIGSTDCALL Ada_b2d_Object_user_Data (void *a_arg1) + { + void *jresult; + Object *arg1 = (Object *) 0; + void *result = 0; + arg1 = (Object *) a_arg1; -DllExport void * SWIGSTDCALL Ada_b2d_new_multiSphere ( - void * a_arg1 - , + result = (void *) b2d_Object_user_Data (arg1); + jresult = (void *) result; - float* a_arg2 - , + return jresult; - int a_arg3 - ) -{ - void * jresult ; - Vector_3 *arg1 ; - Real *arg2 = (Real *) 0 ; - int arg3 ; - Shape *result = 0 ; + } - arg1 = (Vector_3 *) a_arg1; + DllExport void SWIGSTDCALL Ada_b2d_Object_user_Data_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + void *arg2 = (void *) 0; + arg1 = (Object *) a_arg1; - arg2 = (Real *) a_arg2; + arg2 = (void *) a_arg2; + b2d_Object_user_Data_is (arg1, arg2); + } - arg3 = (int) a_arg3; + DllExport float SWIGSTDCALL Ada_b2d_Object_Mass (void *a_arg1) + { + float jresult; + Object *arg1 = (Object *) 0; + Real result; + arg1 = (Object *) a_arg1; - result = (Shape *)b2d_new_multiSphere(arg1,arg2,arg3); - jresult = (void *) result; + result = (Real) b2d_Object_Mass (arg1); + jresult = result; + return jresult; + } - return jresult; + DllExport void SWIGSTDCALL Ada_b2d_Object_Friction_is (void *a_arg1, + float a_arg2) + { + Object *arg1 = (Object *) 0; + Real arg2; -} + arg1 = (Object *) a_arg1; + arg2 = (Real) a_arg2; + b2d_Object_Friction_is (arg1, arg2); -DllExport void * SWIGSTDCALL Ada_b2d_new_Plane ( - void * a_arg1 - , + } - float a_arg2 - ) -{ - void * jresult ; - Vector_3 *arg1 = (Vector_3 *) 0 ; - Real arg2 ; - Shape *result = 0 ; + DllExport void SWIGSTDCALL Ada_b2d_Object_Restitution_is (void *a_arg1, + float a_arg2) + { + Object *arg1 = (Object *) 0; + Real arg2; - arg1 = (Vector_3 *)a_arg1; + arg1 = (Object *) a_arg1; + arg2 = (Real) a_arg2; - arg2 = (Real) a_arg2; + b2d_Object_Restitution_is (arg1, arg2); + } - result = (Shape *)b2d_new_Plane(arg1,arg2); - jresult = (void *) result; + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Site (void *a_arg1) + { + Vector_3 jresult; + Object *arg1 = (Object *) 0; + Vector_3 result; + arg1 = (Object *) a_arg1; + result = b2d_Object_Site (arg1); - return jresult; + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); -} + return jresult; + } + DllExport void SWIGSTDCALL Ada_b2d_Object_Site_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; -DllExport void * SWIGSTDCALL Ada_b2d_new_Sphere ( - float a_arg1 - ) -{ - void * jresult ; - Real arg1 ; - Shape *result = 0 ; + arg1 = (Object *) a_arg1; + arg2 = (Vector_3 *) a_arg2; - arg1 = (Real) a_arg1; + b2d_Object_Site_is (arg1, arg2); + } - result = (Shape *)b2d_new_Sphere(arg1); - jresult = (void *) result; + DllExport Matrix_3x3 SWIGSTDCALL Ada_b2d_Object_Spin (void *a_arg1) + { + Matrix_3x3 jresult; + Object *arg1 = (Object *) 0; + Matrix_3x3 result; + arg1 = (Object *) a_arg1; + result = b2d_Object_Spin (arg1); - return jresult; + jresult = result; + //jresult = new Matrix_3x3 ((Matrix_3x3 &) result); -} + return jresult; + } + DllExport void SWIGSTDCALL Ada_b2d_Object_Spin_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Matrix_3x3 *arg2 = (Matrix_3x3 *) 0; -DllExport void SWIGSTDCALL Ada_b2d_free_Shape ( - void * a_arg1 - ) -{ - Shape *arg1 = (Shape *) 0 ; + arg1 = (Object *) a_arg1; - arg1 = (Shape *)a_arg1; + arg2 = (Matrix_3x3 *) a_arg2; - b2d_free_Shape(arg1); + b2d_Object_Spin_is (arg1, arg2); + } -} + DllExport float SWIGSTDCALL Ada_b2d_Object_xy_Spin (void *a_arg1) + { + float jresult; + Object *arg1 = (Object *) 0; + Real result; + arg1 = (Object *) a_arg1; + result = (Real) b2d_Object_xy_Spin (arg1); + jresult = result; -DllExport void* SWIGSTDCALL Ada_b2d_Shape_user_Data ( - void * a_arg1 - ) -{ - void* jresult ; - Shape *arg1 = (Shape *) 0 ; - void *result = 0 ; + return jresult; - arg1 = (Shape *)a_arg1; + } - result = (void *)b2d_Shape_user_Data(arg1); - jresult = (void *) result; + DllExport void SWIGSTDCALL Ada_b2d_Object_xy_Spin_is (void *a_arg1, + float a_arg2) + { + Object *arg1 = (Object *) 0; + Real arg2; + arg1 = (Object *) a_arg1; + arg2 = (Real) a_arg2; - return jresult; + b2d_Object_xy_Spin_is (arg1, arg2); -} + } + DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Object_Transform (void *a_arg1) + { + Matrix_4x4 jresult; + Object *arg1 = (Object *) 0; + Matrix_4x4 result; + arg1 = (Object *) a_arg1; -DllExport void SWIGSTDCALL Ada_b2d_Shape_user_Data_is ( - void * a_arg1 - , + result = b2d_Object_Transform (arg1); - void* a_arg2 - ) -{ - Shape *arg1 = (Shape *) 0 ; - void *arg2 = (void *) 0 ; + jresult = result; + //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); - arg1 = (Shape *)a_arg1; + return jresult; - arg2 = (void *)a_arg2; + } - b2d_Shape_user_Data_is(arg1,arg2); + DllExport void SWIGSTDCALL Ada_b2d_Object_Transform_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Matrix_4x4 *arg2 = (Matrix_4x4 *) 0; + arg1 = (Object *) a_arg1; -} + arg2 = (Matrix_4x4 *) a_arg2; + b2d_Object_Transform_is (arg1, arg2); + } -DllExport void SWIGSTDCALL Ada_b2d_shape_Scale_is ( - void * a_arg1 - , + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Speed (void *a_arg1) + { + Vector_3 jresult; + Object *arg1 = (Object *) 0; + Vector_3 result; - Vector_2 a_arg2 - ) -{ - Shape *arg1 = (Shape *) 0 ; - Vector_2 arg2 ; - Vector_2 *argp2 ; + arg1 = (Object *) a_arg1; - arg1 = (Shape *)a_arg1; + result = b2d_Object_Speed (arg1); + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); - argp2 = (Vector_2 *) &a_arg2; + return jresult; - arg2 = *argp2; + } + DllExport void SWIGSTDCALL Ada_b2d_Object_Speed_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; - b2d_shape_Scale_is(arg1,arg2); + arg1 = (Object *) a_arg1; + arg2 = (Vector_3 *) a_arg2; -} + b2d_Object_Speed_is (arg1, arg2); + } + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Gyre (void *a_arg1) + { + Vector_3 jresult; + Object *arg1 = (Object *) 0; + Vector_3 result; -DllExport void * SWIGSTDCALL Ada_b2d_new_Object ( - void * a_arg1 - , + arg1 = (Object *) a_arg1; - float a_arg2 - , + result = b2d_Object_Gyre (arg1); - float a_arg3 - , + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); - float a_arg4 - , + return jresult; - void * a_arg5 - ) -{ - void * jresult ; - Vector_2 *arg1 = (Vector_2 *) 0 ; - Real arg2 ; - Real arg3 ; - Real arg4 ; - Shape *arg5 = (Shape *) 0 ; - Object *result = 0 ; + } - arg1 = (Vector_2 *)a_arg1; + DllExport void SWIGSTDCALL Ada_b2d_Object_Gyre_is (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + arg1 = (Object *) a_arg1; - arg2 = (Real) a_arg2; + arg2 = (Vector_3 *) a_arg2; + b2d_Object_Gyre_is (arg1, arg2); + } - arg3 = (Real) a_arg3; + DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Force (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + arg1 = (Object *) a_arg1; + arg2 = (Vector_3 *) a_arg2; - arg4 = (Real) a_arg4; + b2d_Object_apply_Force (arg1, arg2); + } - arg5 = (Shape *)a_arg5; + DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Torque (void *a_arg1, + void *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; - result = (Object *)b2d_new_Object(arg1,arg2,arg3,arg4,arg5); - jresult = (void *) result; + arg1 = (Object *) a_arg1; + arg2 = (Vector_3 *) a_arg2; + b2d_Object_apply_Torque (arg1, arg2); - return jresult; + } -} + DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Torque_impulse (void + *a_arg1, + void + *a_arg2) + { + Object *arg1 = (Object *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + arg1 = (Object *) a_arg1; + arg2 = (Vector_3 *) a_arg2; -DllExport void SWIGSTDCALL Ada_b2d_free_Object ( - void * a_arg1 - ) -{ - Object *arg1 = (Object *) 0 ; + b2d_Object_apply_Torque_impulse (arg1, arg2); - arg1 = (Object *)a_arg1; + } - b2d_free_Object(arg1); + DllExport void SWIGSTDCALL Ada_b2d_dump (void *a_arg1) + { + Object *arg1 = (Object *) 0; + arg1 = (Object *) a_arg1; -} + b2d_dump (arg1); + } + DllExport void *SWIGSTDCALL Ada_b2d_new_hinge_Joint_with_local_anchors (void + *a_arg1, + void + *a_arg2, + void + *a_arg3, + void + *a_arg4, + void + *a_arg5, + float + a_arg6, + float + a_arg7, + unsigned + int + a_arg8) + { + void *jresult; + Space *arg1 = (Space *) 0; + Object *arg2 = (Object *) 0; + Object *arg3 = (Object *) 0; + Vector_3 *arg4 = (Vector_3 *) 0; + Vector_3 *arg5 = (Vector_3 *) 0; + float arg6; + float arg7; + bool arg8; + Joint *result = 0; -DllExport void SWIGSTDCALL Ada_b2d_Object_Scale_is ( - void * a_arg1 - , + arg1 = (Space *) a_arg1; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_2 *arg2 = (Vector_2 *) 0 ; + arg2 = (Object *) a_arg2; - arg1 = (Object *)a_arg1; + arg3 = (Object *) a_arg3; - arg2 = (Vector_2 *)a_arg2; + arg4 = (Vector_3 *) a_arg4; - b2d_Object_Scale_is(arg1,arg2); + arg5 = (Vector_3 *) a_arg5; + arg6 = (float) a_arg6; -} + arg7 = (float) a_arg7; + arg8 = a_arg8 ? true : false; + result = + (Joint *) b2d_new_hinge_Joint_with_local_anchors (arg1, arg2, arg3, + arg4, arg5, arg6, + arg7, arg8); + jresult = (void *) result; -DllExport void * SWIGSTDCALL Ada_b2d_Object_Shape ( - void * a_arg1 - ) -{ - void * jresult ; - Object *arg1 = (Object *) 0 ; - Shape *result = 0 ; + return jresult; - arg1 = (Object *)a_arg1; + } - result = (Shape *)b2d_Object_Shape(arg1); - jresult = (void *) result; + DllExport void *SWIGSTDCALL Ada_b2d_new_hinge_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3, + void *a_arg4, + void *a_arg5, + float a_arg6, + float a_arg7, + unsigned int a_arg8) + { + void *jresult; + Space *arg1 = (Space *) 0; + Object *arg2 = (Object *) 0; + Object *arg3 = (Object *) 0; + Matrix_4x4 *arg4 = (Matrix_4x4 *) 0; + Matrix_4x4 *arg5 = (Matrix_4x4 *) 0; + float arg6; + float arg7; + bool arg8; + Joint *result = 0; + arg1 = (Space *) a_arg1; + arg2 = (Object *) a_arg2; - return jresult; + arg3 = (Object *) a_arg3; -} + arg4 = (Matrix_4x4 *) a_arg4; + arg5 = (Matrix_4x4 *) a_arg5; + arg6 = (float) a_arg6; -DllExport void* SWIGSTDCALL Ada_b2d_Object_user_Data ( - void * a_arg1 - ) -{ - void* jresult ; - Object *arg1 = (Object *) 0 ; - void *result = 0 ; + arg7 = (float) a_arg7; - arg1 = (Object *)a_arg1; + arg8 = a_arg8 ? true : false; - result = (void *)b2d_Object_user_Data(arg1); - jresult = (void *) result; + result = + (Joint *) b2d_new_hinge_Joint (arg1, arg2, arg3, arg4, arg5, arg6, arg7, + arg8); + jresult = (void *) result; + return jresult; + } - return jresult; + DllExport void SWIGSTDCALL Ada_b2d_free_hinge_Joint (void *a_arg1) + { + Joint *arg1 = (Joint *) 0; -} + arg1 = (Joint *) a_arg1; + b2d_free_hinge_Joint (arg1); + } -DllExport void SWIGSTDCALL Ada_b2d_Object_user_Data_is ( - void * a_arg1 - , + DllExport void *SWIGSTDCALL Ada_b2d_new_space_hinge_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3) + { + void *jresult; + Space *arg1 = (Space *) 0; + Object *arg2 = (Object *) 0; + Matrix_4x4 *arg3 = (Matrix_4x4 *) 0; + Joint *result = 0; - void* a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - void *arg2 = (void *) 0 ; + arg1 = (Space *) a_arg1; - arg1 = (Object *)a_arg1; + arg2 = (Object *) a_arg2; - arg2 = (void *)a_arg2; + arg3 = (Matrix_4x4 *) a_arg3; - b2d_Object_user_Data_is(arg1,arg2); + result = (Joint *) b2d_new_space_hinge_Joint (arg1, arg2, arg3); + jresult = (void *) result; + return jresult; -} + } + DllExport void *SWIGSTDCALL Ada_b2d_new_DoF6_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3, + void *a_arg4) + { + void *jresult; + Object *arg1 = (Object *) 0; + Object *arg2 = (Object *) 0; + Matrix_4x4 *arg3 = (Matrix_4x4 *) 0; + Matrix_4x4 *arg4 = (Matrix_4x4 *) 0; + Joint *result = 0; + arg1 = (Object *) a_arg1; -DllExport float SWIGSTDCALL Ada_b2d_Object_Mass ( - void * a_arg1 - ) -{ - float jresult ; - Object *arg1 = (Object *) 0 ; - Real result; + arg2 = (Object *) a_arg2; - arg1 = (Object *)a_arg1; + arg3 = (Matrix_4x4 *) a_arg3; - result = (Real)b2d_Object_Mass(arg1); - jresult = result; + arg4 = (Matrix_4x4 *) a_arg4; + result = (Joint *) b2d_new_DoF6_Joint (arg1, arg2, arg3, arg4); + jresult = (void *) result; + return jresult; - return jresult; + } -} + DllExport void *SWIGSTDCALL Ada_b2d_new_cone_twist_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3, + void *a_arg4) + { + void *jresult; + Object *arg1 = (Object *) 0; + Object *arg2 = (Object *) 0; + Matrix_4x4 *arg3 = (Matrix_4x4 *) 0; + Matrix_4x4 *arg4 = (Matrix_4x4 *) 0; + Joint *result = 0; + arg1 = (Object *) a_arg1; + arg2 = (Object *) a_arg2; -DllExport void SWIGSTDCALL Ada_b2d_Object_Friction_is ( - void * a_arg1 - , + arg3 = (Matrix_4x4 *) a_arg3; - float a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Real arg2 ; + arg4 = (Matrix_4x4 *) a_arg4; - arg1 = (Object *)a_arg1; + result = (Joint *) b2d_new_cone_twist_Joint (arg1, arg2, arg3, arg4); + jresult = (void *) result; + return jresult; - arg2 = (Real) a_arg2; + } + DllExport void *SWIGSTDCALL Ada_b2d_new_slider_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3, + void *a_arg4) + { + void *jresult; + Object *arg1 = (Object *) 0; + Object *arg2 = (Object *) 0; + Matrix_4x4 *arg3 = (Matrix_4x4 *) 0; + Matrix_4x4 *arg4 = (Matrix_4x4 *) 0; + Joint *result = 0; - b2d_Object_Friction_is(arg1,arg2); + arg1 = (Object *) a_arg1; + arg2 = (Object *) a_arg2; -} + arg3 = (Matrix_4x4 *) a_arg3; + arg4 = (Matrix_4x4 *) a_arg4; + result = (Joint *) b2d_new_slider_Joint (arg1, arg2, arg3, arg4); + jresult = (void *) result; -DllExport void SWIGSTDCALL Ada_b2d_Object_Restitution_is ( - void * a_arg1 - , + return jresult; - float a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Real arg2 ; + } - arg1 = (Object *)a_arg1; + DllExport void *SWIGSTDCALL Ada_b2d_new_ball_Joint (void *a_arg1, + void *a_arg2, + void *a_arg3, + void *a_arg4) + { + void *jresult; + Object *arg1 = (Object *) 0; + Object *arg2 = (Object *) 0; + Vector_3 *arg3 = (Vector_3 *) 0; + Vector_3 *arg4 = (Vector_3 *) 0; + Joint *result = 0; + arg1 = (Object *) a_arg1; - arg2 = (Real) a_arg2; + arg2 = (Object *) a_arg2; + arg3 = (Vector_3 *) a_arg3; - b2d_Object_Restitution_is(arg1,arg2); + arg4 = (Vector_3 *) a_arg4; + result = (Joint *) b2d_new_ball_Joint (arg1, arg2, arg3, arg4); + jresult = (void *) result; -} + return jresult; + } + DllExport void *SWIGSTDCALL Ada_b2d_Joint_user_Data (void *a_arg1) + { + void *jresult; + Joint *arg1 = (Joint *) 0; + void *result = 0; -DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Site ( - void * a_arg1 - ) -{ - Vector_3 jresult ; - Object *arg1 = (Object *) 0 ; - Vector_3 result; + arg1 = (Joint *) a_arg1; - arg1 = (Object *)a_arg1; + result = (void *) b2d_Joint_user_Data (arg1); + jresult = (void *) result; - result = b2d_Object_Site(arg1); + return jresult; - jresult = result; - //jresult = new Vector_3 ((Vector_3 &) result); + } + DllExport void *SWIGSTDCALL Ada_b2d_Joint_Object_A (void *a_arg1) + { + void *jresult; + Joint *arg1 = (Joint *) 0; + Object *result = 0; + arg1 = (Joint *) a_arg1; + result = (Object *) b2d_Joint_Object_A (arg1); + jresult = (void *) result; - return jresult; + return jresult; -} + } + DllExport void *SWIGSTDCALL Ada_b2d_Joint_Object_B (void *a_arg1) + { + void *jresult; + Joint *arg1 = (Joint *) 0; + Object *result = 0; + arg1 = (Joint *) a_arg1; -DllExport void SWIGSTDCALL Ada_b2d_Object_Site_is ( - void * a_arg1 - , + result = (Object *) b2d_Joint_Object_B (arg1); + jresult = (void *) result; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + return jresult; - arg1 = (Object *)a_arg1; + } - arg2 = (Vector_3 *)a_arg2; + DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Joint_Frame_A (void *a_arg1) + { + Matrix_4x4 jresult; + Joint *arg1 = (Joint *) 0; + Matrix_4x4 result; - b2d_Object_Site_is(arg1,arg2); + arg1 = (Joint *) a_arg1; + result = b2d_Joint_Frame_A (arg1); -} + jresult = result; + //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); + return jresult; + } -DllExport Matrix_3x3 SWIGSTDCALL Ada_b2d_Object_Spin ( - void * a_arg1 - ) -{ - Matrix_3x3 jresult ; - Object *arg1 = (Object *) 0 ; - Matrix_3x3 result; + DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Joint_Frame_B (void *a_arg1) + { + Matrix_4x4 jresult; + Joint *arg1 = (Joint *) 0; + Matrix_4x4 result; - arg1 = (Object *)a_arg1; + arg1 = (Joint *) a_arg1; - result = b2d_Object_Spin(arg1); + result = b2d_Joint_Frame_B (arg1); - jresult = result; - //jresult = new Matrix_3x3 ((Matrix_3x3 &) result); + jresult = result; + //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); + return jresult; + } + DllExport void SWIGSTDCALL Ada_b2d_Joint_Frame_A_is (void *a_arg1, + void *a_arg2) + { + Joint *arg1 = (Joint *) 0; + Matrix_4x4 *arg2 = (Matrix_4x4 *) 0; - return jresult; + arg1 = (Joint *) a_arg1; -} + arg2 = (Matrix_4x4 *) a_arg2; + b2d_Joint_Frame_A_is (arg1, arg2); + } -DllExport void SWIGSTDCALL Ada_b2d_Object_Spin_is ( - void * a_arg1 - , + DllExport void SWIGSTDCALL Ada_b2d_Joint_Frame_B_is (void *a_arg1, + void *a_arg2) + { + Joint *arg1 = (Joint *) 0; + Matrix_4x4 *arg2 = (Matrix_4x4 *) 0; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Matrix_3x3 *arg2 = (Matrix_3x3 *) 0 ; + arg1 = (Joint *) a_arg1; - arg1 = (Object *)a_arg1; + arg2 = (Matrix_4x4 *) a_arg2; - arg2 = (Matrix_3x3 *)a_arg2; + b2d_Joint_Frame_B_is (arg1, arg2); - b2d_Object_Spin_is(arg1,arg2); + } + DllExport void SWIGSTDCALL Ada_b2d_Joint_set_local_Anchor (void *a_arg1, + unsigned int + a_arg2, + void *a_arg3) + { + Joint *arg1 = (Joint *) 0; + bool arg2; + Vector_3 *arg3 = (Vector_3 *) 0; -} + arg1 = (Joint *) a_arg1; + arg2 = a_arg2 ? true : false; + arg3 = (Vector_3 *) a_arg3; -DllExport float SWIGSTDCALL Ada_b2d_Object_xy_Spin ( - void * a_arg1 - ) -{ - float jresult ; - Object *arg1 = (Object *) 0 ; - Real result; + b2d_Joint_set_local_Anchor (arg1, arg2, arg3); - arg1 = (Object *)a_arg1; + } - result = (Real)b2d_Object_xy_Spin(arg1); - jresult = result; + DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_is_Limited (void *a_arg1, + int a_arg2) + { + unsigned int jresult; + Joint *arg1 = (Joint *) 0; + int arg2; + bool result; + arg1 = (Joint *) a_arg1; + arg2 = (int) a_arg2; - return jresult; + result = (bool) b2d_Joint_is_Limited (arg1, arg2); + jresult = result; -} + return jresult; + } + DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_Extent (void *a_arg1, + int a_arg2) + { + unsigned int jresult; + Joint *arg1 = (Joint *) 0; + int arg2; + bool result; -DllExport void SWIGSTDCALL Ada_b2d_Object_xy_Spin_is ( - void * a_arg1 - , + arg1 = (Joint *) a_arg1; - float a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Real arg2 ; + arg2 = (int) a_arg2; - arg1 = (Object *)a_arg1; + result = (bool) b2d_Joint_Extent (arg1, arg2); + jresult = result; + return jresult; - arg2 = (Real) a_arg2; + } + DllExport void SWIGSTDCALL Ada_b2d_Joint_Velocity_is (void *a_arg1, + int a_arg2, + float a_arg3) + { + Joint *arg1 = (Joint *) 0; + int arg2; + Real arg3; - b2d_Object_xy_Spin_is(arg1,arg2); + arg1 = (Joint *) a_arg1; + arg2 = (int) a_arg2; -} + arg3 = (Real) a_arg3; + b2d_Joint_Velocity_is (arg1, arg2, arg3); + } -DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Object_Transform ( - void * a_arg1 - ) -{ - Matrix_4x4 jresult ; - Object *arg1 = (Object *) 0 ; - Matrix_4x4 result; + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Joint_reaction_Force (void *a_arg1) + { + Vector_3 jresult; + Joint *arg1 = (Joint *) 0; + Vector_3 result; - arg1 = (Object *)a_arg1; + arg1 = (Joint *) a_arg1; - result = b2d_Object_Transform(arg1); + result = b2d_Joint_reaction_Force (arg1); - jresult = result; - //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); + return jresult; + } + DllExport float SWIGSTDCALL Ada_b2d_Joint_reaction_Torque (void *a_arg1) + { + float jresult; + Joint *arg1 = (Joint *) 0; + Real result; - return jresult; + arg1 = (Joint *) a_arg1; -} + result = (Real) b2d_Joint_reaction_Torque (arg1); + jresult = result; + return jresult; + } -DllExport void SWIGSTDCALL Ada_b2d_Object_Transform_is ( - void * a_arg1 - , + DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_collide_Connected (void + *a_arg1) + { + unsigned int jresult; + Joint *arg1 = (Joint *) 0; + bool result; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Matrix_4x4 *arg2 = (Matrix_4x4 *) 0 ; + arg1 = (Joint *) a_arg1; - arg1 = (Object *)a_arg1; + result = (bool) b2d_Joint_collide_Connected (arg1); + jresult = result; - arg2 = (Matrix_4x4 *)a_arg2; + return jresult; - b2d_Object_Transform_is(arg1,arg2); + } + DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_hinge_limit_Enabled (void + *a_arg1) + { + unsigned int jresult; + Joint *arg1 = (Joint *) 0; + bool result; -} + arg1 = (Joint *) a_arg1; + result = (bool) b2d_Joint_hinge_limit_Enabled (arg1); + jresult = result; + return jresult; -DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Speed ( - void * a_arg1 - ) -{ - Vector_3 jresult ; - Object *arg1 = (Object *) 0 ; - Vector_3 result; + } - arg1 = (Object *)a_arg1; + DllExport void SWIGSTDCALL Ada_b2d_Joint_hinge_Limits_are (void *a_arg1, + float a_arg2, + float a_arg3) + { + Joint *arg1 = (Joint *) 0; + Real arg2; + Real arg3; - result = b2d_Object_Speed(arg1); + arg1 = (Joint *) a_arg1; - jresult = result; - //jresult = new Vector_3 ((Vector_3 &) result); + arg2 = (Real) a_arg2; + arg3 = (Real) a_arg3; + b2d_Joint_hinge_Limits_are (arg1, arg2, arg3); + } - return jresult; + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Joint_hinge_local_Anchor_on_A (void + *a_arg1) + { + Vector_3 jresult; + Joint *arg1 = (Joint *) 0; + Vector_3 result; -} + arg1 = (Joint *) a_arg1; + result = b2d_Joint_hinge_local_Anchor_on_A (arg1); + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); -DllExport void SWIGSTDCALL Ada_b2d_Object_Speed_is ( - void * a_arg1 - , + return jresult; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + } - arg1 = (Object *)a_arg1; + DllExport Vector_3 SWIGSTDCALL Ada_b2d_Joint_hinge_local_Anchor_on_B (void + *a_arg1) + { + Vector_3 jresult; + Joint *arg1 = (Joint *) 0; + Vector_3 result; - arg2 = (Vector_3 *)a_arg2; + arg1 = (Joint *) a_arg1; - b2d_Object_Speed_is(arg1,arg2); + result = b2d_Joint_hinge_local_Anchor_on_B (arg1); + jresult = result; + //jresult = new Vector_3 ((Vector_3 &) result); -} + return jresult; + } + DllExport float SWIGSTDCALL Ada_b2d_Joint_hinge_reference_Angle (void + *a_arg1) + { + float jresult; + Joint *arg1 = (Joint *) 0; + Real result; -DllExport Vector_3 SWIGSTDCALL Ada_b2d_Object_Gyre ( - void * a_arg1 - ) -{ - Vector_3 jresult ; - Object *arg1 = (Object *) 0 ; - Vector_3 result; + arg1 = (Joint *) a_arg1; - arg1 = (Object *)a_arg1; + result = (Real) b2d_Joint_hinge_reference_Angle (arg1); + jresult = result; - result = b2d_Object_Gyre(arg1); + return jresult; - jresult = result; - //jresult = new Vector_3 ((Vector_3 &) result); + } + DllExport float SWIGSTDCALL Ada_b2d_Joint_hinge_Angle (void *a_arg1) + { + float jresult; + Joint *arg1 = (Joint *) 0; + Real result; + arg1 = (Joint *) a_arg1; + result = (Real) b2d_Joint_hinge_Angle (arg1); + jresult = result; - return jresult; + return jresult; -} + } + DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_hinge_motor_Enabled (void + *a_arg1) + { + unsigned int jresult; + Joint *arg1 = (Joint *) 0; + bool result; + arg1 = (Joint *) a_arg1; -DllExport void SWIGSTDCALL Ada_b2d_Object_Gyre_is ( - void * a_arg1 - , + result = (bool) b2d_Joint_hinge_motor_Enabled (arg1); + jresult = result; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + return jresult; - arg1 = (Object *)a_arg1; + } - arg2 = (Vector_3 *)a_arg2; + DllExport float SWIGSTDCALL Ada_b2d_Joint_hinge_motor_Speed (void *a_arg1) + { + float jresult; + Joint *arg1 = (Joint *) 0; + Real result; - b2d_Object_Gyre_is(arg1,arg2); + arg1 = (Joint *) a_arg1; + result = (Real) b2d_Joint_hinge_motor_Speed (arg1); + jresult = result; -} + return jresult; + } + DllExport float SWIGSTDCALL Ada_b2d_Joint_hinge_max_motor_Torque (void + *a_arg1) + { + float jresult; + Joint *arg1 = (Joint *) 0; + Real result; -DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Force ( - void * a_arg1 - , + arg1 = (Joint *) a_arg1; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + result = (Real) b2d_Joint_hinge_max_motor_Torque (arg1); + jresult = result; - arg1 = (Object *)a_arg1; + return jresult; - arg2 = (Vector_3 *)a_arg2; + } - b2d_Object_apply_Force(arg1,arg2); + DllExport void *SWIGSTDCALL Ada_b2d_new_Space () + { + void *jresult; + Space *result = 0; + result = (Space *) b2d_new_Space (); + jresult = (void *) result; -} + return jresult; + } + DllExport void SWIGSTDCALL Ada_b2d_free_Space (void *a_arg1) + { + Space *arg1 = (Space *) 0; -DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Torque ( - void * a_arg1 - , + arg1 = (Space *) a_arg1; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + b2d_free_Space (arg1); - arg1 = (Object *)a_arg1; + } - arg2 = (Vector_3 *)a_arg2; + DllExport void SWIGSTDCALL Ada_b2d_Space_add_Object (void *a_arg1, + void *a_arg2) + { + Space *arg1 = (Space *) 0; + Object *arg2 = (Object *) 0; - b2d_Object_apply_Torque(arg1,arg2); + arg1 = (Space *) a_arg1; + arg2 = (Object *) a_arg2; -} + b2d_Space_add_Object (arg1, arg2); + } + DllExport void SWIGSTDCALL Ada_b2d_Space_rid_Object (void *a_arg1, + void *a_arg2) + { + Space *arg1 = (Space *) 0; + Object *arg2 = (Object *) 0; -DllExport void SWIGSTDCALL Ada_b2d_Object_apply_Torque_impulse ( - void * a_arg1 - , + arg1 = (Space *) a_arg1; - void * a_arg2 - ) -{ - Object *arg1 = (Object *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; + arg2 = (Object *) a_arg2; - arg1 = (Object *)a_arg1; + b2d_Space_rid_Object (arg1, arg2); - arg2 = (Vector_3 *)a_arg2; + } - b2d_Object_apply_Torque_impulse(arg1,arg2); + DllExport void SWIGSTDCALL Ada_b2d_Space_add_Joint (void *a_arg1, + void *a_arg2) + { + Space *arg1 = (Space *) 0; + Joint *arg2 = (Joint *) 0; + arg1 = (Space *) a_arg1; -} + arg2 = (Joint *) a_arg2; + b2d_Space_add_Joint (arg1, arg2); + } -DllExport void SWIGSTDCALL Ada_b2d_dump ( - void * a_arg1 - ) -{ - Object *arg1 = (Object *) 0 ; + DllExport void SWIGSTDCALL Ada_b2d_Space_rid_Joint (void *a_arg1, + void *a_arg2) + { + Space *arg1 = (Space *) 0; + Joint *arg2 = (Joint *) 0; - arg1 = (Object *)a_arg1; + arg1 = (Space *) a_arg1; - b2d_dump(arg1); + arg2 = (Joint *) a_arg2; + b2d_Space_rid_Joint (arg1, arg2); -} + } + DllExport void *SWIGSTDCALL Ada_b2d_b2Joint_user_Data (void *a_arg1) + { + void *jresult; + b2Joint *arg1 = (b2Joint *) 0; + void *result = 0; + arg1 = (b2Joint *) a_arg1; -DllExport void * SWIGSTDCALL Ada_b2d_new_hinge_Joint_with_local_anchors ( - void * a_arg1 - , + result = (void *) b2d_b2Joint_user_Data (arg1); + jresult = (void *) result; - void * a_arg2 - , + return jresult; - void * a_arg3 - , + } - void * a_arg4 - , + DllExport void SWIGSTDCALL Ada_delete_joint_Cursor (void *a_arg1) + { + joint_Cursor *arg1 = (joint_Cursor *) 0; - void * a_arg5 - , + arg1 = (joint_Cursor *) a_arg1; - float a_arg6 - , + delete arg1; - float a_arg7 - , + } - unsigned int a_arg8 - ) -{ - void * jresult ; - Space *arg1 = (Space *) 0 ; - Object *arg2 = (Object *) 0 ; - Object *arg3 = (Object *) 0 ; - Vector_3 *arg4 = (Vector_3 *) 0 ; - Vector_3 *arg5 = (Vector_3 *) 0 ; - float arg6 ; - float arg7 ; - bool arg8 ; - Joint *result = 0 ; + DllExport joint_Cursor SWIGSTDCALL Ada_b2d_Space_first_Joint (void *a_arg1) + { + joint_Cursor jresult; + Space *arg1 = (Space *) 0; + joint_Cursor result; - arg1 = (Space *)a_arg1; + arg1 = (Space *) a_arg1; - arg2 = (Object *)a_arg2; + result = b2d_Space_first_Joint (arg1); - arg3 = (Object *)a_arg3; + jresult = result; + //jresult = new joint_Cursor ((joint_Cursor &) result); - arg4 = (Vector_3 *)a_arg4; + return jresult; - arg5 = (Vector_3 *)a_arg5; + } + DllExport void SWIGSTDCALL Ada_b2d_Space_next_Joint (void *a_arg1) + { + joint_Cursor *arg1 = (joint_Cursor *) 0; - arg6 = (float) a_arg6; + arg1 = (joint_Cursor *) a_arg1; + b2d_Space_next_Joint (arg1); + } - arg7 = (float) a_arg7; + DllExport void *SWIGSTDCALL Ada_b2d_Space_joint_Element (void *a_arg1) + { + void *jresult; + joint_Cursor *arg1 = (joint_Cursor *) 0; + b2Joint *result = 0; + arg1 = (joint_Cursor *) a_arg1; + result = (b2Joint *) b2d_Space_joint_Element (arg1); + jresult = (void *) result; - arg8 = a_arg8 ? true : false; + return jresult; + } - result = (Joint *)b2d_new_hinge_Joint_with_local_anchors(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); - jresult = (void *) result; + DllExport void SWIGSTDCALL Ada_b2d_Space_Gravity_is (void *a_arg1, + void *a_arg2) + { + Space *arg1 = (Space *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + arg1 = (Space *) a_arg1; + arg2 = (Vector_3 *) a_arg2; - return jresult; + b2d_Space_Gravity_is (arg1, arg2); -} + } + DllExport void SWIGSTDCALL Ada_b2d_Space_evolve (void *a_arg1, float a_arg2) + { + Space *arg1 = (Space *) 0; + float arg2; + arg1 = (Space *) a_arg1; -DllExport void * SWIGSTDCALL Ada_b2d_new_hinge_Joint ( - void * a_arg1 - , + arg2 = (float) a_arg2; - void * a_arg2 - , + b2d_Space_evolve (arg1, arg2); - void * a_arg3 - , + } - void * a_arg4 - , + DllExport void SWIGSTDCALL Ada_delete_b2d_ray_Collision (void *a_arg1) + { + b2d_ray_Collision *arg1 = (b2d_ray_Collision *) 0; - void * a_arg5 - , + arg1 = (b2d_ray_Collision *) a_arg1; - float a_arg6 - , + delete arg1; - float a_arg7 - , + } - unsigned int a_arg8 - ) -{ - void * jresult ; - Space *arg1 = (Space *) 0 ; - Object *arg2 = (Object *) 0 ; - Object *arg3 = (Object *) 0 ; - Matrix_4x4 *arg4 = (Matrix_4x4 *) 0 ; - Matrix_4x4 *arg5 = (Matrix_4x4 *) 0 ; - float arg6 ; - float arg7 ; - bool arg8 ; - Joint *result = 0 ; + DllExport b2d_ray_Collision SWIGSTDCALL Ada_b2d_Space_cast_Ray (void + *a_arg1, + void + *a_arg2, + void + *a_arg3) + { + b2d_ray_Collision jresult; + Space *arg1 = (Space *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + Vector_3 *arg3 = (Vector_3 *) 0; + b2d_ray_Collision result; - arg1 = (Space *)a_arg1; + arg1 = (Space *) a_arg1; - arg2 = (Object *)a_arg2; + arg2 = (Vector_3 *) a_arg2; - arg3 = (Object *)a_arg3; + arg3 = (Vector_3 *) a_arg3; - arg4 = (Matrix_4x4 *)a_arg4; + result = b2d_Space_cast_Ray (arg1, arg2, arg3); - arg5 = (Matrix_4x4 *)a_arg5; + jresult = result; + //jresult = new b2d_ray_Collision ((b2d_ray_Collision &) result); + return jresult; - arg6 = (float) a_arg6; + } + DllExport void SWIGSTDCALL Ada_delete_b2d_point_Collision (void *a_arg1) + { + b2d_point_Collision *arg1 = (b2d_point_Collision *) 0; + arg1 = (b2d_point_Collision *) a_arg1; - arg7 = (float) a_arg7; + delete arg1; + } + DllExport b2d_point_Collision SWIGSTDCALL Ada_b2d_Space_cast_Point (void + *a_arg1, + void + *a_arg2) + { + b2d_point_Collision jresult; + Space *arg1 = (Space *) 0; + Vector_3 *arg2 = (Vector_3 *) 0; + b2d_point_Collision result; - arg8 = a_arg8 ? true : false; + arg1 = (Space *) a_arg1; + arg2 = (Vector_3 *) a_arg2; - result = (Joint *)b2d_new_hinge_Joint(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8); - jresult = (void *) result; + result = b2d_Space_cast_Point (arg1, arg2); + jresult = result; + //jresult = new b2d_point_Collision ((b2d_point_Collision &) result); + return jresult; - return jresult; + } -} + DllExport void SWIGSTDCALL Ada_delete_b2d_Contact (void *a_arg1) + { + b2d_Contact *arg1 = (b2d_Contact *) 0; + arg1 = (b2d_Contact *) a_arg1; + delete arg1; -DllExport void SWIGSTDCALL Ada_b2d_free_hinge_Joint ( - void * a_arg1 - ) -{ - Joint *arg1 = (Joint *) 0 ; + } - arg1 = (Joint *)a_arg1; + DllExport int SWIGSTDCALL Ada_b2d_space_contact_Count (void *a_arg1) + { + int jresult; + Space *arg1 = (Space *) 0; + int result; - b2d_free_hinge_Joint(arg1); + arg1 = (Space *) a_arg1; + result = (int) b2d_space_contact_Count (arg1); + jresult = result; -} + return jresult; + } + DllExport b2d_Contact SWIGSTDCALL Ada_b2d_space_Contact (void *a_arg1, + int a_arg2) + { + b2d_Contact jresult; + Space *arg1 = (Space *) 0; + int arg2; + b2d_Contact result; -DllExport void * SWIGSTDCALL Ada_b2d_new_space_hinge_Joint ( - void * a_arg1 - , + arg1 = (Space *) a_arg1; - void * a_arg2 - , + arg2 = (int) a_arg2; - void * a_arg3 - ) -{ - void * jresult ; - Space *arg1 = (Space *) 0 ; - Object *arg2 = (Object *) 0 ; - Matrix_4x4 *arg3 = (Matrix_4x4 *) 0 ; - Joint *result = 0 ; + result = b2d_space_Contact (arg1, arg2); - arg1 = (Space *)a_arg1; - - arg2 = (Object *)a_arg2; - - arg3 = (Matrix_4x4 *)a_arg3; - - result = (Joint *)b2d_new_space_hinge_Joint(arg1,arg2,arg3); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_new_DoF6_Joint ( - void * a_arg1 - , - - void * a_arg2 - , - - void * a_arg3 - , - - void * a_arg4 - ) -{ - void * jresult ; - Object *arg1 = (Object *) 0 ; - Object *arg2 = (Object *) 0 ; - Matrix_4x4 *arg3 = (Matrix_4x4 *) 0 ; - Matrix_4x4 *arg4 = (Matrix_4x4 *) 0 ; - Joint *result = 0 ; - - arg1 = (Object *)a_arg1; - - arg2 = (Object *)a_arg2; - - arg3 = (Matrix_4x4 *)a_arg3; - - arg4 = (Matrix_4x4 *)a_arg4; - - result = (Joint *)b2d_new_DoF6_Joint(arg1,arg2,arg3,arg4); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_new_cone_twist_Joint ( - void * a_arg1 - , - - void * a_arg2 - , - - void * a_arg3 - , - - void * a_arg4 - ) -{ - void * jresult ; - Object *arg1 = (Object *) 0 ; - Object *arg2 = (Object *) 0 ; - Matrix_4x4 *arg3 = (Matrix_4x4 *) 0 ; - Matrix_4x4 *arg4 = (Matrix_4x4 *) 0 ; - Joint *result = 0 ; - - arg1 = (Object *)a_arg1; - - arg2 = (Object *)a_arg2; - - arg3 = (Matrix_4x4 *)a_arg3; - - arg4 = (Matrix_4x4 *)a_arg4; - - result = (Joint *)b2d_new_cone_twist_Joint(arg1,arg2,arg3,arg4); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_new_slider_Joint ( - void * a_arg1 - , - - void * a_arg2 - , - - void * a_arg3 - , - - void * a_arg4 - ) -{ - void * jresult ; - Object *arg1 = (Object *) 0 ; - Object *arg2 = (Object *) 0 ; - Matrix_4x4 *arg3 = (Matrix_4x4 *) 0 ; - Matrix_4x4 *arg4 = (Matrix_4x4 *) 0 ; - Joint *result = 0 ; - - arg1 = (Object *)a_arg1; - - arg2 = (Object *)a_arg2; - - arg3 = (Matrix_4x4 *)a_arg3; - - arg4 = (Matrix_4x4 *)a_arg4; - - result = (Joint *)b2d_new_slider_Joint(arg1,arg2,arg3,arg4); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_new_ball_Joint ( - void * a_arg1 - , - - void * a_arg2 - , - - void * a_arg3 - , - - void * a_arg4 - ) -{ - void * jresult ; - Object *arg1 = (Object *) 0 ; - Object *arg2 = (Object *) 0 ; - Vector_3 *arg3 = (Vector_3 *) 0 ; - Vector_3 *arg4 = (Vector_3 *) 0 ; - Joint *result = 0 ; - - arg1 = (Object *)a_arg1; - - arg2 = (Object *)a_arg2; - - arg3 = (Vector_3 *)a_arg3; - - arg4 = (Vector_3 *)a_arg4; - - result = (Joint *)b2d_new_ball_Joint(arg1,arg2,arg3,arg4); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void* SWIGSTDCALL Ada_b2d_Joint_user_Data ( - void * a_arg1 - ) -{ - void* jresult ; - Joint *arg1 = (Joint *) 0 ; - void *result = 0 ; - - arg1 = (Joint *)a_arg1; - - result = (void *)b2d_Joint_user_Data(arg1); - jresult = (void *) result; - - - - return jresult; - -} - - - -// DllExport void SWIGSTDCALL Ada_b2d_Joint_user_Data_is ( -// void * a_arg1 -// , -// -// void* a_arg2 -// ) -// { -// Joint *arg1 = (Joint *) 0 ; -// void *arg2 = (void *) 0 ; -// -// arg1 = (Joint *)a_arg1; -// -// arg2 = (void *)a_arg2; -// -// b2d_Joint_user_Data_is(arg1,arg2); -// -// -// } - - - -DllExport void * SWIGSTDCALL Ada_b2d_Joint_Object_A ( - void * a_arg1 - ) -{ - void * jresult ; - Joint *arg1 = (Joint *) 0 ; - Object *result = 0 ; - - arg1 = (Joint *)a_arg1; - - result = (Object *)b2d_Joint_Object_A(arg1); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_Joint_Object_B ( - void * a_arg1 - ) -{ - void * jresult ; - Joint *arg1 = (Joint *) 0 ; - Object *result = 0 ; - - arg1 = (Joint *)a_arg1; - - result = (Object *)b2d_Joint_Object_B(arg1); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Joint_Frame_A ( - void * a_arg1 - ) -{ - Matrix_4x4 jresult ; - Joint *arg1 = (Joint *) 0 ; - Matrix_4x4 result; - - arg1 = (Joint *)a_arg1; - - result = b2d_Joint_Frame_A(arg1); - - jresult = result; - //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); - - - - - return jresult; - -} - - - -DllExport Matrix_4x4 SWIGSTDCALL Ada_b2d_Joint_Frame_B ( - void * a_arg1 - ) -{ - Matrix_4x4 jresult ; - Joint *arg1 = (Joint *) 0 ; - Matrix_4x4 result; - - arg1 = (Joint *)a_arg1; - - result = b2d_Joint_Frame_B(arg1); - - jresult = result; - //jresult = new Matrix_4x4 ((Matrix_4x4 &) result); - - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Joint_Frame_A_is ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Joint *arg1 = (Joint *) 0 ; - Matrix_4x4 *arg2 = (Matrix_4x4 *) 0 ; - - arg1 = (Joint *)a_arg1; - - arg2 = (Matrix_4x4 *)a_arg2; - - b2d_Joint_Frame_A_is(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Joint_Frame_B_is ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Joint *arg1 = (Joint *) 0 ; - Matrix_4x4 *arg2 = (Matrix_4x4 *) 0 ; - - arg1 = (Joint *)a_arg1; - - arg2 = (Matrix_4x4 *)a_arg2; - - b2d_Joint_Frame_B_is(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Joint_set_local_Anchor ( - void * a_arg1 - , - - unsigned int a_arg2 - , - - void * a_arg3 - ) -{ - Joint *arg1 = (Joint *) 0 ; - bool arg2 ; - Vector_3 *arg3 = (Vector_3 *) 0 ; - - arg1 = (Joint *)a_arg1; - - - arg2 = a_arg2 ? true : false; - - - arg3 = (Vector_3 *)a_arg3; - - b2d_Joint_set_local_Anchor(arg1,arg2,arg3); - - -} - - - -DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_is_Limited ( - void * a_arg1 - , - - int a_arg2 - ) -{ - unsigned int jresult ; - Joint *arg1 = (Joint *) 0 ; - int arg2 ; - bool result; - - arg1 = (Joint *)a_arg1; - - - arg2 = (int) a_arg2; - - - result = (bool)b2d_Joint_is_Limited(arg1,arg2); - jresult = result; - - - - return jresult; - -} - - - -DllExport unsigned int SWIGSTDCALL Ada_b2d_Joint_Extent ( - void * a_arg1 - , - - int a_arg2 - ) -{ - unsigned int jresult ; - Joint *arg1 = (Joint *) 0 ; - int arg2 ; - bool result; - - arg1 = (Joint *)a_arg1; - - - arg2 = (int) a_arg2; - - - result = (bool)b2d_Joint_Extent(arg1,arg2); - jresult = result; - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Joint_Velocity_is ( - void * a_arg1 - , - - int a_arg2 - , - - float a_arg3 - ) -{ - Joint *arg1 = (Joint *) 0 ; - int arg2 ; - Real arg3 ; - - arg1 = (Joint *)a_arg1; - - - arg2 = (int) a_arg2; - - - - arg3 = (Real) a_arg3; - - - b2d_Joint_Velocity_is(arg1,arg2,arg3); - - -} - - - -DllExport Vector_3 SWIGSTDCALL Ada_b2d_Joint_reaction_Force ( - void * a_arg1 - ) -{ - Vector_3 jresult ; - Joint *arg1 = (Joint *) 0 ; - Vector_3 result; - - arg1 = (Joint *)a_arg1; - - result = b2d_Joint_reaction_Force(arg1); - - jresult = result; - //jresult = new Vector_3 ((Vector_3 &) result); - - - - - return jresult; - -} - - - -DllExport float SWIGSTDCALL Ada_b2d_Joint_reaction_Torque ( - void * a_arg1 - ) -{ - float jresult ; - Joint *arg1 = (Joint *) 0 ; - Real result; - - arg1 = (Joint *)a_arg1; - - result = (Real)b2d_Joint_reaction_Torque(arg1); - jresult = result; - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Joint_hinge_Limits_are ( - void * a_arg1 - , - - float a_arg2 - , - - float a_arg3 - ) -{ - Joint *arg1 = (Joint *) 0 ; - Real arg2 ; - Real arg3 ; - - arg1 = (Joint *)a_arg1; - - - arg2 = (Real) a_arg2; - - - - arg3 = (Real) a_arg3; - - - b2d_Joint_hinge_Limits_are(arg1,arg2,arg3); - - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_new_Space ( - ) -{ - void * jresult ; - Space *result = 0 ; - - result = (Space *)b2d_new_Space(); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_free_Space ( - void * a_arg1 - ) -{ - Space *arg1 = (Space *) 0 ; - - arg1 = (Space *)a_arg1; - - b2d_free_Space(arg1); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_add_Object ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - Object *arg2 = (Object *) 0 ; - - arg1 = (Space *)a_arg1; - - arg2 = (Object *)a_arg2; - - b2d_Space_add_Object(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_rid_Object ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - Object *arg2 = (Object *) 0 ; - - arg1 = (Space *)a_arg1; - - arg2 = (Object *)a_arg2; - - b2d_Space_rid_Object(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_add_Joint ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - Joint *arg2 = (Joint *) 0 ; - - arg1 = (Space *)a_arg1; - - arg2 = (Joint *)a_arg2; - - b2d_Space_add_Joint(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_rid_Joint ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - Joint *arg2 = (Joint *) 0 ; - - arg1 = (Space *)a_arg1; - - arg2 = (Joint *)a_arg2; - - b2d_Space_rid_Joint(arg1,arg2); - - -} - - - -DllExport void* SWIGSTDCALL Ada_b2d_b2Joint_user_Data ( - void * a_arg1 - ) -{ - void* jresult ; - b2Joint *arg1 = (b2Joint *) 0 ; - void *result = 0 ; - - arg1 = (b2Joint *)a_arg1; - - result = (void *)b2d_b2Joint_user_Data(arg1); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_delete_joint_Cursor ( - void * a_arg1 - ) -{ - joint_Cursor *arg1 = (joint_Cursor *) 0 ; - - arg1 = (joint_Cursor *)a_arg1; - - delete arg1; - - -} - - - -DllExport joint_Cursor SWIGSTDCALL Ada_b2d_Space_first_Joint ( - void * a_arg1 - ) -{ - joint_Cursor jresult ; - Space *arg1 = (Space *) 0 ; - joint_Cursor result; - - arg1 = (Space *)a_arg1; - - result = b2d_Space_first_Joint(arg1); - - jresult = result; - //jresult = new joint_Cursor ((joint_Cursor &) result); - - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_next_Joint ( - void * a_arg1 - ) -{ - joint_Cursor *arg1 = (joint_Cursor *) 0 ; - - arg1 = (joint_Cursor *)a_arg1; - - b2d_Space_next_Joint(arg1); - - -} - - - -DllExport void * SWIGSTDCALL Ada_b2d_Space_joint_Element ( - void * a_arg1 - ) -{ - void * jresult ; - joint_Cursor *arg1 = (joint_Cursor *) 0 ; - b2Joint *result = 0 ; - - arg1 = (joint_Cursor *)a_arg1; - - result = (b2Joint *)b2d_Space_joint_Element(arg1); - jresult = (void *) result; - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_Gravity_is ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; - - arg1 = (Space *)a_arg1; - - arg2 = (Vector_3 *)a_arg2; - - b2d_Space_Gravity_is(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_b2d_Space_evolve ( - void * a_arg1 - , - - float a_arg2 - ) -{ - Space *arg1 = (Space *) 0 ; - float arg2 ; - - arg1 = (Space *)a_arg1; - - - arg2 = (float) a_arg2; - - - b2d_Space_evolve(arg1,arg2); - - -} - - - -DllExport void SWIGSTDCALL Ada_delete_b2d_ray_Collision ( - void * a_arg1 - ) -{ - b2d_ray_Collision *arg1 = (b2d_ray_Collision *) 0 ; - - arg1 = (b2d_ray_Collision *)a_arg1; - - delete arg1; - - -} - - - -DllExport b2d_ray_Collision SWIGSTDCALL Ada_b2d_Space_cast_Ray ( - void * a_arg1 - , - - void * a_arg2 - , - - void * a_arg3 - ) -{ - b2d_ray_Collision jresult ; - Space *arg1 = (Space *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; - Vector_3 *arg3 = (Vector_3 *) 0 ; - b2d_ray_Collision result; - - arg1 = (Space *)a_arg1; - - arg2 = (Vector_3 *)a_arg2; - - arg3 = (Vector_3 *)a_arg3; - - result = b2d_Space_cast_Ray(arg1,arg2,arg3); - - jresult = result; - //jresult = new b2d_ray_Collision ((b2d_ray_Collision &) result); - - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_delete_b2d_point_Collision ( - void * a_arg1 - ) -{ - b2d_point_Collision *arg1 = (b2d_point_Collision *) 0 ; - - arg1 = (b2d_point_Collision *)a_arg1; - - delete arg1; - - -} - - - -DllExport b2d_point_Collision SWIGSTDCALL Ada_b2d_Space_cast_Point ( - void * a_arg1 - , - - void * a_arg2 - ) -{ - b2d_point_Collision jresult ; - Space *arg1 = (Space *) 0 ; - Vector_3 *arg2 = (Vector_3 *) 0 ; - b2d_point_Collision result; - - arg1 = (Space *)a_arg1; - - arg2 = (Vector_3 *)a_arg2; - - result = b2d_Space_cast_Point(arg1,arg2); - - jresult = result; - //jresult = new b2d_point_Collision ((b2d_point_Collision &) result); - - - - - return jresult; - -} - - - -DllExport void SWIGSTDCALL Ada_delete_b2d_Contact ( - void * a_arg1 - ) -{ - b2d_Contact *arg1 = (b2d_Contact *) 0 ; - - arg1 = (b2d_Contact *)a_arg1; - - delete arg1; - - -} - - - -DllExport int SWIGSTDCALL Ada_b2d_space_contact_Count ( - void * a_arg1 - ) -{ - int jresult ; - Space *arg1 = (Space *) 0 ; - int result; - - arg1 = (Space *)a_arg1; - - result = (int)b2d_space_contact_Count(arg1); - jresult = result; - - - - return jresult; - -} - - - -DllExport b2d_Contact SWIGSTDCALL Ada_b2d_space_Contact ( - void * a_arg1 - , - - int a_arg2 - ) -{ - b2d_Contact jresult ; - Space *arg1 = (Space *) 0 ; - int arg2 ; - b2d_Contact result; - - arg1 = (Space *)a_arg1; - - - arg2 = (int) a_arg2; - - - result = b2d_space_Contact(arg1,arg2); - - jresult = result; - //jresult = new b2d_Contact ((b2d_Contact &) result); - - - - - return jresult; - -} + jresult = result; + //jresult = new b2d_Contact ((b2d_Contact &) result); + return jresult; + } #ifdef __cplusplus } #endif #ifdef __cplusplus -extern "C" { +extern "C" +{ #endif -extern joint_Cursor ada_new_joint_Cursor_joint_Cursor() -{ - return joint_Cursor(); -} + extern joint_Cursor ada_new_joint_Cursor_joint_Cursor () + { + return joint_Cursor (); + } + extern b2d_ray_Collision ada_new_b2d_ray_Collision_b2d_ray_Collision () + { + return b2d_ray_Collision (); + } -extern b2d_ray_Collision ada_new_b2d_ray_Collision_b2d_ray_Collision() -{ - return b2d_ray_Collision(); -} - - -extern b2d_point_Collision ada_new_b2d_point_Collision_b2d_point_Collision() -{ - return b2d_point_Collision(); -} - - -extern b2d_Contact ada_new_b2d_Contact_b2d_Contact() -{ - return b2d_Contact(); -} + extern b2d_point_Collision + ada_new_b2d_point_Collision_b2d_point_Collision () + { + return b2d_point_Collision (); + } + extern b2d_Contact ada_new_b2d_Contact_b2d_Contact () + { + return b2d_Contact (); + } #ifdef __cplusplus } #endif - diff --git a/3-mid/physics/interface/source/physics-joint-hinge.ads b/3-mid/physics/interface/source/physics-joint-hinge.ads index 357b719..a99fbe2 100644 --- a/3-mid/physics/interface/source/physics-joint-hinge.ads +++ b/3-mid/physics/interface/source/physics-joint-hinge.ads @@ -18,6 +18,21 @@ is function lower_Limit (Self : in Item) return Real is abstract; function upper_Limit (Self : in Item) return Real is abstract; - function Angle (Self : in Item) return Real is abstract; + function limit_Enabled (Self : in Item) return Boolean is abstract; + + function reference_Angle (Self : in Item) return Radians is abstract; + function Angle (Self : in Item) return Real is abstract; + + function local_Anchor_on_A (Self : in Item) return Vector_3 is abstract; + function local_Anchor_on_B (Self : in Item) return Vector_3 is abstract; + + + --------- + --- Motor + -- + + function motor_Enabled (Self : in Item) return Boolean is abstract; + function motor_Speed (Self : in Item) return Real is abstract; + function max_motor_Torque (Self : in Item) return Real is abstract; end physics.Joint.hinge; diff --git a/3-mid/physics/interface/source/physics-joint.ads b/3-mid/physics/interface/source/physics-joint.ads index ec2f2ba..0f4cc59 100644 --- a/3-mid/physics/interface/source/physics-joint.ads +++ b/3-mid/physics/interface/source/physics-joint.ads @@ -56,4 +56,7 @@ is function user_Data (Self : in Item) return access lace.Any.limited_item'Class is abstract; + function collide_Connected (Self : in Item) return Boolean is abstract; + + end physics.Joint; diff --git a/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.adb b/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.adb index 863f522..db20a92 100644 --- a/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.adb +++ b/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.adb @@ -66,6 +66,15 @@ is end user_Data; + overriding + function collide_Connected (Self : in Item) return Boolean + is + begin + return Boolean'Val (b2d_Joint_collide_Connected (Self.C)); + end collide_Connected; + + + -------- -- DoF6 -- @@ -245,7 +254,7 @@ is c_Object_B, c_Pivot_in_A'unchecked_Access, c_Pivot_in_B'unchecked_Access); - return Self; + return physics.Joint.ball.view (Self); end new_Ball_Joint; @@ -408,7 +417,7 @@ is c_Object_B, c_Frame_A'unchecked_Access, c_Frame_B'unchecked_Access); - return Self; + return physics.Joint.slider.view (Self); end new_Slider_Joint; @@ -571,7 +580,7 @@ is c_Object_B, c_Frame_A'unchecked_Access, c_Frame_B'unchecked_Access); - return Self; + return physics.Joint.cone_twist.view (Self); end new_cone_Twist_Joint; @@ -761,7 +770,7 @@ is c_math_c.Real (low_Limit), c_math_c.Real (high_Limit), Boolean'Pos (collide_Conected)); - return Self; + return physics.Joint.hinge.view (Self); end new_hinge_Joint; @@ -780,7 +789,7 @@ is Self.C := b2d_new_space_hinge_Joint (in_Space, c_Object_A, c_Frame_A'unchecked_Access); - return Self; + return physics.Joint.hinge.view (Self); end new_hinge_Joint; @@ -825,7 +834,7 @@ is c_math_c.Real (low_Limit), c_math_c.Real (high_Limit), Boolean'Pos (collide_Conected)); - return Self; + return physics.Joint.hinge.view (Self); end new_hinge_Joint; @@ -850,6 +859,7 @@ is end Limits_are; + overriding function lower_Limit (Self : in Hinge) return Real is @@ -872,8 +882,7 @@ is function Angle (Self : in Hinge) return Real is begin - raise Error with "TODO"; - return 0.0; + return Real (b2d_Joint_hinge_Angle (Self.C)); end Angle; @@ -980,6 +989,68 @@ is end desired_Extent_is; + overriding + function local_Anchor_on_A (Self : in Hinge) return Vector_3 + is + begin + return +b2d_Joint_hinge_local_Anchor_on_A (Self.C); + end local_Anchor_on_A; + + + + overriding + function local_Anchor_on_B (Self : in Hinge) return Vector_3 + is + begin + return +b2d_Joint_hinge_local_Anchor_on_B (Self.C); + end local_Anchor_on_B; + + + + overriding + function reference_Angle (Self : in Hinge) return Radians + is + begin + return Radians (b2d_Joint_hinge_reference_Angle (Self.C)); + end reference_Angle; + + + overriding + function limit_Enabled (Self : in Hinge) return Boolean + is + begin + return Boolean'Val (b2d_Joint_hinge_limit_Enabled (Self.C)); + end limit_Enabled; + + + + overriding + function motor_Enabled (Self : in Hinge) return Boolean + is + begin + return Boolean'Val (b2d_Joint_hinge_motor_Enabled (Self.C)); + end motor_Enabled; + + + + overriding + function motor_Speed (Self : in Hinge) return Real + is + begin + return Real (b2d_Joint_hinge_motor_Speed (Self.C)); + end motor_Speed; + + + + overriding + function max_motor_Torque (Self : in Hinge) return Real + is + begin + return Real (b2d_Joint_hinge_max_motor_Torque (Self.C)); + end max_motor_Torque; + + + -------- --- Free -- diff --git a/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.ads b/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.ads index d77d750..d42c4bf 100644 --- a/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.ads +++ b/3-mid/physics/interface/source/private/box2d/box2d_physics-joint.ads @@ -11,6 +11,7 @@ with lace.Any; + package box2d_Physics.Joint -- -- Provides glue between a physics joint and a Box2D joint. @@ -51,9 +52,9 @@ is low_Limit, high_Limit : in math.Real; collide_Conected : in Boolean) return physics.Joint.hinge.view; - function new_hinge_Joint (in_Space : in box2d_c.Pointers.Space_Pointer; - Object_A : in physics.Object.view; - Frame_A : in Matrix_4x4) return physics.Joint.hinge.view; + function new_hinge_Joint (in_Space : in box2d_c.Pointers.Space_Pointer; + Object_A : in physics.Object.view; + Frame_A : in Matrix_4x4) return physics.Joint.hinge.view; procedure free (the_Joint : in out physics.Joint.view); @@ -78,6 +79,11 @@ private function user_Data (Self : in Item) return access lace.Any.limited_Item'Class; + + overriding + function collide_Connected (Self : in Item) return Boolean; + + use physics.Joint; -------- @@ -341,11 +347,33 @@ private relaxationFactor : in Real := 1.0); overriding function lower_Limit (Self : in Hinge) return Real; + overriding function upper_Limit (Self : in Hinge) return Real; + overriding + function limit_Enabled (Self : in Hinge) return Boolean; + overriding function Angle (Self : in Hinge) return Real; + overriding + function reference_Angle (Self : in Hinge) return Radians; + + overriding + function local_Anchor_on_A (Self : in Hinge) return Vector_3; + + overriding + function local_Anchor_on_B (Self : in Hinge) return Vector_3; + + + overriding + function motor_Enabled (Self : in Hinge) return Boolean; + + overriding + function motor_Speed (Self : in Hinge) return Real; + + overriding + function max_motor_Torque (Self : in Hinge) return Real; end box2d_Physics.Joint; diff --git a/3-mid/physics/interface/source/private/box2d/box2d_physics-space.adb b/3-mid/physics/interface/source/private/box2d/box2d_physics-space.adb index 5561543..035c6b3 100644 --- a/3-mid/physics/interface/source/private/box2d/box2d_physics-space.adb +++ b/3-mid/physics/interface/source/private/box2d/box2d_physics-space.adb @@ -269,7 +269,6 @@ is function new_hinge_Joint (Self : access Item; Object_A : in physics.Object.view; Frame_A : in Matrix_4x4) return physics.Joint.hinge.view is - pragma unreferenced (Self); the_Joint : constant physics.Joint.hinge.view := box2d_physics.Joint.new_hinge_Joint (Self.C, Object_A, Frame_A); begin return the_Joint; diff --git a/3-mid/physics/interface/source/private/bullet/bullet_physics-joint.ads b/3-mid/physics/interface/source/private/bullet/bullet_physics-joint.ads index b64c7c2..97fd995 100644 --- a/3-mid/physics/interface/source/private/bullet/bullet_physics-joint.ads +++ b/3-mid/physics/interface/source/private/bullet/bullet_physics-joint.ads @@ -66,6 +66,13 @@ private overriding function user_Data (Self : in Item) return access lace.Any.limited_item'Class; + overriding + function collide_Connected (Self : in Item) return Boolean + is + (False); + + + -------- -- DoF6 @@ -76,8 +83,7 @@ private null; end record; - type DoF6_view is access DoF6 - ; + type DoF6_view is access DoF6; overriding procedure destruct (Self : in out DoF6); @@ -329,5 +335,34 @@ private overriding function Angle (Self : in Hinge) return Real; + overriding + function reference_Angle (Self : in Hinge) return Radians + is (raise Program_Error); + + overriding + function local_Anchor_on_A (Self : in Hinge) return Vector_3 + is (raise Program_Error); + + overriding + function local_Anchor_on_B (Self : in Hinge) return Vector_3 + is (raise Program_Error); + + overriding + function limit_Enabled (Self : in Hinge) return Boolean + is (raise Program_Error); + + + overriding + function motor_Enabled (Self : in Hinge) return Boolean + is (raise Program_Error); + + overriding + function motor_Speed (Self : in Hinge) return Real + is (raise Program_Error); + + overriding + function max_motor_Torque (Self : in Hinge) return Real + is (raise Program_Error); + end bullet_Physics.Joint; diff --git a/4-high/gel/source/joint/gel-hinge_joint.adb b/4-high/gel/source/joint/gel-hinge_joint.adb index 8b59253..884e60d 100644 --- a/4-high/gel/source/joint/gel-hinge_joint.adb +++ b/4-high/gel/source/joint/gel-hinge_joint.adb @@ -25,6 +25,8 @@ is low_Limit => to_Radians (-180.0), high_Limit => to_Radians ( 180.0), collide_Conected => False); + + Self.pivot_Anchor := pivot_Anchor; end define; @@ -162,11 +164,50 @@ is - function Angle (Self : in Item'Class) return Real + function Anchor_on_A (Self : in Item) return Vector_3 is begin - raise Error with "TODO"; - return 0.0; + return Self.Physics.local_Anchor_on_A; + end Anchor_on_A; + + + + function Anchor_on_B (Self : in Item) return Vector_3 + is + begin + return Self.Physics.local_Anchor_on_B; + end Anchor_on_B; + + + + function pivot_Anchor (Self : in Item) return Vector_3 + is + begin + return Self.pivot_Anchor; + end pivot_Anchor; + + + + function reference_Angle (Self : in Item) return Radians + is + begin + return Self.Physics.reference_Angle; + end reference_Angle; + + + + function limit_Enabled (Self : in Item) return Boolean + is + begin + return Self.Physics.limit_Enabled; + end limit_Enabled; + + + + function Angle (Self : in Item) return Real + is + begin + return Self.Physics.Angle; end Angle; @@ -210,6 +251,35 @@ is end Physics; + + --------- + --- Motor + -- + + function motor_Enabled (Self : in Item) return Boolean + is + begin + return Self.Physics.motor_Enabled; + end motor_Enabled; + + + + function motor_Speed (Self : in Item) return Real + is + begin + return Self.Physics.motor_Speed; + end motor_Speed; + + + + function max_motor_Torque (Self : in Item) return Real + is + begin + return Self.Physics.max_motor_Torque; + end max_motor_Torque; + + + ---------------- --- Joint Limits -- diff --git a/4-high/gel/source/joint/gel-hinge_joint.ads b/4-high/gel/source/joint/gel-hinge_joint.ads index 9af0499..f35bfab 100644 --- a/4-high/gel/source/joint/gel-hinge_joint.ads +++ b/4-high/gel/source/joint/gel-hinge_joint.ads @@ -66,11 +66,14 @@ is procedure destroy (Self : in out Item); + -------------- --- Attributes -- - function Angle (Self : in Item'Class) return Real; + function reference_Angle (Self : in Item) return Radians; + + function Angle (Self : in Item) return Real; overriding function Physics (Self : in Item) return Joint.Physics_view; @@ -81,11 +84,13 @@ is relaxation_Factor : in Real := 1.0); overriding function Frame_A (Self : in Item) return Matrix_4x4; + overriding function Frame_B (Self : in Item) return Matrix_4x4; overriding procedure Frame_A_is (Self : in out Item; Now : in Matrix_4x4); + overriding procedure Frame_B_is (Self : in out Item; Now : in Matrix_4x4); @@ -93,16 +98,27 @@ is function Degrees_of_freedom (Self : in Item) return joint.degree_of_Freedom; + function Anchor_on_A (Self : in Item) return Vector_3; + function Anchor_on_B (Self : in Item) return Vector_3; + + function pivot_Anchor (Self : in Item) return Vector_3; + + function limit_Enabled (Self : in Item) return Boolean; + + + -- Bounds - limits the range of motion for a degree of freedom. -- overriding function low_Bound (Self : access Item; for_Degree : in joint.Degree_of_freedom) return Real; + overriding procedure low_Bound_is (Self : access Item; for_Degree : in joint.Degree_of_freedom; Now : in Real); overriding function high_Bound (Self : access Item; for_Degree : in joint.Degree_of_freedom) return Real; + overriding procedure high_Bound_is (Self : access Item; for_Degree : in joint.Degree_of_freedom; Now : in Real); @@ -116,11 +132,14 @@ is procedure Velocity_is (Self : in Item; for_Degree : in joint.Degree_of_freedom; Now : in Real); - -------------- - --- Operations + --------- + --- Motor -- - -- Nil. + function motor_Enabled (Self : in Item) return Boolean; + function motor_Speed (Self : in Item) return Real; + function max_motor_Torque (Self : in Item) return Real; + @@ -130,6 +149,8 @@ private record Physics : access std_physics.Joint.hinge.item'Class; + pivot_Anchor : Vector_3; + low_Bound, high_Bound : Real; diff --git a/4-high/gel/source/joint/gel-joint.adb b/4-high/gel/source/joint/gel-joint.adb index 785a80f..363d0f8 100644 --- a/4-high/gel/source/joint/gel-joint.adb +++ b/4-high/gel/source/joint/gel-joint.adb @@ -61,26 +61,28 @@ is --- Hinges -- - function local_Anchor_on_A (Self : in Item) return Vector_3 - is - begin - return Self.local_Anchor_on_A; - end local_Anchor_on_A; - - - - function local_Anchor_on_B (Self : in Item) return Vector_3 - is - begin - return Self.local_Anchor_on_B; - end local_Anchor_on_B; + -- function local_Anchor_on_A (Self : in Item'Class) return Vector_3 + -- is + -- begin + -- return Self.Physics.local_Anchor_on_A; + -- -- return Self.local_Anchor_on_A; + -- end local_Anchor_on_A; + -- + -- + -- + -- function local_Anchor_on_B (Self : in Item'Class) return Vector_3 + -- is + -- begin + -- return Self.Physics.local_Anchor_on_B; + -- -- return Self.local_Anchor_on_B; + -- end local_Anchor_on_B; procedure local_Anchor_on_A_is (Self : out Item; Now : in Vector_3) is begin - Self.local_Anchor_on_A := Now; + -- Self.local_Anchor_on_A := Now; if Self.Sprite_A.World /= null then @@ -94,7 +96,7 @@ is procedure local_Anchor_on_B_is (Self : out Item; Now : in Vector_3) is begin - Self.local_Anchor_on_B := Now; + -- Self.local_Anchor_on_B := Now; if Self.Sprite_B.World /= null then @@ -120,4 +122,12 @@ is end reaction_Torque; + + function collide_Connected (Self : in Item'Class) return Boolean + is + begin + return Self.Physics.collide_Connected; + end collide_Connected; + + end gel.Joint; diff --git a/4-high/gel/source/joint/gel-joint.ads b/4-high/gel/source/joint/gel-joint.ads index 4f81a15..69afdd2 100644 --- a/4-high/gel/source/joint/gel-joint.ads +++ b/4-high/gel/source/joint/gel-joint.ads @@ -89,6 +89,13 @@ is function reaction_Torque (Self : in Item'Class) return Real; + function collide_Connected (Self : in Item'Class) return Boolean; + + -- function local_Anchor_on_A (Self : in Item'Class) return Vector_3; + -- function local_Anchor_on_B (Self : in Item'Class) return Vector_3; + + + -------------- --- Operations -- @@ -100,8 +107,8 @@ is --- Hinges -- - function local_Anchor_on_A (Self : in Item) return Vector_3; - function local_Anchor_on_B (Self : in Item) return Vector_3; + -- function local_Anchor_on_A (Self : in Item) return Vector_3; + -- function local_Anchor_on_B (Self : in Item) return Vector_3; procedure local_Anchor_on_A_is (Self : out Item; Now : in Vector_3); procedure local_Anchor_on_B_is (Self : out Item; Now : in Vector_3); @@ -115,8 +122,8 @@ private Sprite_A : access gel.Sprite.item'Class; Sprite_B : access gel.Sprite.item'Class; - local_Anchor_on_A : Vector_3; - local_Anchor_on_B : Vector_3; + -- local_Anchor_on_A : Vector_3; + -- local_Anchor_on_B : Vector_3; end record; null_Joints : constant Joint.views (1 .. 0) := [others => null];