IoODEHinge *IoODEHinge_proto(void *state) { IoObject *self = IoObject_new(state); IoObject_tag_(self, IoODEHinge_newTag(state)); IoODEJoint_protoCommon(self); IoState_registerProtoWithId_(state, self, protoId); { IoMethodTable methodTable[] = { ODE_COMMON_JOINT_METHODS #define PARAM(X, _N, _SETN) \ {#_N, IoODEHinge_##_N}, \ {#_SETN, IoODEHinge_##_SETN}, PARAMS #undef PARAM {"anchor", IoODEHinge_anchor}, {"setAnchor", IoODEHinge_setAnchor}, {"anchor2", IoODEHinge_anchor2}, {"axis", IoODEHinge_axis}, {"setAxis", IoODEHinge_setAxis}, {"angle", IoODEHinge_angle}, {"angleRate", IoODEHinge_angleRate}, {"addTorque", IoODEHinge_addTorque}, {NULL, NULL}, }; IoObject_addMethodTable_(self, methodTable); } return self; }
IoODEJoint *IoODEJoint_proto(void *state) { IoObject *self = IoObject_new(state); IoObject_tag_(self, IoODEJoint_newTag(state)); IoODEJoint_protoCommon(self); IoState_registerProtoWithFunc_(state, self, IoODEJoint_proto); { IoMethodTable methodTable[] = { ODE_COMMON_JOINT_METHODS {NULL, NULL}, }; IoObject_addMethodTable_(self, methodTable); } return self; }