# This file was automatically generated by SWIG (http://www.swig.org).
# Version 1.3.31
#
# Don't modify this file, modify the SWIG interface instead.
# This file is compatible with both classic and new-style classes.

import _Box2D2
import new
new_instancemethod = new.instancemethod
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
    if (name == "thisown"): return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'PySwigObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name,None)
    if method: return method(self,value)
    if (not static) or hasattr(self,name):
        self.__dict__[name] = value
    else:
        raise AttributeError("You cannot add attributes to %s" % self)

def _swig_setattr(self,class_type,name,value):
    return _swig_setattr_nondynamic(self,class_type,name,value,0)

def _swig_getattr(self,class_type,name):
    if (name == "thisown"): return self.this.own()
    method = class_type.__swig_getmethods__.get(name,None)
    if method: return method(self)
    raise AttributeError,name

def _swig_repr(self):
    try: strthis = "proxy of " + self.this.__repr__()
    except: strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)

b2Alloc = _Box2D2.b2Alloc
b2Free = _Box2D2.b2Free
class b2Version:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Version, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Version, name)
    __repr__ = _swig_repr
    __swig_setmethods__["major"] = _Box2D2.b2Version_major_set
    __swig_getmethods__["major"] = _Box2D2.b2Version_major_get
    __swig_setmethods__["minor"] = _Box2D2.b2Version_minor_set
    __swig_getmethods__["minor"] = _Box2D2.b2Version_minor_get
    __swig_setmethods__["revision"] = _Box2D2.b2Version_revision_set
    __swig_getmethods__["revision"] = _Box2D2.b2Version_revision_get
    def __init__(self, *args): 
        _Box2D2.b2Version_swiginit(self,apply(_Box2D2.new_b2Version, args))
    __swig_destroy__ = _Box2D2.delete_b2Version
b2Version_swigregister = _Box2D2.b2Version_swigregister
b2Version_swigregister(b2Version)
cvar = _Box2D2.cvar
b2_pi = cvar.b2_pi
b2_maxManifoldPoints = cvar.b2_maxManifoldPoints
b2_maxPolygonVertices = cvar.b2_maxPolygonVertices
b2_maxProxies = cvar.b2_maxProxies
b2_maxPairs = cvar.b2_maxPairs
b2_linearSlop = cvar.b2_linearSlop
b2_angularSlop = cvar.b2_angularSlop
b2_toiSlop = cvar.b2_toiSlop
b2_maxTOIContactsPerIsland = cvar.b2_maxTOIContactsPerIsland
b2_velocityThreshold = cvar.b2_velocityThreshold
b2_maxLinearCorrection = cvar.b2_maxLinearCorrection
b2_maxAngularCorrection = cvar.b2_maxAngularCorrection
b2_maxLinearVelocity = cvar.b2_maxLinearVelocity
b2_maxLinearVelocitySquared = cvar.b2_maxLinearVelocitySquared
b2_maxAngularVelocity = cvar.b2_maxAngularVelocity
b2_maxAngularVelocitySquared = cvar.b2_maxAngularVelocitySquared
b2_contactBaumgarte = cvar.b2_contactBaumgarte
b2_timeToSleep = cvar.b2_timeToSleep
b2_linearSleepTolerance = cvar.b2_linearSleepTolerance
b2_angularSleepTolerance = cvar.b2_angularSleepTolerance

b2IsValid = _Box2D2.b2IsValid
b2InvSqrt = _Box2D2.b2InvSqrt
class b2Vec2:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Vec2, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Vec2, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2Vec2_swiginit(self,apply(_Box2D2.new_b2Vec2, args))
    __swig_setmethods__["x"] = _Box2D2.b2Vec2_x_set
    __swig_getmethods__["x"] = _Box2D2.b2Vec2_x_get
    __swig_setmethods__["y"] = _Box2D2.b2Vec2_y_set
    __swig_getmethods__["y"] = _Box2D2.b2Vec2_y_get
    __swig_destroy__ = _Box2D2.delete_b2Vec2
b2Vec2.SetZero = new_instancemethod(_Box2D2.b2Vec2_SetZero,None,b2Vec2)
b2Vec2.Set = new_instancemethod(_Box2D2.b2Vec2_Set,None,b2Vec2)
b2Vec2.__neg__ = new_instancemethod(_Box2D2.b2Vec2___neg__,None,b2Vec2)
b2Vec2.__iadd__ = new_instancemethod(_Box2D2.b2Vec2___iadd__,None,b2Vec2)
b2Vec2.__isub__ = new_instancemethod(_Box2D2.b2Vec2___isub__,None,b2Vec2)
b2Vec2.__imul__ = new_instancemethod(_Box2D2.b2Vec2___imul__,None,b2Vec2)
b2Vec2.Length = new_instancemethod(_Box2D2.b2Vec2_Length,None,b2Vec2)
b2Vec2.LengthSquared = new_instancemethod(_Box2D2.b2Vec2_LengthSquared,None,b2Vec2)
b2Vec2.Normalize = new_instancemethod(_Box2D2.b2Vec2_Normalize,None,b2Vec2)
b2Vec2.IsValid = new_instancemethod(_Box2D2.b2Vec2_IsValid,None,b2Vec2)
b2Vec2_swigregister = _Box2D2.b2Vec2_swigregister
b2Vec2_swigregister(b2Vec2)

class b2Mat22:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Mat22, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Mat22, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2Mat22_swiginit(self,apply(_Box2D2.new_b2Mat22, args))
    __swig_setmethods__["col1"] = _Box2D2.b2Mat22_col1_set
    __swig_getmethods__["col1"] = _Box2D2.b2Mat22_col1_get
    __swig_setmethods__["col2"] = _Box2D2.b2Mat22_col2_set
    __swig_getmethods__["col2"] = _Box2D2.b2Mat22_col2_get
    __swig_destroy__ = _Box2D2.delete_b2Mat22
b2Mat22.Set = new_instancemethod(_Box2D2.b2Mat22_Set,None,b2Mat22)
b2Mat22.SetIdentity = new_instancemethod(_Box2D2.b2Mat22_SetIdentity,None,b2Mat22)
b2Mat22.SetZero = new_instancemethod(_Box2D2.b2Mat22_SetZero,None,b2Mat22)
b2Mat22.GetAngle = new_instancemethod(_Box2D2.b2Mat22_GetAngle,None,b2Mat22)
b2Mat22.Invert = new_instancemethod(_Box2D2.b2Mat22_Invert,None,b2Mat22)
b2Mat22.Solve = new_instancemethod(_Box2D2.b2Mat22_Solve,None,b2Mat22)
b2Mat22_swigregister = _Box2D2.b2Mat22_swigregister
b2Mat22_swigregister(b2Mat22)

class b2XForm:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2XForm, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2XForm, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2XForm_swiginit(self,apply(_Box2D2.new_b2XForm, args))
    __swig_setmethods__["position"] = _Box2D2.b2XForm_position_set
    __swig_getmethods__["position"] = _Box2D2.b2XForm_position_get
    __swig_setmethods__["R"] = _Box2D2.b2XForm_R_set
    __swig_getmethods__["R"] = _Box2D2.b2XForm_R_get
    __swig_destroy__ = _Box2D2.delete_b2XForm
b2XForm.SetIdentity = new_instancemethod(_Box2D2.b2XForm_SetIdentity,None,b2XForm)
b2XForm_swigregister = _Box2D2.b2XForm_swigregister
b2XForm_swigregister(b2XForm)

class b2Sweep:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Sweep, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Sweep, name)
    __repr__ = _swig_repr
    __swig_setmethods__["localCenter"] = _Box2D2.b2Sweep_localCenter_set
    __swig_getmethods__["localCenter"] = _Box2D2.b2Sweep_localCenter_get
    __swig_setmethods__["c0"] = _Box2D2.b2Sweep_c0_set
    __swig_getmethods__["c0"] = _Box2D2.b2Sweep_c0_get
    __swig_setmethods__["c"] = _Box2D2.b2Sweep_c_set
    __swig_getmethods__["c"] = _Box2D2.b2Sweep_c_get
    __swig_setmethods__["a0"] = _Box2D2.b2Sweep_a0_set
    __swig_getmethods__["a0"] = _Box2D2.b2Sweep_a0_get
    __swig_setmethods__["a"] = _Box2D2.b2Sweep_a_set
    __swig_getmethods__["a"] = _Box2D2.b2Sweep_a_get
    __swig_setmethods__["t0"] = _Box2D2.b2Sweep_t0_set
    __swig_getmethods__["t0"] = _Box2D2.b2Sweep_t0_get
    def __init__(self, *args): 
        _Box2D2.b2Sweep_swiginit(self,apply(_Box2D2.new_b2Sweep, args))
    __swig_destroy__ = _Box2D2.delete_b2Sweep
b2Sweep.GetXForm = new_instancemethod(_Box2D2.b2Sweep_GetXForm,None,b2Sweep)
b2Sweep.Advance = new_instancemethod(_Box2D2.b2Sweep_Advance,None,b2Sweep)
b2Sweep_swigregister = _Box2D2.b2Sweep_swigregister
b2Sweep_swigregister(b2Sweep)

b2Dot = _Box2D2.b2Dot
b2_VaddV = _Box2D2.b2_VaddV
b2_VsubV = _Box2D2.b2_VsubV
b2_VmulF = _Box2D2.b2_VmulF
b2_VequV = _Box2D2.b2_VequV
b2DistanceSquared = _Box2D2.b2DistanceSquared
b2_MaddM = _Box2D2.b2_MaddM
b2Min = _Box2D2.b2Min
b2Max = _Box2D2.b2Max
b2Clamp = _Box2D2.b2Clamp
RAND_LIMIT = _Box2D2.RAND_LIMIT
b2NextPowerOfTwo = _Box2D2.b2NextPowerOfTwo
b2IsPowerOfTwo = _Box2D2.b2IsPowerOfTwo
class b2ContactID:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactID, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactID, name)
    __repr__ = _swig_repr
    __swig_setmethods__["key"] = _Box2D2.b2ContactID_key_set
    __swig_getmethods__["key"] = _Box2D2.b2ContactID_key_get
    __swig_getmethods__["features"] = _Box2D2.b2ContactID_features_get
    def __init__(self, *args): 
        _Box2D2.b2ContactID_swiginit(self,apply(_Box2D2.new_b2ContactID, args))
    __swig_destroy__ = _Box2D2.delete_b2ContactID
b2ContactID_swigregister = _Box2D2.b2ContactID_swigregister
b2ContactID_swigregister(b2ContactID)
b2Vec2_zero = cvar.b2Vec2_zero
b2Mat22_identity = cvar.b2Mat22_identity
b2XForm_identity = cvar.b2XForm_identity
b2Cross = _Box2D2.b2Cross
b2Mul = _Box2D2.b2Mul
b2MulT = _Box2D2.b2MulT
b2Abs = _Box2D2.b2Abs
b2Random = _Box2D2.b2Random
b2_nullFeature = cvar.b2_nullFeature
b2_newPoint = cvar.b2_newPoint
b2_oldPoint = cvar.b2_oldPoint

class b2ContactID_features:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactID_features, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactID_features, name)
    __repr__ = _swig_repr
    __swig_setmethods__["referenceEdge"] = _Box2D2.b2ContactID_features_referenceEdge_set
    __swig_getmethods__["referenceEdge"] = _Box2D2.b2ContactID_features_referenceEdge_get
    __swig_setmethods__["incidentEdge"] = _Box2D2.b2ContactID_features_incidentEdge_set
    __swig_getmethods__["incidentEdge"] = _Box2D2.b2ContactID_features_incidentEdge_get
    __swig_setmethods__["incidentVertex"] = _Box2D2.b2ContactID_features_incidentVertex_set
    __swig_getmethods__["incidentVertex"] = _Box2D2.b2ContactID_features_incidentVertex_get
    __swig_setmethods__["flip"] = _Box2D2.b2ContactID_features_flip_set
    __swig_getmethods__["flip"] = _Box2D2.b2ContactID_features_flip_get
    def __init__(self, *args): 
        _Box2D2.b2ContactID_features_swiginit(self,apply(_Box2D2.new_b2ContactID_features, args))
    __swig_destroy__ = _Box2D2.delete_b2ContactID_features
b2ContactID_features_swigregister = _Box2D2.b2ContactID_features_swigregister
b2ContactID_features_swigregister(b2ContactID_features)

class b2ManifoldPoint:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ManifoldPoint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ManifoldPoint, name)
    __repr__ = _swig_repr
    __swig_setmethods__["localPoint1"] = _Box2D2.b2ManifoldPoint_localPoint1_set
    __swig_getmethods__["localPoint1"] = _Box2D2.b2ManifoldPoint_localPoint1_get
    __swig_setmethods__["localPoint2"] = _Box2D2.b2ManifoldPoint_localPoint2_set
    __swig_getmethods__["localPoint2"] = _Box2D2.b2ManifoldPoint_localPoint2_get
    __swig_setmethods__["separation"] = _Box2D2.b2ManifoldPoint_separation_set
    __swig_getmethods__["separation"] = _Box2D2.b2ManifoldPoint_separation_get
    __swig_setmethods__["normalForce"] = _Box2D2.b2ManifoldPoint_normalForce_set
    __swig_getmethods__["normalForce"] = _Box2D2.b2ManifoldPoint_normalForce_get
    __swig_setmethods__["tangentForce"] = _Box2D2.b2ManifoldPoint_tangentForce_set
    __swig_getmethods__["tangentForce"] = _Box2D2.b2ManifoldPoint_tangentForce_get
    __swig_setmethods__["id"] = _Box2D2.b2ManifoldPoint_id_set
    __swig_getmethods__["id"] = _Box2D2.b2ManifoldPoint_id_get
    def __init__(self, *args): 
        _Box2D2.b2ManifoldPoint_swiginit(self,apply(_Box2D2.new_b2ManifoldPoint, args))
    __swig_destroy__ = _Box2D2.delete_b2ManifoldPoint
b2ManifoldPoint_swigregister = _Box2D2.b2ManifoldPoint_swigregister
b2ManifoldPoint_swigregister(b2ManifoldPoint)

class b2Manifold:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Manifold, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Manifold, name)
    __repr__ = _swig_repr
    __swig_setmethods__["points"] = _Box2D2.b2Manifold_points_set
    __swig_getmethods__["points"] = _Box2D2.b2Manifold_points_get
    __swig_setmethods__["normal"] = _Box2D2.b2Manifold_normal_set
    __swig_getmethods__["normal"] = _Box2D2.b2Manifold_normal_get
    __swig_setmethods__["pointCount"] = _Box2D2.b2Manifold_pointCount_set
    __swig_getmethods__["pointCount"] = _Box2D2.b2Manifold_pointCount_get
    def __init__(self, *args): 
        _Box2D2.b2Manifold_swiginit(self,apply(_Box2D2.new_b2Manifold, args))
    __swig_destroy__ = _Box2D2.delete_b2Manifold
b2Manifold_swigregister = _Box2D2.b2Manifold_swigregister
b2Manifold_swigregister(b2Manifold)

class b2Segment:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Segment, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Segment, name)
    __repr__ = _swig_repr
    __swig_setmethods__["p1"] = _Box2D2.b2Segment_p1_set
    __swig_getmethods__["p1"] = _Box2D2.b2Segment_p1_get
    __swig_setmethods__["p2"] = _Box2D2.b2Segment_p2_set
    __swig_getmethods__["p2"] = _Box2D2.b2Segment_p2_get
    def __init__(self, *args): 
        _Box2D2.b2Segment_swiginit(self,apply(_Box2D2.new_b2Segment, args))
    __swig_destroy__ = _Box2D2.delete_b2Segment
b2Segment.TestSegment = new_instancemethod(_Box2D2.b2Segment_TestSegment,None,b2Segment)
b2Segment_swigregister = _Box2D2.b2Segment_swigregister
b2Segment_swigregister(b2Segment)

class b2AABB:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2AABB, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2AABB, name)
    __repr__ = _swig_repr
    __swig_setmethods__["lowerBound"] = _Box2D2.b2AABB_lowerBound_set
    __swig_getmethods__["lowerBound"] = _Box2D2.b2AABB_lowerBound_get
    __swig_setmethods__["upperBound"] = _Box2D2.b2AABB_upperBound_set
    __swig_getmethods__["upperBound"] = _Box2D2.b2AABB_upperBound_get
    def __init__(self, *args): 
        _Box2D2.b2AABB_swiginit(self,apply(_Box2D2.new_b2AABB, args))
    __swig_destroy__ = _Box2D2.delete_b2AABB
b2AABB.IsValid = new_instancemethod(_Box2D2.b2AABB_IsValid,None,b2AABB)
b2AABB_swigregister = _Box2D2.b2AABB_swigregister
b2AABB_swigregister(b2AABB)

class b2OBB:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2OBB, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2OBB, name)
    __repr__ = _swig_repr
    __swig_setmethods__["R"] = _Box2D2.b2OBB_R_set
    __swig_getmethods__["R"] = _Box2D2.b2OBB_R_get
    __swig_setmethods__["center"] = _Box2D2.b2OBB_center_set
    __swig_getmethods__["center"] = _Box2D2.b2OBB_center_get
    __swig_setmethods__["extents"] = _Box2D2.b2OBB_extents_set
    __swig_getmethods__["extents"] = _Box2D2.b2OBB_extents_get
    def __init__(self, *args): 
        _Box2D2.b2OBB_swiginit(self,apply(_Box2D2.new_b2OBB, args))
    __swig_destroy__ = _Box2D2.delete_b2OBB
b2OBB_swigregister = _Box2D2.b2OBB_swigregister
b2OBB_swigregister(b2OBB)

b2CollideCircles = _Box2D2.b2CollideCircles
b2CollidePolygonAndCircle = _Box2D2.b2CollidePolygonAndCircle
b2CollidePolygons = _Box2D2.b2CollidePolygons
b2TimeOfImpact = _Box2D2.b2TimeOfImpact
b2TestOverlap = _Box2D2.b2TestOverlap
class b2MassData:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2MassData, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2MassData, name)
    __repr__ = _swig_repr
    __swig_setmethods__["mass"] = _Box2D2.b2MassData_mass_set
    __swig_getmethods__["mass"] = _Box2D2.b2MassData_mass_get
    __swig_setmethods__["center"] = _Box2D2.b2MassData_center_set
    __swig_getmethods__["center"] = _Box2D2.b2MassData_center_get
    __swig_setmethods__["I"] = _Box2D2.b2MassData_I_set
    __swig_getmethods__["I"] = _Box2D2.b2MassData_I_get
    def __init__(self, *args): 
        _Box2D2.b2MassData_swiginit(self,apply(_Box2D2.new_b2MassData, args))
    __swig_destroy__ = _Box2D2.delete_b2MassData
b2MassData_swigregister = _Box2D2.b2MassData_swigregister
b2MassData_swigregister(b2MassData)
b2Distance = _Box2D2.b2Distance

e_unknownShape = _Box2D2.e_unknownShape
e_circleShape = _Box2D2.e_circleShape
e_polygonShape = _Box2D2.e_polygonShape
e_shapeTypeCount = _Box2D2.e_shapeTypeCount
class b2ShapeDef:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ShapeDef, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ShapeDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2ShapeDef_swiginit(self,apply(_Box2D2.new_b2ShapeDef, args))
    __swig_destroy__ = _Box2D2.delete_b2ShapeDef
    __swig_setmethods__["type"] = _Box2D2.b2ShapeDef_type_set
    __swig_getmethods__["type"] = _Box2D2.b2ShapeDef_type_get
    __swig_setmethods__["userData"] = _Box2D2.b2ShapeDef_userData_set
    __swig_getmethods__["userData"] = _Box2D2.b2ShapeDef_userData_get
    __swig_setmethods__["friction"] = _Box2D2.b2ShapeDef_friction_set
    __swig_getmethods__["friction"] = _Box2D2.b2ShapeDef_friction_get
    __swig_setmethods__["restitution"] = _Box2D2.b2ShapeDef_restitution_set
    __swig_getmethods__["restitution"] = _Box2D2.b2ShapeDef_restitution_get
    __swig_setmethods__["density"] = _Box2D2.b2ShapeDef_density_set
    __swig_getmethods__["density"] = _Box2D2.b2ShapeDef_density_get
    __swig_setmethods__["categoryBits"] = _Box2D2.b2ShapeDef_categoryBits_set
    __swig_getmethods__["categoryBits"] = _Box2D2.b2ShapeDef_categoryBits_get
    __swig_setmethods__["maskBits"] = _Box2D2.b2ShapeDef_maskBits_set
    __swig_getmethods__["maskBits"] = _Box2D2.b2ShapeDef_maskBits_get
    __swig_setmethods__["groupIndex"] = _Box2D2.b2ShapeDef_groupIndex_set
    __swig_getmethods__["groupIndex"] = _Box2D2.b2ShapeDef_groupIndex_get
    __swig_setmethods__["isSensor"] = _Box2D2.b2ShapeDef_isSensor_set
    __swig_getmethods__["isSensor"] = _Box2D2.b2ShapeDef_isSensor_get
b2ShapeDef_swigregister = _Box2D2.b2ShapeDef_swigregister
b2ShapeDef_swigregister(b2ShapeDef)

class b2Shape:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Shape, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Shape, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_getmethods__["Create"] = lambda x: _Box2D2.b2Shape_Create
    __swig_getmethods__["Destroy"] = lambda x: _Box2D2.b2Shape_Destroy
    __swig_destroy__ = _Box2D2.delete_b2Shape
    __swig_setmethods__["m_type"] = _Box2D2.b2Shape_m_type_set
    __swig_getmethods__["m_type"] = _Box2D2.b2Shape_m_type_get
    __swig_setmethods__["m_next"] = _Box2D2.b2Shape_m_next_set
    __swig_getmethods__["m_next"] = _Box2D2.b2Shape_m_next_get
    __swig_setmethods__["m_body"] = _Box2D2.b2Shape_m_body_set
    __swig_getmethods__["m_body"] = _Box2D2.b2Shape_m_body_get
    __swig_setmethods__["m_sweepRadius"] = _Box2D2.b2Shape_m_sweepRadius_set
    __swig_getmethods__["m_sweepRadius"] = _Box2D2.b2Shape_m_sweepRadius_get
    __swig_setmethods__["m_density"] = _Box2D2.b2Shape_m_density_set
    __swig_getmethods__["m_density"] = _Box2D2.b2Shape_m_density_get
    __swig_setmethods__["m_friction"] = _Box2D2.b2Shape_m_friction_set
    __swig_getmethods__["m_friction"] = _Box2D2.b2Shape_m_friction_get
    __swig_setmethods__["m_restitution"] = _Box2D2.b2Shape_m_restitution_set
    __swig_getmethods__["m_restitution"] = _Box2D2.b2Shape_m_restitution_get
    __swig_setmethods__["m_proxyId"] = _Box2D2.b2Shape_m_proxyId_set
    __swig_getmethods__["m_proxyId"] = _Box2D2.b2Shape_m_proxyId_get
    __swig_setmethods__["m_categoryBits"] = _Box2D2.b2Shape_m_categoryBits_set
    __swig_getmethods__["m_categoryBits"] = _Box2D2.b2Shape_m_categoryBits_get
    __swig_setmethods__["m_maskBits"] = _Box2D2.b2Shape_m_maskBits_set
    __swig_getmethods__["m_maskBits"] = _Box2D2.b2Shape_m_maskBits_get
    __swig_setmethods__["m_groupIndex"] = _Box2D2.b2Shape_m_groupIndex_set
    __swig_getmethods__["m_groupIndex"] = _Box2D2.b2Shape_m_groupIndex_get
    __swig_setmethods__["m_isSensor"] = _Box2D2.b2Shape_m_isSensor_set
    __swig_getmethods__["m_isSensor"] = _Box2D2.b2Shape_m_isSensor_get
    __swig_setmethods__["m_userData"] = _Box2D2.b2Shape_m_userData_set
    __swig_getmethods__["m_userData"] = _Box2D2.b2Shape_m_userData_get
b2Shape.GetType = new_instancemethod(_Box2D2.b2Shape_GetType,None,b2Shape)
b2Shape.IsSensor = new_instancemethod(_Box2D2.b2Shape_IsSensor,None,b2Shape)
b2Shape.GetBody = new_instancemethod(_Box2D2.b2Shape_GetBody,None,b2Shape)
b2Shape.GetNext = new_instancemethod(_Box2D2.b2Shape_GetNext,None,b2Shape)
b2Shape.GetUserData = new_instancemethod(_Box2D2.b2Shape_GetUserData,None,b2Shape)
b2Shape.TestPoint = new_instancemethod(_Box2D2.b2Shape_TestPoint,None,b2Shape)
b2Shape.TestSegment = new_instancemethod(_Box2D2.b2Shape_TestSegment,None,b2Shape)
b2Shape.ComputeAABB = new_instancemethod(_Box2D2.b2Shape_ComputeAABB,None,b2Shape)
b2Shape.ComputeSweptAABB = new_instancemethod(_Box2D2.b2Shape_ComputeSweptAABB,None,b2Shape)
b2Shape.ComputeMass = new_instancemethod(_Box2D2.b2Shape_ComputeMass,None,b2Shape)
b2Shape.CreateProxy = new_instancemethod(_Box2D2.b2Shape_CreateProxy,None,b2Shape)
b2Shape.DestroyProxy = new_instancemethod(_Box2D2.b2Shape_DestroyProxy,None,b2Shape)
b2Shape.Synchronize = new_instancemethod(_Box2D2.b2Shape_Synchronize,None,b2Shape)
b2Shape.ResetProxy = new_instancemethod(_Box2D2.b2Shape_ResetProxy,None,b2Shape)
b2Shape.UpdateSweepRadius = new_instancemethod(_Box2D2.b2Shape_UpdateSweepRadius,None,b2Shape)
b2Shape.GetSweepRadius = new_instancemethod(_Box2D2.b2Shape_GetSweepRadius,None,b2Shape)
b2Shape.asCircle = new_instancemethod(_Box2D2.b2Shape_asCircle,None,b2Shape)
b2Shape.asPolygon = new_instancemethod(_Box2D2.b2Shape_asPolygon,None,b2Shape)
b2Shape_swigregister = _Box2D2.b2Shape_swigregister
b2Shape_swigregister(b2Shape)
b2Shape_Create = _Box2D2.b2Shape_Create
b2Shape_Destroy = _Box2D2.b2Shape_Destroy

class b2CircleDef(b2ShapeDef):
    __swig_setmethods__ = {}
    for _s in [b2ShapeDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2CircleDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2ShapeDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2CircleDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2CircleDef_swiginit(self,apply(_Box2D2.new_b2CircleDef, args))
    __swig_setmethods__["localPosition"] = _Box2D2.b2CircleDef_localPosition_set
    __swig_getmethods__["localPosition"] = _Box2D2.b2CircleDef_localPosition_get
    __swig_setmethods__["radius"] = _Box2D2.b2CircleDef_radius_set
    __swig_getmethods__["radius"] = _Box2D2.b2CircleDef_radius_get
    __swig_destroy__ = _Box2D2.delete_b2CircleDef
b2CircleDef_swigregister = _Box2D2.b2CircleDef_swigregister
b2CircleDef_swigregister(b2CircleDef)

class b2CircleShape(b2Shape):
    __swig_setmethods__ = {}
    for _s in [b2Shape]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2CircleShape, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Shape]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2CircleShape, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2CircleShape_swiginit(self,apply(_Box2D2.new_b2CircleShape, args))
    __swig_setmethods__["m_localPosition"] = _Box2D2.b2CircleShape_m_localPosition_set
    __swig_getmethods__["m_localPosition"] = _Box2D2.b2CircleShape_m_localPosition_get
    __swig_setmethods__["m_radius"] = _Box2D2.b2CircleShape_m_radius_set
    __swig_getmethods__["m_radius"] = _Box2D2.b2CircleShape_m_radius_get
    __swig_destroy__ = _Box2D2.delete_b2CircleShape
b2CircleShape.GetLocalPosition = new_instancemethod(_Box2D2.b2CircleShape_GetLocalPosition,None,b2CircleShape)
b2CircleShape.GetRadius = new_instancemethod(_Box2D2.b2CircleShape_GetRadius,None,b2CircleShape)
b2CircleShape_swigregister = _Box2D2.b2CircleShape_swigregister
b2CircleShape_swigregister(b2CircleShape)

class b2PolygonDef(b2ShapeDef):
    __swig_setmethods__ = {}
    for _s in [b2ShapeDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PolygonDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2ShapeDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PolygonDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PolygonDef_swiginit(self,apply(_Box2D2.new_b2PolygonDef, args))
    __swig_setmethods__["vertices"] = _Box2D2.b2PolygonDef_vertices_set
    __swig_getmethods__["vertices"] = _Box2D2.b2PolygonDef_vertices_get
    __swig_setmethods__["vertexCount"] = _Box2D2.b2PolygonDef_vertexCount_set
    __swig_getmethods__["vertexCount"] = _Box2D2.b2PolygonDef_vertexCount_get
    __swig_destroy__ = _Box2D2.delete_b2PolygonDef
b2PolygonDef.SetAsBox = new_instancemethod(_Box2D2.b2PolygonDef_SetAsBox,None,b2PolygonDef)
b2PolygonDef.getVertex = new_instancemethod(_Box2D2.b2PolygonDef_getVertex,None,b2PolygonDef)
b2PolygonDef.setVertex = new_instancemethod(_Box2D2.b2PolygonDef_setVertex,None,b2PolygonDef)
b2PolygonDef_swigregister = _Box2D2.b2PolygonDef_swigregister
b2PolygonDef_swigregister(b2PolygonDef)

class b2PolygonShape(b2Shape):
    __swig_setmethods__ = {}
    for _s in [b2Shape]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PolygonShape, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Shape]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PolygonShape, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PolygonShape_swiginit(self,apply(_Box2D2.new_b2PolygonShape, args))
    __swig_setmethods__["m_centroid"] = _Box2D2.b2PolygonShape_m_centroid_set
    __swig_getmethods__["m_centroid"] = _Box2D2.b2PolygonShape_m_centroid_get
    __swig_setmethods__["m_obb"] = _Box2D2.b2PolygonShape_m_obb_set
    __swig_getmethods__["m_obb"] = _Box2D2.b2PolygonShape_m_obb_get
    __swig_setmethods__["m_vertices"] = _Box2D2.b2PolygonShape_m_vertices_set
    __swig_getmethods__["m_vertices"] = _Box2D2.b2PolygonShape_m_vertices_get
    __swig_setmethods__["m_normals"] = _Box2D2.b2PolygonShape_m_normals_set
    __swig_getmethods__["m_normals"] = _Box2D2.b2PolygonShape_m_normals_get
    __swig_setmethods__["m_coreVertices"] = _Box2D2.b2PolygonShape_m_coreVertices_set
    __swig_getmethods__["m_coreVertices"] = _Box2D2.b2PolygonShape_m_coreVertices_get
    __swig_setmethods__["m_vertexCount"] = _Box2D2.b2PolygonShape_m_vertexCount_set
    __swig_getmethods__["m_vertexCount"] = _Box2D2.b2PolygonShape_m_vertexCount_get
    __swig_destroy__ = _Box2D2.delete_b2PolygonShape
b2PolygonShape.GetOBB = new_instancemethod(_Box2D2.b2PolygonShape_GetOBB,None,b2PolygonShape)
b2PolygonShape.GetCentroid = new_instancemethod(_Box2D2.b2PolygonShape_GetCentroid,None,b2PolygonShape)
b2PolygonShape.GetVertexCount = new_instancemethod(_Box2D2.b2PolygonShape_GetVertexCount,None,b2PolygonShape)
b2PolygonShape.GetVertices = new_instancemethod(_Box2D2.b2PolygonShape_GetVertices,None,b2PolygonShape)
b2PolygonShape.GetCoreVertices = new_instancemethod(_Box2D2.b2PolygonShape_GetCoreVertices,None,b2PolygonShape)
b2PolygonShape.GetFirstVertex = new_instancemethod(_Box2D2.b2PolygonShape_GetFirstVertex,None,b2PolygonShape)
b2PolygonShape.Centroid = new_instancemethod(_Box2D2.b2PolygonShape_Centroid,None,b2PolygonShape)
b2PolygonShape.Support = new_instancemethod(_Box2D2.b2PolygonShape_Support,None,b2PolygonShape)
b2PolygonShape.getVertex = new_instancemethod(_Box2D2.b2PolygonShape_getVertex,None,b2PolygonShape)
b2PolygonShape_swigregister = _Box2D2.b2PolygonShape_swigregister
b2PolygonShape_swigregister(b2PolygonShape)

class b2Pair:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Pair, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Pair, name)
    __repr__ = _swig_repr
    e_pairBuffered = _Box2D2.b2Pair_e_pairBuffered
    e_pairRemoved = _Box2D2.b2Pair_e_pairRemoved
    e_pairFinal = _Box2D2.b2Pair_e_pairFinal
    __swig_setmethods__["userData"] = _Box2D2.b2Pair_userData_set
    __swig_getmethods__["userData"] = _Box2D2.b2Pair_userData_get
    __swig_setmethods__["proxyId1"] = _Box2D2.b2Pair_proxyId1_set
    __swig_getmethods__["proxyId1"] = _Box2D2.b2Pair_proxyId1_get
    __swig_setmethods__["proxyId2"] = _Box2D2.b2Pair_proxyId2_set
    __swig_getmethods__["proxyId2"] = _Box2D2.b2Pair_proxyId2_get
    __swig_setmethods__["next"] = _Box2D2.b2Pair_next_set
    __swig_getmethods__["next"] = _Box2D2.b2Pair_next_get
    __swig_setmethods__["status"] = _Box2D2.b2Pair_status_set
    __swig_getmethods__["status"] = _Box2D2.b2Pair_status_get
    def __init__(self, *args): 
        _Box2D2.b2Pair_swiginit(self,apply(_Box2D2.new_b2Pair, args))
    __swig_destroy__ = _Box2D2.delete_b2Pair
b2Pair.SetBuffered = new_instancemethod(_Box2D2.b2Pair_SetBuffered,None,b2Pair)
b2Pair.ClearBuffered = new_instancemethod(_Box2D2.b2Pair_ClearBuffered,None,b2Pair)
b2Pair.IsBuffered = new_instancemethod(_Box2D2.b2Pair_IsBuffered,None,b2Pair)
b2Pair.SetRemoved = new_instancemethod(_Box2D2.b2Pair_SetRemoved,None,b2Pair)
b2Pair.ClearRemoved = new_instancemethod(_Box2D2.b2Pair_ClearRemoved,None,b2Pair)
b2Pair.IsRemoved = new_instancemethod(_Box2D2.b2Pair_IsRemoved,None,b2Pair)
b2Pair.SetFinal = new_instancemethod(_Box2D2.b2Pair_SetFinal,None,b2Pair)
b2Pair.IsFinal = new_instancemethod(_Box2D2.b2Pair_IsFinal,None,b2Pair)
b2Pair_swigregister = _Box2D2.b2Pair_swigregister
b2Pair_swigregister(b2Pair)
b2_nullPair = cvar.b2_nullPair
b2_nullProxy = cvar.b2_nullProxy
b2_tableCapacity = cvar.b2_tableCapacity
b2_tableMask = cvar.b2_tableMask

class b2BufferedPair:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2BufferedPair, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2BufferedPair, name)
    __repr__ = _swig_repr
    __swig_setmethods__["proxyId1"] = _Box2D2.b2BufferedPair_proxyId1_set
    __swig_getmethods__["proxyId1"] = _Box2D2.b2BufferedPair_proxyId1_get
    __swig_setmethods__["proxyId2"] = _Box2D2.b2BufferedPair_proxyId2_set
    __swig_getmethods__["proxyId2"] = _Box2D2.b2BufferedPair_proxyId2_get
    def __init__(self, *args): 
        _Box2D2.b2BufferedPair_swiginit(self,apply(_Box2D2.new_b2BufferedPair, args))
    __swig_destroy__ = _Box2D2.delete_b2BufferedPair
b2BufferedPair_swigregister = _Box2D2.b2BufferedPair_swigregister
b2BufferedPair_swigregister(b2BufferedPair)

class b2PairCallback:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PairCallback, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2PairCallback, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2PairCallback
b2PairCallback.PairAdded = new_instancemethod(_Box2D2.b2PairCallback_PairAdded,None,b2PairCallback)
b2PairCallback.PairRemoved = new_instancemethod(_Box2D2.b2PairCallback_PairRemoved,None,b2PairCallback)
b2PairCallback_swigregister = _Box2D2.b2PairCallback_swigregister
b2PairCallback_swigregister(b2PairCallback)

class b2PairManager:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PairManager, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2PairManager, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PairManager_swiginit(self,apply(_Box2D2.new_b2PairManager, args))
    __swig_setmethods__["m_broadPhase"] = _Box2D2.b2PairManager_m_broadPhase_set
    __swig_getmethods__["m_broadPhase"] = _Box2D2.b2PairManager_m_broadPhase_get
    __swig_setmethods__["m_callback"] = _Box2D2.b2PairManager_m_callback_set
    __swig_getmethods__["m_callback"] = _Box2D2.b2PairManager_m_callback_get
    __swig_setmethods__["m_pairs"] = _Box2D2.b2PairManager_m_pairs_set
    __swig_getmethods__["m_pairs"] = _Box2D2.b2PairManager_m_pairs_get
    __swig_setmethods__["m_freePair"] = _Box2D2.b2PairManager_m_freePair_set
    __swig_getmethods__["m_freePair"] = _Box2D2.b2PairManager_m_freePair_get
    __swig_setmethods__["m_pairCount"] = _Box2D2.b2PairManager_m_pairCount_set
    __swig_getmethods__["m_pairCount"] = _Box2D2.b2PairManager_m_pairCount_get
    __swig_setmethods__["m_pairBuffer"] = _Box2D2.b2PairManager_m_pairBuffer_set
    __swig_getmethods__["m_pairBuffer"] = _Box2D2.b2PairManager_m_pairBuffer_get
    __swig_setmethods__["m_pairBufferCount"] = _Box2D2.b2PairManager_m_pairBufferCount_set
    __swig_getmethods__["m_pairBufferCount"] = _Box2D2.b2PairManager_m_pairBufferCount_get
    __swig_setmethods__["m_hashTable"] = _Box2D2.b2PairManager_m_hashTable_set
    __swig_getmethods__["m_hashTable"] = _Box2D2.b2PairManager_m_hashTable_get
    __swig_destroy__ = _Box2D2.delete_b2PairManager
b2PairManager.Initialize = new_instancemethod(_Box2D2.b2PairManager_Initialize,None,b2PairManager)
b2PairManager.AddBufferedPair = new_instancemethod(_Box2D2.b2PairManager_AddBufferedPair,None,b2PairManager)
b2PairManager.RemoveBufferedPair = new_instancemethod(_Box2D2.b2PairManager_RemoveBufferedPair,None,b2PairManager)
b2PairManager.Commit = new_instancemethod(_Box2D2.b2PairManager_Commit,None,b2PairManager)
b2PairManager_swigregister = _Box2D2.b2PairManager_swigregister
b2PairManager_swigregister(b2PairManager)

class b2Bound:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Bound, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Bound, name)
    __repr__ = _swig_repr
    __swig_setmethods__["value"] = _Box2D2.b2Bound_value_set
    __swig_getmethods__["value"] = _Box2D2.b2Bound_value_get
    __swig_setmethods__["proxyId"] = _Box2D2.b2Bound_proxyId_set
    __swig_getmethods__["proxyId"] = _Box2D2.b2Bound_proxyId_get
    __swig_setmethods__["stabbingCount"] = _Box2D2.b2Bound_stabbingCount_set
    __swig_getmethods__["stabbingCount"] = _Box2D2.b2Bound_stabbingCount_get
    def __init__(self, *args): 
        _Box2D2.b2Bound_swiginit(self,apply(_Box2D2.new_b2Bound, args))
    __swig_destroy__ = _Box2D2.delete_b2Bound
b2Bound.IsLower = new_instancemethod(_Box2D2.b2Bound_IsLower,None,b2Bound)
b2Bound.IsUpper = new_instancemethod(_Box2D2.b2Bound_IsUpper,None,b2Bound)
b2Bound_swigregister = _Box2D2.b2Bound_swigregister
b2Bound_swigregister(b2Bound)
b2_invalid = cvar.b2_invalid
b2_nullEdge = cvar.b2_nullEdge

class b2Proxy:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Proxy, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Proxy, name)
    __repr__ = _swig_repr
    __swig_setmethods__["lowerBounds"] = _Box2D2.b2Proxy_lowerBounds_set
    __swig_getmethods__["lowerBounds"] = _Box2D2.b2Proxy_lowerBounds_get
    __swig_setmethods__["upperBounds"] = _Box2D2.b2Proxy_upperBounds_set
    __swig_getmethods__["upperBounds"] = _Box2D2.b2Proxy_upperBounds_get
    __swig_setmethods__["overlapCount"] = _Box2D2.b2Proxy_overlapCount_set
    __swig_getmethods__["overlapCount"] = _Box2D2.b2Proxy_overlapCount_get
    __swig_setmethods__["timeStamp"] = _Box2D2.b2Proxy_timeStamp_set
    __swig_getmethods__["timeStamp"] = _Box2D2.b2Proxy_timeStamp_get
    __swig_setmethods__["userData"] = _Box2D2.b2Proxy_userData_set
    __swig_getmethods__["userData"] = _Box2D2.b2Proxy_userData_get
    def __init__(self, *args): 
        _Box2D2.b2Proxy_swiginit(self,apply(_Box2D2.new_b2Proxy, args))
    __swig_destroy__ = _Box2D2.delete_b2Proxy
b2Proxy.GetNext = new_instancemethod(_Box2D2.b2Proxy_GetNext,None,b2Proxy)
b2Proxy.SetNext = new_instancemethod(_Box2D2.b2Proxy_SetNext,None,b2Proxy)
b2Proxy.IsValid = new_instancemethod(_Box2D2.b2Proxy_IsValid,None,b2Proxy)
b2Proxy_swigregister = _Box2D2.b2Proxy_swigregister
b2Proxy_swigregister(b2Proxy)

class b2BroadPhase:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2BroadPhase, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2BroadPhase, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2BroadPhase_swiginit(self,apply(_Box2D2.new_b2BroadPhase, args))
    __swig_destroy__ = _Box2D2.delete_b2BroadPhase
    __swig_setmethods__["m_pairManager"] = _Box2D2.b2BroadPhase_m_pairManager_set
    __swig_getmethods__["m_pairManager"] = _Box2D2.b2BroadPhase_m_pairManager_get
    __swig_setmethods__["m_proxyPool"] = _Box2D2.b2BroadPhase_m_proxyPool_set
    __swig_getmethods__["m_proxyPool"] = _Box2D2.b2BroadPhase_m_proxyPool_get
    __swig_setmethods__["m_freeProxy"] = _Box2D2.b2BroadPhase_m_freeProxy_set
    __swig_getmethods__["m_freeProxy"] = _Box2D2.b2BroadPhase_m_freeProxy_get
    __swig_setmethods__["m_bounds"] = _Box2D2.b2BroadPhase_m_bounds_set
    __swig_getmethods__["m_bounds"] = _Box2D2.b2BroadPhase_m_bounds_get
    __swig_setmethods__["m_queryResults"] = _Box2D2.b2BroadPhase_m_queryResults_set
    __swig_getmethods__["m_queryResults"] = _Box2D2.b2BroadPhase_m_queryResults_get
    __swig_setmethods__["m_queryResultCount"] = _Box2D2.b2BroadPhase_m_queryResultCount_set
    __swig_getmethods__["m_queryResultCount"] = _Box2D2.b2BroadPhase_m_queryResultCount_get
    __swig_setmethods__["m_worldAABB"] = _Box2D2.b2BroadPhase_m_worldAABB_set
    __swig_getmethods__["m_worldAABB"] = _Box2D2.b2BroadPhase_m_worldAABB_get
    __swig_setmethods__["m_quantizationFactor"] = _Box2D2.b2BroadPhase_m_quantizationFactor_set
    __swig_getmethods__["m_quantizationFactor"] = _Box2D2.b2BroadPhase_m_quantizationFactor_get
    __swig_setmethods__["m_proxyCount"] = _Box2D2.b2BroadPhase_m_proxyCount_set
    __swig_getmethods__["m_proxyCount"] = _Box2D2.b2BroadPhase_m_proxyCount_get
    __swig_setmethods__["m_timeStamp"] = _Box2D2.b2BroadPhase_m_timeStamp_set
    __swig_getmethods__["m_timeStamp"] = _Box2D2.b2BroadPhase_m_timeStamp_get
    __swig_setmethods__["s_validate"] = _Box2D2.b2BroadPhase_s_validate_set
    __swig_getmethods__["s_validate"] = _Box2D2.b2BroadPhase_s_validate_get
b2BroadPhase.InRange = new_instancemethod(_Box2D2.b2BroadPhase_InRange,None,b2BroadPhase)
b2BroadPhase.CreateProxy = new_instancemethod(_Box2D2.b2BroadPhase_CreateProxy,None,b2BroadPhase)
b2BroadPhase.DestroyProxy = new_instancemethod(_Box2D2.b2BroadPhase_DestroyProxy,None,b2BroadPhase)
b2BroadPhase.MoveProxy = new_instancemethod(_Box2D2.b2BroadPhase_MoveProxy,None,b2BroadPhase)
b2BroadPhase.Commit = new_instancemethod(_Box2D2.b2BroadPhase_Commit,None,b2BroadPhase)
b2BroadPhase.GetProxy = new_instancemethod(_Box2D2.b2BroadPhase_GetProxy,None,b2BroadPhase)
b2BroadPhase.Query = new_instancemethod(_Box2D2.b2BroadPhase_Query,None,b2BroadPhase)
b2BroadPhase.Validate = new_instancemethod(_Box2D2.b2BroadPhase_Validate,None,b2BroadPhase)
b2BroadPhase.ValidatePairs = new_instancemethod(_Box2D2.b2BroadPhase_ValidatePairs,None,b2BroadPhase)
b2BroadPhase_swigregister = _Box2D2.b2BroadPhase_swigregister
b2BroadPhase_swigregister(b2BroadPhase)

class b2DestructionListener:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2DestructionListener, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2DestructionListener, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2DestructionListener
b2DestructionListener.SayGoodbye = new_instancemethod(_Box2D2.b2DestructionListener_SayGoodbye,None,b2DestructionListener)
b2DestructionListener_swigregister = _Box2D2.b2DestructionListener_swigregister
b2DestructionListener_swigregister(b2DestructionListener)

class b2BoundaryListener:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2BoundaryListener, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2BoundaryListener, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2BoundaryListener
b2BoundaryListener.Violation = new_instancemethod(_Box2D2.b2BoundaryListener_Violation,None,b2BoundaryListener)
b2BoundaryListener_swigregister = _Box2D2.b2BoundaryListener_swigregister
b2BoundaryListener_swigregister(b2BoundaryListener)

class b2ContactFilter:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactFilter, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactFilter, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2ContactFilter
    def __init__(self, *args): 
        _Box2D2.b2ContactFilter_swiginit(self,apply(_Box2D2.new_b2ContactFilter, args))
b2ContactFilter.ShouldCollide = new_instancemethod(_Box2D2.b2ContactFilter_ShouldCollide,None,b2ContactFilter)
b2ContactFilter_swigregister = _Box2D2.b2ContactFilter_swigregister
b2ContactFilter_swigregister(b2ContactFilter)

class b2ContactListener:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactListener, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactListener, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2ContactListener
b2ContactListener.Add = new_instancemethod(_Box2D2.b2ContactListener_Add,None,b2ContactListener)
b2ContactListener.Persist = new_instancemethod(_Box2D2.b2ContactListener_Persist,None,b2ContactListener)
b2ContactListener.Remove = new_instancemethod(_Box2D2.b2ContactListener_Remove,None,b2ContactListener)
b2ContactListener_swigregister = _Box2D2.b2ContactListener_swigregister
b2ContactListener_swigregister(b2ContactListener)

class b2Color:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Color, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Color, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2Color_swiginit(self,apply(_Box2D2.new_b2Color, args))
    __swig_setmethods__["r"] = _Box2D2.b2Color_r_set
    __swig_getmethods__["r"] = _Box2D2.b2Color_r_get
    __swig_setmethods__["g"] = _Box2D2.b2Color_g_set
    __swig_getmethods__["g"] = _Box2D2.b2Color_g_get
    __swig_setmethods__["b"] = _Box2D2.b2Color_b_set
    __swig_getmethods__["b"] = _Box2D2.b2Color_b_get
    __swig_destroy__ = _Box2D2.delete_b2Color
b2Color_swigregister = _Box2D2.b2Color_swigregister
b2Color_swigregister(b2Color)

class b2DebugDraw:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2DebugDraw, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2DebugDraw, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _Box2D2.delete_b2DebugDraw
    e_shapeBit = _Box2D2.b2DebugDraw_e_shapeBit
    e_jointBit = _Box2D2.b2DebugDraw_e_jointBit
    e_coreShapeBit = _Box2D2.b2DebugDraw_e_coreShapeBit
    e_aabbBit = _Box2D2.b2DebugDraw_e_aabbBit
    e_obbBit = _Box2D2.b2DebugDraw_e_obbBit
    e_pairBit = _Box2D2.b2DebugDraw_e_pairBit
    e_centerOfMassBit = _Box2D2.b2DebugDraw_e_centerOfMassBit
b2DebugDraw.SetFlags = new_instancemethod(_Box2D2.b2DebugDraw_SetFlags,None,b2DebugDraw)
b2DebugDraw.GetFlags = new_instancemethod(_Box2D2.b2DebugDraw_GetFlags,None,b2DebugDraw)
b2DebugDraw.AppendFlags = new_instancemethod(_Box2D2.b2DebugDraw_AppendFlags,None,b2DebugDraw)
b2DebugDraw.ClearFlags = new_instancemethod(_Box2D2.b2DebugDraw_ClearFlags,None,b2DebugDraw)
b2DebugDraw.DrawPolygon = new_instancemethod(_Box2D2.b2DebugDraw_DrawPolygon,None,b2DebugDraw)
b2DebugDraw.DrawSolidPolygon = new_instancemethod(_Box2D2.b2DebugDraw_DrawSolidPolygon,None,b2DebugDraw)
b2DebugDraw.DrawCircle = new_instancemethod(_Box2D2.b2DebugDraw_DrawCircle,None,b2DebugDraw)
b2DebugDraw.DrawSolidCircle = new_instancemethod(_Box2D2.b2DebugDraw_DrawSolidCircle,None,b2DebugDraw)
b2DebugDraw.DrawSegment = new_instancemethod(_Box2D2.b2DebugDraw_DrawSegment,None,b2DebugDraw)
b2DebugDraw.DrawXForm = new_instancemethod(_Box2D2.b2DebugDraw_DrawXForm,None,b2DebugDraw)
b2DebugDraw_swigregister = _Box2D2.b2DebugDraw_swigregister
b2DebugDraw_swigregister(b2DebugDraw)

class b2BlockAllocator:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2BlockAllocator, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2BlockAllocator, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2BlockAllocator_swiginit(self,apply(_Box2D2.new_b2BlockAllocator, args))
    __swig_destroy__ = _Box2D2.delete_b2BlockAllocator
b2BlockAllocator.Allocate = new_instancemethod(_Box2D2.b2BlockAllocator_Allocate,None,b2BlockAllocator)
b2BlockAllocator.Free = new_instancemethod(_Box2D2.b2BlockAllocator_Free,None,b2BlockAllocator)
b2BlockAllocator.Clear = new_instancemethod(_Box2D2.b2BlockAllocator_Clear,None,b2BlockAllocator)
b2BlockAllocator_swigregister = _Box2D2.b2BlockAllocator_swigregister
b2BlockAllocator_swigregister(b2BlockAllocator)
b2_chunkSize = cvar.b2_chunkSize
b2_maxBlockSize = cvar.b2_maxBlockSize
b2_blockSizes = cvar.b2_blockSizes
b2_chunkArrayIncrement = cvar.b2_chunkArrayIncrement

class b2StackEntry:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2StackEntry, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2StackEntry, name)
    __repr__ = _swig_repr
    __swig_setmethods__["data"] = _Box2D2.b2StackEntry_data_set
    __swig_getmethods__["data"] = _Box2D2.b2StackEntry_data_get
    __swig_setmethods__["size"] = _Box2D2.b2StackEntry_size_set
    __swig_getmethods__["size"] = _Box2D2.b2StackEntry_size_get
    __swig_setmethods__["usedMalloc"] = _Box2D2.b2StackEntry_usedMalloc_set
    __swig_getmethods__["usedMalloc"] = _Box2D2.b2StackEntry_usedMalloc_get
    def __init__(self, *args): 
        _Box2D2.b2StackEntry_swiginit(self,apply(_Box2D2.new_b2StackEntry, args))
    __swig_destroy__ = _Box2D2.delete_b2StackEntry
b2StackEntry_swigregister = _Box2D2.b2StackEntry_swigregister
b2StackEntry_swigregister(b2StackEntry)
b2_stackSize = cvar.b2_stackSize
b2_maxStackEntries = cvar.b2_maxStackEntries

class b2StackAllocator:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2StackAllocator, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2StackAllocator, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2StackAllocator_swiginit(self,apply(_Box2D2.new_b2StackAllocator, args))
    __swig_destroy__ = _Box2D2.delete_b2StackAllocator
b2StackAllocator.Allocate = new_instancemethod(_Box2D2.b2StackAllocator_Allocate,None,b2StackAllocator)
b2StackAllocator.Free = new_instancemethod(_Box2D2.b2StackAllocator_Free,None,b2StackAllocator)
b2StackAllocator.GetMaxAllocation = new_instancemethod(_Box2D2.b2StackAllocator_GetMaxAllocation,None,b2StackAllocator)
b2StackAllocator_swigregister = _Box2D2.b2StackAllocator_swigregister
b2StackAllocator_swigregister(b2StackAllocator)

class b2ContactRegister:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactRegister, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactRegister, name)
    __repr__ = _swig_repr
    __swig_setmethods__["createFcn"] = _Box2D2.b2ContactRegister_createFcn_set
    __swig_getmethods__["createFcn"] = _Box2D2.b2ContactRegister_createFcn_get
    __swig_setmethods__["destroyFcn"] = _Box2D2.b2ContactRegister_destroyFcn_set
    __swig_getmethods__["destroyFcn"] = _Box2D2.b2ContactRegister_destroyFcn_get
    __swig_setmethods__["primary"] = _Box2D2.b2ContactRegister_primary_set
    __swig_getmethods__["primary"] = _Box2D2.b2ContactRegister_primary_get
    def __init__(self, *args): 
        _Box2D2.b2ContactRegister_swiginit(self,apply(_Box2D2.new_b2ContactRegister, args))
    __swig_destroy__ = _Box2D2.delete_b2ContactRegister
b2ContactRegister_swigregister = _Box2D2.b2ContactRegister_swigregister
b2ContactRegister_swigregister(b2ContactRegister)

class b2ContactEdge:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactEdge, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactEdge, name)
    __repr__ = _swig_repr
    __swig_setmethods__["other"] = _Box2D2.b2ContactEdge_other_set
    __swig_getmethods__["other"] = _Box2D2.b2ContactEdge_other_get
    __swig_setmethods__["contact"] = _Box2D2.b2ContactEdge_contact_set
    __swig_getmethods__["contact"] = _Box2D2.b2ContactEdge_contact_get
    __swig_setmethods__["prev"] = _Box2D2.b2ContactEdge_prev_set
    __swig_getmethods__["prev"] = _Box2D2.b2ContactEdge_prev_get
    __swig_setmethods__["next"] = _Box2D2.b2ContactEdge_next_set
    __swig_getmethods__["next"] = _Box2D2.b2ContactEdge_next_get
    def __init__(self, *args): 
        _Box2D2.b2ContactEdge_swiginit(self,apply(_Box2D2.new_b2ContactEdge, args))
    __swig_destroy__ = _Box2D2.delete_b2ContactEdge
b2ContactEdge_swigregister = _Box2D2.b2ContactEdge_swigregister
b2ContactEdge_swigregister(b2ContactEdge)

class b2ContactPoint:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactPoint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactPoint, name)
    __repr__ = _swig_repr
    __swig_setmethods__["shape1"] = _Box2D2.b2ContactPoint_shape1_set
    __swig_getmethods__["shape1"] = _Box2D2.b2ContactPoint_shape1_get
    __swig_setmethods__["shape2"] = _Box2D2.b2ContactPoint_shape2_set
    __swig_getmethods__["shape2"] = _Box2D2.b2ContactPoint_shape2_get
    __swig_setmethods__["position"] = _Box2D2.b2ContactPoint_position_set
    __swig_getmethods__["position"] = _Box2D2.b2ContactPoint_position_get
    __swig_setmethods__["normal"] = _Box2D2.b2ContactPoint_normal_set
    __swig_getmethods__["normal"] = _Box2D2.b2ContactPoint_normal_get
    __swig_setmethods__["separation"] = _Box2D2.b2ContactPoint_separation_set
    __swig_getmethods__["separation"] = _Box2D2.b2ContactPoint_separation_get
    __swig_setmethods__["normalForce"] = _Box2D2.b2ContactPoint_normalForce_set
    __swig_getmethods__["normalForce"] = _Box2D2.b2ContactPoint_normalForce_get
    __swig_setmethods__["tangentForce"] = _Box2D2.b2ContactPoint_tangentForce_set
    __swig_getmethods__["tangentForce"] = _Box2D2.b2ContactPoint_tangentForce_get
    __swig_setmethods__["id"] = _Box2D2.b2ContactPoint_id_set
    __swig_getmethods__["id"] = _Box2D2.b2ContactPoint_id_get
    def __init__(self, *args): 
        _Box2D2.b2ContactPoint_swiginit(self,apply(_Box2D2.new_b2ContactPoint, args))
    __swig_destroy__ = _Box2D2.delete_b2ContactPoint
b2ContactPoint_swigregister = _Box2D2.b2ContactPoint_swigregister
b2ContactPoint_swigregister(b2ContactPoint)

class b2Contact:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Contact, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Contact, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    e_nonSolidFlag = _Box2D2.b2Contact_e_nonSolidFlag
    e_slowFlag = _Box2D2.b2Contact_e_slowFlag
    e_islandFlag = _Box2D2.b2Contact_e_islandFlag
    e_toiFlag = _Box2D2.b2Contact_e_toiFlag
    __swig_getmethods__["AddType"] = lambda x: _Box2D2.b2Contact_AddType
    __swig_getmethods__["InitializeRegisters"] = lambda x: _Box2D2.b2Contact_InitializeRegisters
    __swig_getmethods__["Create"] = lambda x: _Box2D2.b2Contact_Create
    __swig_getmethods__["Destroy"] = lambda x: _Box2D2.b2Contact_Destroy
    __swig_destroy__ = _Box2D2.delete_b2Contact
    __swig_setmethods__["s_registers"] = _Box2D2.b2Contact_s_registers_set
    __swig_getmethods__["s_registers"] = _Box2D2.b2Contact_s_registers_get
    __swig_setmethods__["s_initialized"] = _Box2D2.b2Contact_s_initialized_set
    __swig_getmethods__["s_initialized"] = _Box2D2.b2Contact_s_initialized_get
    __swig_setmethods__["m_flags"] = _Box2D2.b2Contact_m_flags_set
    __swig_getmethods__["m_flags"] = _Box2D2.b2Contact_m_flags_get
    __swig_setmethods__["m_manifoldCount"] = _Box2D2.b2Contact_m_manifoldCount_set
    __swig_getmethods__["m_manifoldCount"] = _Box2D2.b2Contact_m_manifoldCount_get
    __swig_setmethods__["m_prev"] = _Box2D2.b2Contact_m_prev_set
    __swig_getmethods__["m_prev"] = _Box2D2.b2Contact_m_prev_get
    __swig_setmethods__["m_next"] = _Box2D2.b2Contact_m_next_set
    __swig_getmethods__["m_next"] = _Box2D2.b2Contact_m_next_get
    __swig_setmethods__["m_node1"] = _Box2D2.b2Contact_m_node1_set
    __swig_getmethods__["m_node1"] = _Box2D2.b2Contact_m_node1_get
    __swig_setmethods__["m_node2"] = _Box2D2.b2Contact_m_node2_set
    __swig_getmethods__["m_node2"] = _Box2D2.b2Contact_m_node2_get
    __swig_setmethods__["m_shape1"] = _Box2D2.b2Contact_m_shape1_set
    __swig_getmethods__["m_shape1"] = _Box2D2.b2Contact_m_shape1_get
    __swig_setmethods__["m_shape2"] = _Box2D2.b2Contact_m_shape2_set
    __swig_getmethods__["m_shape2"] = _Box2D2.b2Contact_m_shape2_get
    __swig_setmethods__["m_friction"] = _Box2D2.b2Contact_m_friction_set
    __swig_getmethods__["m_friction"] = _Box2D2.b2Contact_m_friction_get
    __swig_setmethods__["m_restitution"] = _Box2D2.b2Contact_m_restitution_set
    __swig_getmethods__["m_restitution"] = _Box2D2.b2Contact_m_restitution_get
    __swig_setmethods__["m_toi"] = _Box2D2.b2Contact_m_toi_set
    __swig_getmethods__["m_toi"] = _Box2D2.b2Contact_m_toi_get
b2Contact.GetManifolds = new_instancemethod(_Box2D2.b2Contact_GetManifolds,None,b2Contact)
b2Contact.GetManifoldCount = new_instancemethod(_Box2D2.b2Contact_GetManifoldCount,None,b2Contact)
b2Contact.IsSolid = new_instancemethod(_Box2D2.b2Contact_IsSolid,None,b2Contact)
b2Contact.GetNext = new_instancemethod(_Box2D2.b2Contact_GetNext,None,b2Contact)
b2Contact.GetShape1 = new_instancemethod(_Box2D2.b2Contact_GetShape1,None,b2Contact)
b2Contact.GetShape2 = new_instancemethod(_Box2D2.b2Contact_GetShape2,None,b2Contact)
b2Contact.Update = new_instancemethod(_Box2D2.b2Contact_Update,None,b2Contact)
b2Contact.Evaluate = new_instancemethod(_Box2D2.b2Contact_Evaluate,None,b2Contact)
b2Contact_swigregister = _Box2D2.b2Contact_swigregister
b2Contact_swigregister(b2Contact)
b2Contact_AddType = _Box2D2.b2Contact_AddType
b2Contact_InitializeRegisters = _Box2D2.b2Contact_InitializeRegisters
b2Contact_Create = _Box2D2.b2Contact_Create
b2Contact_Destroy = _Box2D2.b2Contact_Destroy

class b2NullContact(b2Contact):
    __swig_setmethods__ = {}
    for _s in [b2Contact]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2NullContact, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Contact]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2NullContact, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2NullContact_swiginit(self,apply(_Box2D2.new_b2NullContact, args))
    __swig_destroy__ = _Box2D2.delete_b2NullContact
b2NullContact_swigregister = _Box2D2.b2NullContact_swigregister
b2NullContact_swigregister(b2NullContact)

class b2ContactManager(b2PairCallback):
    __swig_setmethods__ = {}
    for _s in [b2PairCallback]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2ContactManager, name, value)
    __swig_getmethods__ = {}
    for _s in [b2PairCallback]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2ContactManager, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2ContactManager_swiginit(self,apply(_Box2D2.new_b2ContactManager, args))
    __swig_setmethods__["m_world"] = _Box2D2.b2ContactManager_m_world_set
    __swig_getmethods__["m_world"] = _Box2D2.b2ContactManager_m_world_get
    __swig_setmethods__["m_nullContact"] = _Box2D2.b2ContactManager_m_nullContact_set
    __swig_getmethods__["m_nullContact"] = _Box2D2.b2ContactManager_m_nullContact_get
    __swig_setmethods__["m_destroyImmediate"] = _Box2D2.b2ContactManager_m_destroyImmediate_set
    __swig_getmethods__["m_destroyImmediate"] = _Box2D2.b2ContactManager_m_destroyImmediate_get
    __swig_destroy__ = _Box2D2.delete_b2ContactManager
b2ContactManager.Destroy = new_instancemethod(_Box2D2.b2ContactManager_Destroy,None,b2ContactManager)
b2ContactManager.Collide = new_instancemethod(_Box2D2.b2ContactManager_Collide,None,b2ContactManager)
b2ContactManager_swigregister = _Box2D2.b2ContactManager_swigregister
b2ContactManager_swigregister(b2ContactManager)

class b2TimeStep:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2TimeStep, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2TimeStep, name)
    __repr__ = _swig_repr
    __swig_setmethods__["dt"] = _Box2D2.b2TimeStep_dt_set
    __swig_getmethods__["dt"] = _Box2D2.b2TimeStep_dt_get
    __swig_setmethods__["inv_dt"] = _Box2D2.b2TimeStep_inv_dt_set
    __swig_getmethods__["inv_dt"] = _Box2D2.b2TimeStep_inv_dt_get
    __swig_setmethods__["maxIterations"] = _Box2D2.b2TimeStep_maxIterations_set
    __swig_getmethods__["maxIterations"] = _Box2D2.b2TimeStep_maxIterations_get
    def __init__(self, *args): 
        _Box2D2.b2TimeStep_swiginit(self,apply(_Box2D2.new_b2TimeStep, args))
    __swig_destroy__ = _Box2D2.delete_b2TimeStep
b2TimeStep_swigregister = _Box2D2.b2TimeStep_swigregister
b2TimeStep_swigregister(b2TimeStep)

class b2World:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2World, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2World, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2World_swiginit(self,apply(_Box2D2.new_b2World, args))
    __swig_destroy__ = _Box2D2.delete_b2World
    __swig_setmethods__["m_blockAllocator"] = _Box2D2.b2World_m_blockAllocator_set
    __swig_getmethods__["m_blockAllocator"] = _Box2D2.b2World_m_blockAllocator_get
    __swig_setmethods__["m_stackAllocator"] = _Box2D2.b2World_m_stackAllocator_set
    __swig_getmethods__["m_stackAllocator"] = _Box2D2.b2World_m_stackAllocator_get
    __swig_setmethods__["m_lock"] = _Box2D2.b2World_m_lock_set
    __swig_getmethods__["m_lock"] = _Box2D2.b2World_m_lock_get
    __swig_setmethods__["m_broadPhase"] = _Box2D2.b2World_m_broadPhase_set
    __swig_getmethods__["m_broadPhase"] = _Box2D2.b2World_m_broadPhase_get
    __swig_setmethods__["m_contactManager"] = _Box2D2.b2World_m_contactManager_set
    __swig_getmethods__["m_contactManager"] = _Box2D2.b2World_m_contactManager_get
    __swig_setmethods__["m_bodyList"] = _Box2D2.b2World_m_bodyList_set
    __swig_getmethods__["m_bodyList"] = _Box2D2.b2World_m_bodyList_get
    __swig_setmethods__["m_jointList"] = _Box2D2.b2World_m_jointList_set
    __swig_getmethods__["m_jointList"] = _Box2D2.b2World_m_jointList_get
    __swig_setmethods__["m_contactList"] = _Box2D2.b2World_m_contactList_set
    __swig_getmethods__["m_contactList"] = _Box2D2.b2World_m_contactList_get
    __swig_setmethods__["m_bodyCount"] = _Box2D2.b2World_m_bodyCount_set
    __swig_getmethods__["m_bodyCount"] = _Box2D2.b2World_m_bodyCount_get
    __swig_setmethods__["m_contactCount"] = _Box2D2.b2World_m_contactCount_set
    __swig_getmethods__["m_contactCount"] = _Box2D2.b2World_m_contactCount_get
    __swig_setmethods__["m_jointCount"] = _Box2D2.b2World_m_jointCount_set
    __swig_getmethods__["m_jointCount"] = _Box2D2.b2World_m_jointCount_get
    __swig_setmethods__["m_gravity"] = _Box2D2.b2World_m_gravity_set
    __swig_getmethods__["m_gravity"] = _Box2D2.b2World_m_gravity_get
    __swig_setmethods__["m_allowSleep"] = _Box2D2.b2World_m_allowSleep_set
    __swig_getmethods__["m_allowSleep"] = _Box2D2.b2World_m_allowSleep_get
    __swig_setmethods__["m_groundBody"] = _Box2D2.b2World_m_groundBody_set
    __swig_getmethods__["m_groundBody"] = _Box2D2.b2World_m_groundBody_get
    __swig_setmethods__["m_destructionListener"] = _Box2D2.b2World_m_destructionListener_set
    __swig_getmethods__["m_destructionListener"] = _Box2D2.b2World_m_destructionListener_get
    __swig_setmethods__["m_boundaryListener"] = _Box2D2.b2World_m_boundaryListener_set
    __swig_getmethods__["m_boundaryListener"] = _Box2D2.b2World_m_boundaryListener_get
    __swig_setmethods__["m_contactFilter"] = _Box2D2.b2World_m_contactFilter_set
    __swig_getmethods__["m_contactFilter"] = _Box2D2.b2World_m_contactFilter_get
    __swig_setmethods__["m_contactListener"] = _Box2D2.b2World_m_contactListener_set
    __swig_getmethods__["m_contactListener"] = _Box2D2.b2World_m_contactListener_get
    __swig_setmethods__["m_debugDraw"] = _Box2D2.b2World_m_debugDraw_set
    __swig_getmethods__["m_debugDraw"] = _Box2D2.b2World_m_debugDraw_get
    __swig_setmethods__["m_positionIterationCount"] = _Box2D2.b2World_m_positionIterationCount_set
    __swig_getmethods__["m_positionIterationCount"] = _Box2D2.b2World_m_positionIterationCount_get
    __swig_setmethods__["s_enablePositionCorrection"] = _Box2D2.b2World_s_enablePositionCorrection_set
    __swig_getmethods__["s_enablePositionCorrection"] = _Box2D2.b2World_s_enablePositionCorrection_get
    __swig_setmethods__["s_enableWarmStarting"] = _Box2D2.b2World_s_enableWarmStarting_set
    __swig_getmethods__["s_enableWarmStarting"] = _Box2D2.b2World_s_enableWarmStarting_get
    __swig_setmethods__["s_enableTOI"] = _Box2D2.b2World_s_enableTOI_set
    __swig_getmethods__["s_enableTOI"] = _Box2D2.b2World_s_enableTOI_get
b2World.SetFilter = new_instancemethod(_Box2D2.b2World_SetFilter,None,b2World)
b2World.SetListener = new_instancemethod(_Box2D2.b2World_SetListener,None,b2World)
b2World.SetDebugDraw = new_instancemethod(_Box2D2.b2World_SetDebugDraw,None,b2World)
b2World.CreateStaticBody = new_instancemethod(_Box2D2.b2World_CreateStaticBody,None,b2World)
b2World.CreateDynamicBody = new_instancemethod(_Box2D2.b2World_CreateDynamicBody,None,b2World)
b2World.DestroyBody = new_instancemethod(_Box2D2.b2World_DestroyBody,None,b2World)
b2World.CreateJoint = new_instancemethod(_Box2D2.b2World_CreateJoint,None,b2World)
b2World.DestroyJoint = new_instancemethod(_Box2D2.b2World_DestroyJoint,None,b2World)
b2World.GetGroundBody = new_instancemethod(_Box2D2.b2World_GetGroundBody,None,b2World)
b2World.Step = new_instancemethod(_Box2D2.b2World_Step,None,b2World)
b2World.Query = new_instancemethod(_Box2D2.b2World_Query,None,b2World)
b2World.GetBodyList = new_instancemethod(_Box2D2.b2World_GetBodyList,None,b2World)
b2World.GetJointList = new_instancemethod(_Box2D2.b2World_GetJointList,None,b2World)
b2World.SetGravity = new_instancemethod(_Box2D2.b2World_SetGravity,None,b2World)
b2World.Solve = new_instancemethod(_Box2D2.b2World_Solve,None,b2World)
b2World.SolveTOI = new_instancemethod(_Box2D2.b2World_SolveTOI,None,b2World)
b2World.DrawJoint = new_instancemethod(_Box2D2.b2World_DrawJoint,None,b2World)
b2World.DrawShape = new_instancemethod(_Box2D2.b2World_DrawShape,None,b2World)
b2World.DrawDebugData = new_instancemethod(_Box2D2.b2World_DrawDebugData,None,b2World)
b2World_swigregister = _Box2D2.b2World_swigregister
b2World_swigregister(b2World)

e_unknownJoint = _Box2D2.e_unknownJoint
e_revoluteJoint = _Box2D2.e_revoluteJoint
e_prismaticJoint = _Box2D2.e_prismaticJoint
e_distanceJoint = _Box2D2.e_distanceJoint
e_pulleyJoint = _Box2D2.e_pulleyJoint
e_mouseJoint = _Box2D2.e_mouseJoint
e_gearJoint = _Box2D2.e_gearJoint
e_inactiveLimit = _Box2D2.e_inactiveLimit
e_atLowerLimit = _Box2D2.e_atLowerLimit
e_atUpperLimit = _Box2D2.e_atUpperLimit
e_equalLimits = _Box2D2.e_equalLimits
class b2Jacobian:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Jacobian, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Jacobian, name)
    __repr__ = _swig_repr
    __swig_setmethods__["linear1"] = _Box2D2.b2Jacobian_linear1_set
    __swig_getmethods__["linear1"] = _Box2D2.b2Jacobian_linear1_get
    __swig_setmethods__["angular1"] = _Box2D2.b2Jacobian_angular1_set
    __swig_getmethods__["angular1"] = _Box2D2.b2Jacobian_angular1_get
    __swig_setmethods__["linear2"] = _Box2D2.b2Jacobian_linear2_set
    __swig_getmethods__["linear2"] = _Box2D2.b2Jacobian_linear2_get
    __swig_setmethods__["angular2"] = _Box2D2.b2Jacobian_angular2_set
    __swig_getmethods__["angular2"] = _Box2D2.b2Jacobian_angular2_get
    def __init__(self, *args): 
        _Box2D2.b2Jacobian_swiginit(self,apply(_Box2D2.new_b2Jacobian, args))
    __swig_destroy__ = _Box2D2.delete_b2Jacobian
b2Jacobian.SetZero = new_instancemethod(_Box2D2.b2Jacobian_SetZero,None,b2Jacobian)
b2Jacobian.Set = new_instancemethod(_Box2D2.b2Jacobian_Set,None,b2Jacobian)
b2Jacobian.Compute = new_instancemethod(_Box2D2.b2Jacobian_Compute,None,b2Jacobian)
b2Jacobian_swigregister = _Box2D2.b2Jacobian_swigregister
b2Jacobian_swigregister(b2Jacobian)

class b2JointEdge:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2JointEdge, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2JointEdge, name)
    __repr__ = _swig_repr
    __swig_setmethods__["other"] = _Box2D2.b2JointEdge_other_set
    __swig_getmethods__["other"] = _Box2D2.b2JointEdge_other_get
    __swig_setmethods__["joint"] = _Box2D2.b2JointEdge_joint_set
    __swig_getmethods__["joint"] = _Box2D2.b2JointEdge_joint_get
    __swig_setmethods__["prev"] = _Box2D2.b2JointEdge_prev_set
    __swig_getmethods__["prev"] = _Box2D2.b2JointEdge_prev_get
    __swig_setmethods__["next"] = _Box2D2.b2JointEdge_next_set
    __swig_getmethods__["next"] = _Box2D2.b2JointEdge_next_get
    def __init__(self, *args): 
        _Box2D2.b2JointEdge_swiginit(self,apply(_Box2D2.new_b2JointEdge, args))
    __swig_destroy__ = _Box2D2.delete_b2JointEdge
b2JointEdge_swigregister = _Box2D2.b2JointEdge_swigregister
b2JointEdge_swigregister(b2JointEdge)

class b2JointDef:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2JointDef, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2JointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2JointDef_swiginit(self,apply(_Box2D2.new_b2JointDef, args))
    __swig_setmethods__["type"] = _Box2D2.b2JointDef_type_set
    __swig_getmethods__["type"] = _Box2D2.b2JointDef_type_get
    __swig_setmethods__["userData"] = _Box2D2.b2JointDef_userData_set
    __swig_getmethods__["userData"] = _Box2D2.b2JointDef_userData_get
    __swig_setmethods__["body1"] = _Box2D2.b2JointDef_body1_set
    __swig_getmethods__["body1"] = _Box2D2.b2JointDef_body1_get
    __swig_setmethods__["body2"] = _Box2D2.b2JointDef_body2_set
    __swig_getmethods__["body2"] = _Box2D2.b2JointDef_body2_get
    __swig_setmethods__["collideConnected"] = _Box2D2.b2JointDef_collideConnected_set
    __swig_getmethods__["collideConnected"] = _Box2D2.b2JointDef_collideConnected_get
    __swig_destroy__ = _Box2D2.delete_b2JointDef
b2JointDef_swigregister = _Box2D2.b2JointDef_swigregister
b2JointDef_swigregister(b2JointDef)

class b2Joint:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Joint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Joint, name)
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_getmethods__["Create"] = lambda x: _Box2D2.b2Joint_Create
    __swig_getmethods__["Destroy"] = lambda x: _Box2D2.b2Joint_Destroy
    __swig_destroy__ = _Box2D2.delete_b2Joint
    __swig_setmethods__["m_type"] = _Box2D2.b2Joint_m_type_set
    __swig_getmethods__["m_type"] = _Box2D2.b2Joint_m_type_get
    __swig_setmethods__["m_prev"] = _Box2D2.b2Joint_m_prev_set
    __swig_getmethods__["m_prev"] = _Box2D2.b2Joint_m_prev_get
    __swig_setmethods__["m_next"] = _Box2D2.b2Joint_m_next_set
    __swig_getmethods__["m_next"] = _Box2D2.b2Joint_m_next_get
    __swig_setmethods__["m_node1"] = _Box2D2.b2Joint_m_node1_set
    __swig_getmethods__["m_node1"] = _Box2D2.b2Joint_m_node1_get
    __swig_setmethods__["m_node2"] = _Box2D2.b2Joint_m_node2_set
    __swig_getmethods__["m_node2"] = _Box2D2.b2Joint_m_node2_get
    __swig_setmethods__["m_body1"] = _Box2D2.b2Joint_m_body1_set
    __swig_getmethods__["m_body1"] = _Box2D2.b2Joint_m_body1_get
    __swig_setmethods__["m_body2"] = _Box2D2.b2Joint_m_body2_set
    __swig_getmethods__["m_body2"] = _Box2D2.b2Joint_m_body2_get
    __swig_setmethods__["m_islandFlag"] = _Box2D2.b2Joint_m_islandFlag_set
    __swig_getmethods__["m_islandFlag"] = _Box2D2.b2Joint_m_islandFlag_get
    __swig_setmethods__["m_collideConnected"] = _Box2D2.b2Joint_m_collideConnected_set
    __swig_getmethods__["m_collideConnected"] = _Box2D2.b2Joint_m_collideConnected_get
    __swig_setmethods__["m_userData"] = _Box2D2.b2Joint_m_userData_set
    __swig_getmethods__["m_userData"] = _Box2D2.b2Joint_m_userData_get
b2Joint.GetType = new_instancemethod(_Box2D2.b2Joint_GetType,None,b2Joint)
b2Joint.GetBody1 = new_instancemethod(_Box2D2.b2Joint_GetBody1,None,b2Joint)
b2Joint.GetBody2 = new_instancemethod(_Box2D2.b2Joint_GetBody2,None,b2Joint)
b2Joint.GetAnchor1 = new_instancemethod(_Box2D2.b2Joint_GetAnchor1,None,b2Joint)
b2Joint.GetAnchor2 = new_instancemethod(_Box2D2.b2Joint_GetAnchor2,None,b2Joint)
b2Joint.GetReactionForce = new_instancemethod(_Box2D2.b2Joint_GetReactionForce,None,b2Joint)
b2Joint.GetReactionTorque = new_instancemethod(_Box2D2.b2Joint_GetReactionTorque,None,b2Joint)
b2Joint.GetNext = new_instancemethod(_Box2D2.b2Joint_GetNext,None,b2Joint)
b2Joint.GetUserData = new_instancemethod(_Box2D2.b2Joint_GetUserData,None,b2Joint)
b2Joint.InitVelocityConstraints = new_instancemethod(_Box2D2.b2Joint_InitVelocityConstraints,None,b2Joint)
b2Joint.SolveVelocityConstraints = new_instancemethod(_Box2D2.b2Joint_SolveVelocityConstraints,None,b2Joint)
b2Joint.InitPositionConstraints = new_instancemethod(_Box2D2.b2Joint_InitPositionConstraints,None,b2Joint)
b2Joint.SolvePositionConstraints = new_instancemethod(_Box2D2.b2Joint_SolvePositionConstraints,None,b2Joint)
b2Joint_swigregister = _Box2D2.b2Joint_swigregister
b2Joint_swigregister(b2Joint)
b2Joint_Create = _Box2D2.b2Joint_Create
b2Joint_Destroy = _Box2D2.b2Joint_Destroy

class b2BodyDef:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2BodyDef, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2BodyDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2BodyDef_swiginit(self,apply(_Box2D2.new_b2BodyDef, args))
    __swig_setmethods__["massData"] = _Box2D2.b2BodyDef_massData_set
    __swig_getmethods__["massData"] = _Box2D2.b2BodyDef_massData_get
    __swig_setmethods__["userData"] = _Box2D2.b2BodyDef_userData_set
    __swig_getmethods__["userData"] = _Box2D2.b2BodyDef_userData_get
    __swig_setmethods__["position"] = _Box2D2.b2BodyDef_position_set
    __swig_getmethods__["position"] = _Box2D2.b2BodyDef_position_get
    __swig_setmethods__["angle"] = _Box2D2.b2BodyDef_angle_set
    __swig_getmethods__["angle"] = _Box2D2.b2BodyDef_angle_get
    __swig_setmethods__["linearDamping"] = _Box2D2.b2BodyDef_linearDamping_set
    __swig_getmethods__["linearDamping"] = _Box2D2.b2BodyDef_linearDamping_get
    __swig_setmethods__["angularDamping"] = _Box2D2.b2BodyDef_angularDamping_set
    __swig_getmethods__["angularDamping"] = _Box2D2.b2BodyDef_angularDamping_get
    __swig_setmethods__["allowSleep"] = _Box2D2.b2BodyDef_allowSleep_set
    __swig_getmethods__["allowSleep"] = _Box2D2.b2BodyDef_allowSleep_get
    __swig_setmethods__["isSleeping"] = _Box2D2.b2BodyDef_isSleeping_set
    __swig_getmethods__["isSleeping"] = _Box2D2.b2BodyDef_isSleeping_get
    __swig_setmethods__["fixedRotation"] = _Box2D2.b2BodyDef_fixedRotation_set
    __swig_getmethods__["fixedRotation"] = _Box2D2.b2BodyDef_fixedRotation_get
    __swig_setmethods__["isBullet"] = _Box2D2.b2BodyDef_isBullet_set
    __swig_getmethods__["isBullet"] = _Box2D2.b2BodyDef_isBullet_get
    __swig_destroy__ = _Box2D2.delete_b2BodyDef
b2BodyDef_swigregister = _Box2D2.b2BodyDef_swigregister
b2BodyDef_swigregister(b2BodyDef)

class b2Body:
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2Body, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, b2Body, name)
    __repr__ = _swig_repr
    e_frozenFlag = _Box2D2.b2Body_e_frozenFlag
    e_islandFlag = _Box2D2.b2Body_e_islandFlag
    e_sleepFlag = _Box2D2.b2Body_e_sleepFlag
    e_allowSleepFlag = _Box2D2.b2Body_e_allowSleepFlag
    e_bulletFlag = _Box2D2.b2Body_e_bulletFlag
    e_fixedRotationFlag = _Box2D2.b2Body_e_fixedRotationFlag
    e_staticType = _Box2D2.b2Body_e_staticType
    e_dynamicType = _Box2D2.b2Body_e_dynamicType
    e_maxTypes = _Box2D2.b2Body_e_maxTypes
    def __init__(self, *args): 
        _Box2D2.b2Body_swiginit(self,apply(_Box2D2.new_b2Body, args))
    __swig_destroy__ = _Box2D2.delete_b2Body
    __swig_setmethods__["m_flags"] = _Box2D2.b2Body_m_flags_set
    __swig_getmethods__["m_flags"] = _Box2D2.b2Body_m_flags_get
    __swig_setmethods__["m_type"] = _Box2D2.b2Body_m_type_set
    __swig_getmethods__["m_type"] = _Box2D2.b2Body_m_type_get
    __swig_setmethods__["m_xf"] = _Box2D2.b2Body_m_xf_set
    __swig_getmethods__["m_xf"] = _Box2D2.b2Body_m_xf_get
    __swig_setmethods__["m_sweep"] = _Box2D2.b2Body_m_sweep_set
    __swig_getmethods__["m_sweep"] = _Box2D2.b2Body_m_sweep_get
    __swig_setmethods__["m_linearVelocity"] = _Box2D2.b2Body_m_linearVelocity_set
    __swig_getmethods__["m_linearVelocity"] = _Box2D2.b2Body_m_linearVelocity_get
    __swig_setmethods__["m_angularVelocity"] = _Box2D2.b2Body_m_angularVelocity_set
    __swig_getmethods__["m_angularVelocity"] = _Box2D2.b2Body_m_angularVelocity_get
    __swig_setmethods__["m_force"] = _Box2D2.b2Body_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2Body_m_force_get
    __swig_setmethods__["m_torque"] = _Box2D2.b2Body_m_torque_set
    __swig_getmethods__["m_torque"] = _Box2D2.b2Body_m_torque_get
    __swig_setmethods__["m_world"] = _Box2D2.b2Body_m_world_set
    __swig_getmethods__["m_world"] = _Box2D2.b2Body_m_world_get
    __swig_setmethods__["m_prev"] = _Box2D2.b2Body_m_prev_set
    __swig_getmethods__["m_prev"] = _Box2D2.b2Body_m_prev_get
    __swig_setmethods__["m_next"] = _Box2D2.b2Body_m_next_set
    __swig_getmethods__["m_next"] = _Box2D2.b2Body_m_next_get
    __swig_setmethods__["m_shapeList"] = _Box2D2.b2Body_m_shapeList_set
    __swig_getmethods__["m_shapeList"] = _Box2D2.b2Body_m_shapeList_get
    __swig_setmethods__["m_shapeCount"] = _Box2D2.b2Body_m_shapeCount_set
    __swig_getmethods__["m_shapeCount"] = _Box2D2.b2Body_m_shapeCount_get
    __swig_setmethods__["m_jointList"] = _Box2D2.b2Body_m_jointList_set
    __swig_getmethods__["m_jointList"] = _Box2D2.b2Body_m_jointList_get
    __swig_setmethods__["m_contactList"] = _Box2D2.b2Body_m_contactList_set
    __swig_getmethods__["m_contactList"] = _Box2D2.b2Body_m_contactList_get
    __swig_setmethods__["m_mass"] = _Box2D2.b2Body_m_mass_set
    __swig_getmethods__["m_mass"] = _Box2D2.b2Body_m_mass_get
    __swig_setmethods__["m_invMass"] = _Box2D2.b2Body_m_invMass_set
    __swig_getmethods__["m_invMass"] = _Box2D2.b2Body_m_invMass_get
    __swig_setmethods__["m_I"] = _Box2D2.b2Body_m_I_set
    __swig_getmethods__["m_I"] = _Box2D2.b2Body_m_I_get
    __swig_setmethods__["m_invI"] = _Box2D2.b2Body_m_invI_set
    __swig_getmethods__["m_invI"] = _Box2D2.b2Body_m_invI_get
    __swig_setmethods__["m_linearDamping"] = _Box2D2.b2Body_m_linearDamping_set
    __swig_getmethods__["m_linearDamping"] = _Box2D2.b2Body_m_linearDamping_get
    __swig_setmethods__["m_angularDamping"] = _Box2D2.b2Body_m_angularDamping_set
    __swig_getmethods__["m_angularDamping"] = _Box2D2.b2Body_m_angularDamping_get
    __swig_setmethods__["m_sleepTime"] = _Box2D2.b2Body_m_sleepTime_set
    __swig_getmethods__["m_sleepTime"] = _Box2D2.b2Body_m_sleepTime_get
    __swig_setmethods__["m_userData"] = _Box2D2.b2Body_m_userData_set
    __swig_getmethods__["m_userData"] = _Box2D2.b2Body_m_userData_get
b2Body.CreateShape = new_instancemethod(_Box2D2.b2Body_CreateShape,None,b2Body)
b2Body.DestroyShape = new_instancemethod(_Box2D2.b2Body_DestroyShape,None,b2Body)
b2Body.SetMass = new_instancemethod(_Box2D2.b2Body_SetMass,None,b2Body)
b2Body.SetMassFromShapes = new_instancemethod(_Box2D2.b2Body_SetMassFromShapes,None,b2Body)
b2Body.SetXForm = new_instancemethod(_Box2D2.b2Body_SetXForm,None,b2Body)
b2Body.GetXForm = new_instancemethod(_Box2D2.b2Body_GetXForm,None,b2Body)
b2Body.GetPosition = new_instancemethod(_Box2D2.b2Body_GetPosition,None,b2Body)
b2Body.GetAngle = new_instancemethod(_Box2D2.b2Body_GetAngle,None,b2Body)
b2Body.GetWorldCenter = new_instancemethod(_Box2D2.b2Body_GetWorldCenter,None,b2Body)
b2Body.GetLocalCenter = new_instancemethod(_Box2D2.b2Body_GetLocalCenter,None,b2Body)
b2Body.SetLinearVelocity = new_instancemethod(_Box2D2.b2Body_SetLinearVelocity,None,b2Body)
b2Body.GetLinearVelocity = new_instancemethod(_Box2D2.b2Body_GetLinearVelocity,None,b2Body)
b2Body.SetAngularVelocity = new_instancemethod(_Box2D2.b2Body_SetAngularVelocity,None,b2Body)
b2Body.GetAngularVelocity = new_instancemethod(_Box2D2.b2Body_GetAngularVelocity,None,b2Body)
b2Body.ApplyForce = new_instancemethod(_Box2D2.b2Body_ApplyForce,None,b2Body)
b2Body.ApplyTorque = new_instancemethod(_Box2D2.b2Body_ApplyTorque,None,b2Body)
b2Body.ApplyImpulse = new_instancemethod(_Box2D2.b2Body_ApplyImpulse,None,b2Body)
b2Body.GetMass = new_instancemethod(_Box2D2.b2Body_GetMass,None,b2Body)
b2Body.GetInertia = new_instancemethod(_Box2D2.b2Body_GetInertia,None,b2Body)
b2Body.GetWorldPoint = new_instancemethod(_Box2D2.b2Body_GetWorldPoint,None,b2Body)
b2Body.GetWorldVector = new_instancemethod(_Box2D2.b2Body_GetWorldVector,None,b2Body)
b2Body.GetLocalPoint = new_instancemethod(_Box2D2.b2Body_GetLocalPoint,None,b2Body)
b2Body.GetLocalVector = new_instancemethod(_Box2D2.b2Body_GetLocalVector,None,b2Body)
b2Body.IsBullet = new_instancemethod(_Box2D2.b2Body_IsBullet,None,b2Body)
b2Body.SetBullet = new_instancemethod(_Box2D2.b2Body_SetBullet,None,b2Body)
b2Body.IsStatic = new_instancemethod(_Box2D2.b2Body_IsStatic,None,b2Body)
b2Body.IsDynamic = new_instancemethod(_Box2D2.b2Body_IsDynamic,None,b2Body)
b2Body.IsFrozen = new_instancemethod(_Box2D2.b2Body_IsFrozen,None,b2Body)
b2Body.IsSleeping = new_instancemethod(_Box2D2.b2Body_IsSleeping,None,b2Body)
b2Body.AllowSleeping = new_instancemethod(_Box2D2.b2Body_AllowSleeping,None,b2Body)
b2Body.WakeUp = new_instancemethod(_Box2D2.b2Body_WakeUp,None,b2Body)
b2Body.GetShapeList = new_instancemethod(_Box2D2.b2Body_GetShapeList,None,b2Body)
b2Body.GetJointList = new_instancemethod(_Box2D2.b2Body_GetJointList,None,b2Body)
b2Body.GetContactList = new_instancemethod(_Box2D2.b2Body_GetContactList,None,b2Body)
b2Body.GetNext = new_instancemethod(_Box2D2.b2Body_GetNext,None,b2Body)
b2Body.GetUserData = new_instancemethod(_Box2D2.b2Body_GetUserData,None,b2Body)
b2Body.ComputeMass = new_instancemethod(_Box2D2.b2Body_ComputeMass,None,b2Body)
b2Body.SynchronizeShapes = new_instancemethod(_Box2D2.b2Body_SynchronizeShapes,None,b2Body)
b2Body.SynchronizeTransform = new_instancemethod(_Box2D2.b2Body_SynchronizeTransform,None,b2Body)
b2Body.IsConnected = new_instancemethod(_Box2D2.b2Body_IsConnected,None,b2Body)
b2Body.Advance = new_instancemethod(_Box2D2.b2Body_Advance,None,b2Body)
b2Body_swigregister = _Box2D2.b2Body_swigregister
b2Body_swigregister(b2Body)

class b2DistanceJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2DistanceJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2DistanceJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2DistanceJointDef_swiginit(self,apply(_Box2D2.new_b2DistanceJointDef, args))
    __swig_setmethods__["localAnchor1"] = _Box2D2.b2DistanceJointDef_localAnchor1_set
    __swig_getmethods__["localAnchor1"] = _Box2D2.b2DistanceJointDef_localAnchor1_get
    __swig_setmethods__["localAnchor2"] = _Box2D2.b2DistanceJointDef_localAnchor2_set
    __swig_getmethods__["localAnchor2"] = _Box2D2.b2DistanceJointDef_localAnchor2_get
    __swig_setmethods__["length"] = _Box2D2.b2DistanceJointDef_length_set
    __swig_getmethods__["length"] = _Box2D2.b2DistanceJointDef_length_get
    __swig_destroy__ = _Box2D2.delete_b2DistanceJointDef
b2DistanceJointDef.Initialize = new_instancemethod(_Box2D2.b2DistanceJointDef_Initialize,None,b2DistanceJointDef)
b2DistanceJointDef_swigregister = _Box2D2.b2DistanceJointDef_swigregister
b2DistanceJointDef_swigregister(b2DistanceJointDef)

class b2DistanceJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2DistanceJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2DistanceJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2DistanceJoint_swiginit(self,apply(_Box2D2.new_b2DistanceJoint, args))
    __swig_setmethods__["m_localAnchor1"] = _Box2D2.b2DistanceJoint_m_localAnchor1_set
    __swig_getmethods__["m_localAnchor1"] = _Box2D2.b2DistanceJoint_m_localAnchor1_get
    __swig_setmethods__["m_localAnchor2"] = _Box2D2.b2DistanceJoint_m_localAnchor2_set
    __swig_getmethods__["m_localAnchor2"] = _Box2D2.b2DistanceJoint_m_localAnchor2_get
    __swig_setmethods__["m_u"] = _Box2D2.b2DistanceJoint_m_u_set
    __swig_getmethods__["m_u"] = _Box2D2.b2DistanceJoint_m_u_get
    __swig_setmethods__["m_force"] = _Box2D2.b2DistanceJoint_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2DistanceJoint_m_force_get
    __swig_setmethods__["m_mass"] = _Box2D2.b2DistanceJoint_m_mass_set
    __swig_getmethods__["m_mass"] = _Box2D2.b2DistanceJoint_m_mass_get
    __swig_setmethods__["m_length"] = _Box2D2.b2DistanceJoint_m_length_set
    __swig_getmethods__["m_length"] = _Box2D2.b2DistanceJoint_m_length_get
    __swig_destroy__ = _Box2D2.delete_b2DistanceJoint
b2DistanceJoint_swigregister = _Box2D2.b2DistanceJoint_swigregister
b2DistanceJoint_swigregister(b2DistanceJoint)

class b2MouseJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2MouseJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2MouseJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2MouseJointDef_swiginit(self,apply(_Box2D2.new_b2MouseJointDef, args))
    __swig_setmethods__["target"] = _Box2D2.b2MouseJointDef_target_set
    __swig_getmethods__["target"] = _Box2D2.b2MouseJointDef_target_get
    __swig_setmethods__["maxForce"] = _Box2D2.b2MouseJointDef_maxForce_set
    __swig_getmethods__["maxForce"] = _Box2D2.b2MouseJointDef_maxForce_get
    __swig_setmethods__["frequencyHz"] = _Box2D2.b2MouseJointDef_frequencyHz_set
    __swig_getmethods__["frequencyHz"] = _Box2D2.b2MouseJointDef_frequencyHz_get
    __swig_setmethods__["dampingRatio"] = _Box2D2.b2MouseJointDef_dampingRatio_set
    __swig_getmethods__["dampingRatio"] = _Box2D2.b2MouseJointDef_dampingRatio_get
    __swig_setmethods__["timeStep"] = _Box2D2.b2MouseJointDef_timeStep_set
    __swig_getmethods__["timeStep"] = _Box2D2.b2MouseJointDef_timeStep_get
    __swig_destroy__ = _Box2D2.delete_b2MouseJointDef
b2MouseJointDef_swigregister = _Box2D2.b2MouseJointDef_swigregister
b2MouseJointDef_swigregister(b2MouseJointDef)

class b2MouseJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2MouseJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2MouseJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2MouseJoint_swiginit(self,apply(_Box2D2.new_b2MouseJoint, args))
    __swig_setmethods__["m_localAnchor"] = _Box2D2.b2MouseJoint_m_localAnchor_set
    __swig_getmethods__["m_localAnchor"] = _Box2D2.b2MouseJoint_m_localAnchor_get
    __swig_setmethods__["m_target"] = _Box2D2.b2MouseJoint_m_target_set
    __swig_getmethods__["m_target"] = _Box2D2.b2MouseJoint_m_target_get
    __swig_setmethods__["m_force"] = _Box2D2.b2MouseJoint_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2MouseJoint_m_force_get
    __swig_setmethods__["m_mass"] = _Box2D2.b2MouseJoint_m_mass_set
    __swig_getmethods__["m_mass"] = _Box2D2.b2MouseJoint_m_mass_get
    __swig_setmethods__["m_C"] = _Box2D2.b2MouseJoint_m_C_set
    __swig_getmethods__["m_C"] = _Box2D2.b2MouseJoint_m_C_get
    __swig_setmethods__["m_maxForce"] = _Box2D2.b2MouseJoint_m_maxForce_set
    __swig_getmethods__["m_maxForce"] = _Box2D2.b2MouseJoint_m_maxForce_get
    __swig_setmethods__["m_beta"] = _Box2D2.b2MouseJoint_m_beta_set
    __swig_getmethods__["m_beta"] = _Box2D2.b2MouseJoint_m_beta_get
    __swig_setmethods__["m_gamma"] = _Box2D2.b2MouseJoint_m_gamma_set
    __swig_getmethods__["m_gamma"] = _Box2D2.b2MouseJoint_m_gamma_get
    __swig_destroy__ = _Box2D2.delete_b2MouseJoint
b2MouseJoint.SetTarget = new_instancemethod(_Box2D2.b2MouseJoint_SetTarget,None,b2MouseJoint)
b2MouseJoint_swigregister = _Box2D2.b2MouseJoint_swigregister
b2MouseJoint_swigregister(b2MouseJoint)

class b2PrismaticJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PrismaticJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PrismaticJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PrismaticJointDef_swiginit(self,apply(_Box2D2.new_b2PrismaticJointDef, args))
    __swig_setmethods__["localAnchor1"] = _Box2D2.b2PrismaticJointDef_localAnchor1_set
    __swig_getmethods__["localAnchor1"] = _Box2D2.b2PrismaticJointDef_localAnchor1_get
    __swig_setmethods__["localAnchor2"] = _Box2D2.b2PrismaticJointDef_localAnchor2_set
    __swig_getmethods__["localAnchor2"] = _Box2D2.b2PrismaticJointDef_localAnchor2_get
    __swig_setmethods__["localAxis1"] = _Box2D2.b2PrismaticJointDef_localAxis1_set
    __swig_getmethods__["localAxis1"] = _Box2D2.b2PrismaticJointDef_localAxis1_get
    __swig_setmethods__["referenceAngle"] = _Box2D2.b2PrismaticJointDef_referenceAngle_set
    __swig_getmethods__["referenceAngle"] = _Box2D2.b2PrismaticJointDef_referenceAngle_get
    __swig_setmethods__["enableLimit"] = _Box2D2.b2PrismaticJointDef_enableLimit_set
    __swig_getmethods__["enableLimit"] = _Box2D2.b2PrismaticJointDef_enableLimit_get
    __swig_setmethods__["lowerTranslation"] = _Box2D2.b2PrismaticJointDef_lowerTranslation_set
    __swig_getmethods__["lowerTranslation"] = _Box2D2.b2PrismaticJointDef_lowerTranslation_get
    __swig_setmethods__["upperTranslation"] = _Box2D2.b2PrismaticJointDef_upperTranslation_set
    __swig_getmethods__["upperTranslation"] = _Box2D2.b2PrismaticJointDef_upperTranslation_get
    __swig_setmethods__["enableMotor"] = _Box2D2.b2PrismaticJointDef_enableMotor_set
    __swig_getmethods__["enableMotor"] = _Box2D2.b2PrismaticJointDef_enableMotor_get
    __swig_setmethods__["maxMotorForce"] = _Box2D2.b2PrismaticJointDef_maxMotorForce_set
    __swig_getmethods__["maxMotorForce"] = _Box2D2.b2PrismaticJointDef_maxMotorForce_get
    __swig_setmethods__["motorSpeed"] = _Box2D2.b2PrismaticJointDef_motorSpeed_set
    __swig_getmethods__["motorSpeed"] = _Box2D2.b2PrismaticJointDef_motorSpeed_get
    __swig_destroy__ = _Box2D2.delete_b2PrismaticJointDef
b2PrismaticJointDef.Initialize = new_instancemethod(_Box2D2.b2PrismaticJointDef_Initialize,None,b2PrismaticJointDef)
b2PrismaticJointDef_swigregister = _Box2D2.b2PrismaticJointDef_swigregister
b2PrismaticJointDef_swigregister(b2PrismaticJointDef)

class b2PrismaticJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PrismaticJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PrismaticJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PrismaticJoint_swiginit(self,apply(_Box2D2.new_b2PrismaticJoint, args))
    __swig_setmethods__["m_localAnchor1"] = _Box2D2.b2PrismaticJoint_m_localAnchor1_set
    __swig_getmethods__["m_localAnchor1"] = _Box2D2.b2PrismaticJoint_m_localAnchor1_get
    __swig_setmethods__["m_localAnchor2"] = _Box2D2.b2PrismaticJoint_m_localAnchor2_set
    __swig_getmethods__["m_localAnchor2"] = _Box2D2.b2PrismaticJoint_m_localAnchor2_get
    __swig_setmethods__["m_localXAxis1"] = _Box2D2.b2PrismaticJoint_m_localXAxis1_set
    __swig_getmethods__["m_localXAxis1"] = _Box2D2.b2PrismaticJoint_m_localXAxis1_get
    __swig_setmethods__["m_localYAxis1"] = _Box2D2.b2PrismaticJoint_m_localYAxis1_set
    __swig_getmethods__["m_localYAxis1"] = _Box2D2.b2PrismaticJoint_m_localYAxis1_get
    __swig_setmethods__["m_refAngle"] = _Box2D2.b2PrismaticJoint_m_refAngle_set
    __swig_getmethods__["m_refAngle"] = _Box2D2.b2PrismaticJoint_m_refAngle_get
    __swig_setmethods__["m_linearJacobian"] = _Box2D2.b2PrismaticJoint_m_linearJacobian_set
    __swig_getmethods__["m_linearJacobian"] = _Box2D2.b2PrismaticJoint_m_linearJacobian_get
    __swig_setmethods__["m_linearMass"] = _Box2D2.b2PrismaticJoint_m_linearMass_set
    __swig_getmethods__["m_linearMass"] = _Box2D2.b2PrismaticJoint_m_linearMass_get
    __swig_setmethods__["m_force"] = _Box2D2.b2PrismaticJoint_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2PrismaticJoint_m_force_get
    __swig_setmethods__["m_angularMass"] = _Box2D2.b2PrismaticJoint_m_angularMass_set
    __swig_getmethods__["m_angularMass"] = _Box2D2.b2PrismaticJoint_m_angularMass_get
    __swig_setmethods__["m_torque"] = _Box2D2.b2PrismaticJoint_m_torque_set
    __swig_getmethods__["m_torque"] = _Box2D2.b2PrismaticJoint_m_torque_get
    __swig_setmethods__["m_motorJacobian"] = _Box2D2.b2PrismaticJoint_m_motorJacobian_set
    __swig_getmethods__["m_motorJacobian"] = _Box2D2.b2PrismaticJoint_m_motorJacobian_get
    __swig_setmethods__["m_motorMass"] = _Box2D2.b2PrismaticJoint_m_motorMass_set
    __swig_getmethods__["m_motorMass"] = _Box2D2.b2PrismaticJoint_m_motorMass_get
    __swig_setmethods__["m_motorForce"] = _Box2D2.b2PrismaticJoint_m_motorForce_set
    __swig_getmethods__["m_motorForce"] = _Box2D2.b2PrismaticJoint_m_motorForce_get
    __swig_setmethods__["m_limitForce"] = _Box2D2.b2PrismaticJoint_m_limitForce_set
    __swig_getmethods__["m_limitForce"] = _Box2D2.b2PrismaticJoint_m_limitForce_get
    __swig_setmethods__["m_limitPositionImpulse"] = _Box2D2.b2PrismaticJoint_m_limitPositionImpulse_set
    __swig_getmethods__["m_limitPositionImpulse"] = _Box2D2.b2PrismaticJoint_m_limitPositionImpulse_get
    __swig_setmethods__["m_lowerTranslation"] = _Box2D2.b2PrismaticJoint_m_lowerTranslation_set
    __swig_getmethods__["m_lowerTranslation"] = _Box2D2.b2PrismaticJoint_m_lowerTranslation_get
    __swig_setmethods__["m_upperTranslation"] = _Box2D2.b2PrismaticJoint_m_upperTranslation_set
    __swig_getmethods__["m_upperTranslation"] = _Box2D2.b2PrismaticJoint_m_upperTranslation_get
    __swig_setmethods__["m_maxMotorForce"] = _Box2D2.b2PrismaticJoint_m_maxMotorForce_set
    __swig_getmethods__["m_maxMotorForce"] = _Box2D2.b2PrismaticJoint_m_maxMotorForce_get
    __swig_setmethods__["m_motorSpeed"] = _Box2D2.b2PrismaticJoint_m_motorSpeed_set
    __swig_getmethods__["m_motorSpeed"] = _Box2D2.b2PrismaticJoint_m_motorSpeed_get
    __swig_setmethods__["m_enableLimit"] = _Box2D2.b2PrismaticJoint_m_enableLimit_set
    __swig_getmethods__["m_enableLimit"] = _Box2D2.b2PrismaticJoint_m_enableLimit_get
    __swig_setmethods__["m_enableMotor"] = _Box2D2.b2PrismaticJoint_m_enableMotor_set
    __swig_getmethods__["m_enableMotor"] = _Box2D2.b2PrismaticJoint_m_enableMotor_get
    __swig_setmethods__["m_limitState"] = _Box2D2.b2PrismaticJoint_m_limitState_set
    __swig_getmethods__["m_limitState"] = _Box2D2.b2PrismaticJoint_m_limitState_get
    __swig_destroy__ = _Box2D2.delete_b2PrismaticJoint
b2PrismaticJoint.GetJointTranslation = new_instancemethod(_Box2D2.b2PrismaticJoint_GetJointTranslation,None,b2PrismaticJoint)
b2PrismaticJoint.GetJointSpeed = new_instancemethod(_Box2D2.b2PrismaticJoint_GetJointSpeed,None,b2PrismaticJoint)
b2PrismaticJoint.IsLimitEnabled = new_instancemethod(_Box2D2.b2PrismaticJoint_IsLimitEnabled,None,b2PrismaticJoint)
b2PrismaticJoint.EnableLimit = new_instancemethod(_Box2D2.b2PrismaticJoint_EnableLimit,None,b2PrismaticJoint)
b2PrismaticJoint.GetLowerLimit = new_instancemethod(_Box2D2.b2PrismaticJoint_GetLowerLimit,None,b2PrismaticJoint)
b2PrismaticJoint.GetUpperLimit = new_instancemethod(_Box2D2.b2PrismaticJoint_GetUpperLimit,None,b2PrismaticJoint)
b2PrismaticJoint.SetLimits = new_instancemethod(_Box2D2.b2PrismaticJoint_SetLimits,None,b2PrismaticJoint)
b2PrismaticJoint.IsMotorEnabled = new_instancemethod(_Box2D2.b2PrismaticJoint_IsMotorEnabled,None,b2PrismaticJoint)
b2PrismaticJoint.EnableMotor = new_instancemethod(_Box2D2.b2PrismaticJoint_EnableMotor,None,b2PrismaticJoint)
b2PrismaticJoint.SetMotorSpeed = new_instancemethod(_Box2D2.b2PrismaticJoint_SetMotorSpeed,None,b2PrismaticJoint)
b2PrismaticJoint.GetMotorSpeed = new_instancemethod(_Box2D2.b2PrismaticJoint_GetMotorSpeed,None,b2PrismaticJoint)
b2PrismaticJoint.SetMaxMotorForce = new_instancemethod(_Box2D2.b2PrismaticJoint_SetMaxMotorForce,None,b2PrismaticJoint)
b2PrismaticJoint.GetMotorForce = new_instancemethod(_Box2D2.b2PrismaticJoint_GetMotorForce,None,b2PrismaticJoint)
b2PrismaticJoint_swigregister = _Box2D2.b2PrismaticJoint_swigregister
b2PrismaticJoint_swigregister(b2PrismaticJoint)

class b2RevoluteJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2RevoluteJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2RevoluteJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2RevoluteJointDef_swiginit(self,apply(_Box2D2.new_b2RevoluteJointDef, args))
    __swig_setmethods__["localAnchor1"] = _Box2D2.b2RevoluteJointDef_localAnchor1_set
    __swig_getmethods__["localAnchor1"] = _Box2D2.b2RevoluteJointDef_localAnchor1_get
    __swig_setmethods__["localAnchor2"] = _Box2D2.b2RevoluteJointDef_localAnchor2_set
    __swig_getmethods__["localAnchor2"] = _Box2D2.b2RevoluteJointDef_localAnchor2_get
    __swig_setmethods__["referenceAngle"] = _Box2D2.b2RevoluteJointDef_referenceAngle_set
    __swig_getmethods__["referenceAngle"] = _Box2D2.b2RevoluteJointDef_referenceAngle_get
    __swig_setmethods__["enableLimit"] = _Box2D2.b2RevoluteJointDef_enableLimit_set
    __swig_getmethods__["enableLimit"] = _Box2D2.b2RevoluteJointDef_enableLimit_get
    __swig_setmethods__["lowerAngle"] = _Box2D2.b2RevoluteJointDef_lowerAngle_set
    __swig_getmethods__["lowerAngle"] = _Box2D2.b2RevoluteJointDef_lowerAngle_get
    __swig_setmethods__["upperAngle"] = _Box2D2.b2RevoluteJointDef_upperAngle_set
    __swig_getmethods__["upperAngle"] = _Box2D2.b2RevoluteJointDef_upperAngle_get
    __swig_setmethods__["enableMotor"] = _Box2D2.b2RevoluteJointDef_enableMotor_set
    __swig_getmethods__["enableMotor"] = _Box2D2.b2RevoluteJointDef_enableMotor_get
    __swig_setmethods__["motorSpeed"] = _Box2D2.b2RevoluteJointDef_motorSpeed_set
    __swig_getmethods__["motorSpeed"] = _Box2D2.b2RevoluteJointDef_motorSpeed_get
    __swig_setmethods__["maxMotorTorque"] = _Box2D2.b2RevoluteJointDef_maxMotorTorque_set
    __swig_getmethods__["maxMotorTorque"] = _Box2D2.b2RevoluteJointDef_maxMotorTorque_get
    __swig_destroy__ = _Box2D2.delete_b2RevoluteJointDef
b2RevoluteJointDef.Initialize = new_instancemethod(_Box2D2.b2RevoluteJointDef_Initialize,None,b2RevoluteJointDef)
b2RevoluteJointDef_swigregister = _Box2D2.b2RevoluteJointDef_swigregister
b2RevoluteJointDef_swigregister(b2RevoluteJointDef)

class b2RevoluteJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2RevoluteJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2RevoluteJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2RevoluteJoint_swiginit(self,apply(_Box2D2.new_b2RevoluteJoint, args))
    __swig_setmethods__["m_localAnchor1"] = _Box2D2.b2RevoluteJoint_m_localAnchor1_set
    __swig_getmethods__["m_localAnchor1"] = _Box2D2.b2RevoluteJoint_m_localAnchor1_get
    __swig_setmethods__["m_localAnchor2"] = _Box2D2.b2RevoluteJoint_m_localAnchor2_set
    __swig_getmethods__["m_localAnchor2"] = _Box2D2.b2RevoluteJoint_m_localAnchor2_get
    __swig_setmethods__["m_pivotForce"] = _Box2D2.b2RevoluteJoint_m_pivotForce_set
    __swig_getmethods__["m_pivotForce"] = _Box2D2.b2RevoluteJoint_m_pivotForce_get
    __swig_setmethods__["m_motorForce"] = _Box2D2.b2RevoluteJoint_m_motorForce_set
    __swig_getmethods__["m_motorForce"] = _Box2D2.b2RevoluteJoint_m_motorForce_get
    __swig_setmethods__["m_limitForce"] = _Box2D2.b2RevoluteJoint_m_limitForce_set
    __swig_getmethods__["m_limitForce"] = _Box2D2.b2RevoluteJoint_m_limitForce_get
    __swig_setmethods__["m_limitPositionImpulse"] = _Box2D2.b2RevoluteJoint_m_limitPositionImpulse_set
    __swig_getmethods__["m_limitPositionImpulse"] = _Box2D2.b2RevoluteJoint_m_limitPositionImpulse_get
    __swig_setmethods__["m_pivotMass"] = _Box2D2.b2RevoluteJoint_m_pivotMass_set
    __swig_getmethods__["m_pivotMass"] = _Box2D2.b2RevoluteJoint_m_pivotMass_get
    __swig_setmethods__["m_motorMass"] = _Box2D2.b2RevoluteJoint_m_motorMass_set
    __swig_getmethods__["m_motorMass"] = _Box2D2.b2RevoluteJoint_m_motorMass_get
    __swig_setmethods__["m_enableMotor"] = _Box2D2.b2RevoluteJoint_m_enableMotor_set
    __swig_getmethods__["m_enableMotor"] = _Box2D2.b2RevoluteJoint_m_enableMotor_get
    __swig_setmethods__["m_maxMotorTorque"] = _Box2D2.b2RevoluteJoint_m_maxMotorTorque_set
    __swig_getmethods__["m_maxMotorTorque"] = _Box2D2.b2RevoluteJoint_m_maxMotorTorque_get
    __swig_setmethods__["m_motorSpeed"] = _Box2D2.b2RevoluteJoint_m_motorSpeed_set
    __swig_getmethods__["m_motorSpeed"] = _Box2D2.b2RevoluteJoint_m_motorSpeed_get
    __swig_setmethods__["m_enableLimit"] = _Box2D2.b2RevoluteJoint_m_enableLimit_set
    __swig_getmethods__["m_enableLimit"] = _Box2D2.b2RevoluteJoint_m_enableLimit_get
    __swig_setmethods__["m_referenceAngle"] = _Box2D2.b2RevoluteJoint_m_referenceAngle_set
    __swig_getmethods__["m_referenceAngle"] = _Box2D2.b2RevoluteJoint_m_referenceAngle_get
    __swig_setmethods__["m_lowerAngle"] = _Box2D2.b2RevoluteJoint_m_lowerAngle_set
    __swig_getmethods__["m_lowerAngle"] = _Box2D2.b2RevoluteJoint_m_lowerAngle_get
    __swig_setmethods__["m_upperAngle"] = _Box2D2.b2RevoluteJoint_m_upperAngle_set
    __swig_getmethods__["m_upperAngle"] = _Box2D2.b2RevoluteJoint_m_upperAngle_get
    __swig_setmethods__["m_limitState"] = _Box2D2.b2RevoluteJoint_m_limitState_set
    __swig_getmethods__["m_limitState"] = _Box2D2.b2RevoluteJoint_m_limitState_get
    __swig_destroy__ = _Box2D2.delete_b2RevoluteJoint
b2RevoluteJoint.GetJointAngle = new_instancemethod(_Box2D2.b2RevoluteJoint_GetJointAngle,None,b2RevoluteJoint)
b2RevoluteJoint.GetJointSpeed = new_instancemethod(_Box2D2.b2RevoluteJoint_GetJointSpeed,None,b2RevoluteJoint)
b2RevoluteJoint.IsLimitEnabled = new_instancemethod(_Box2D2.b2RevoluteJoint_IsLimitEnabled,None,b2RevoluteJoint)
b2RevoluteJoint.EnableLimit = new_instancemethod(_Box2D2.b2RevoluteJoint_EnableLimit,None,b2RevoluteJoint)
b2RevoluteJoint.GetLowerLimit = new_instancemethod(_Box2D2.b2RevoluteJoint_GetLowerLimit,None,b2RevoluteJoint)
b2RevoluteJoint.GetUpperLimit = new_instancemethod(_Box2D2.b2RevoluteJoint_GetUpperLimit,None,b2RevoluteJoint)
b2RevoluteJoint.SetLimits = new_instancemethod(_Box2D2.b2RevoluteJoint_SetLimits,None,b2RevoluteJoint)
b2RevoluteJoint.IsMotorEnabled = new_instancemethod(_Box2D2.b2RevoluteJoint_IsMotorEnabled,None,b2RevoluteJoint)
b2RevoluteJoint.EnableMotor = new_instancemethod(_Box2D2.b2RevoluteJoint_EnableMotor,None,b2RevoluteJoint)
b2RevoluteJoint.SetMotorSpeed = new_instancemethod(_Box2D2.b2RevoluteJoint_SetMotorSpeed,None,b2RevoluteJoint)
b2RevoluteJoint.GetMotorSpeed = new_instancemethod(_Box2D2.b2RevoluteJoint_GetMotorSpeed,None,b2RevoluteJoint)
b2RevoluteJoint.SetMaxMotorTorque = new_instancemethod(_Box2D2.b2RevoluteJoint_SetMaxMotorTorque,None,b2RevoluteJoint)
b2RevoluteJoint.GetMotorTorque = new_instancemethod(_Box2D2.b2RevoluteJoint_GetMotorTorque,None,b2RevoluteJoint)
b2RevoluteJoint_swigregister = _Box2D2.b2RevoluteJoint_swigregister
b2RevoluteJoint_swigregister(b2RevoluteJoint)

class b2PulleyJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PulleyJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PulleyJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PulleyJointDef_swiginit(self,apply(_Box2D2.new_b2PulleyJointDef, args))
    __swig_setmethods__["groundAnchor1"] = _Box2D2.b2PulleyJointDef_groundAnchor1_set
    __swig_getmethods__["groundAnchor1"] = _Box2D2.b2PulleyJointDef_groundAnchor1_get
    __swig_setmethods__["groundAnchor2"] = _Box2D2.b2PulleyJointDef_groundAnchor2_set
    __swig_getmethods__["groundAnchor2"] = _Box2D2.b2PulleyJointDef_groundAnchor2_get
    __swig_setmethods__["localAnchor1"] = _Box2D2.b2PulleyJointDef_localAnchor1_set
    __swig_getmethods__["localAnchor1"] = _Box2D2.b2PulleyJointDef_localAnchor1_get
    __swig_setmethods__["localAnchor2"] = _Box2D2.b2PulleyJointDef_localAnchor2_set
    __swig_getmethods__["localAnchor2"] = _Box2D2.b2PulleyJointDef_localAnchor2_get
    __swig_setmethods__["length1"] = _Box2D2.b2PulleyJointDef_length1_set
    __swig_getmethods__["length1"] = _Box2D2.b2PulleyJointDef_length1_get
    __swig_setmethods__["maxLength1"] = _Box2D2.b2PulleyJointDef_maxLength1_set
    __swig_getmethods__["maxLength1"] = _Box2D2.b2PulleyJointDef_maxLength1_get
    __swig_setmethods__["length2"] = _Box2D2.b2PulleyJointDef_length2_set
    __swig_getmethods__["length2"] = _Box2D2.b2PulleyJointDef_length2_get
    __swig_setmethods__["maxLength2"] = _Box2D2.b2PulleyJointDef_maxLength2_set
    __swig_getmethods__["maxLength2"] = _Box2D2.b2PulleyJointDef_maxLength2_get
    __swig_setmethods__["ratio"] = _Box2D2.b2PulleyJointDef_ratio_set
    __swig_getmethods__["ratio"] = _Box2D2.b2PulleyJointDef_ratio_get
    __swig_destroy__ = _Box2D2.delete_b2PulleyJointDef
b2PulleyJointDef.Initialize = new_instancemethod(_Box2D2.b2PulleyJointDef_Initialize,None,b2PulleyJointDef)
b2PulleyJointDef_swigregister = _Box2D2.b2PulleyJointDef_swigregister
b2PulleyJointDef_swigregister(b2PulleyJointDef)
b2_minPulleyLength = cvar.b2_minPulleyLength

class b2PulleyJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2PulleyJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2PulleyJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2PulleyJoint_swiginit(self,apply(_Box2D2.new_b2PulleyJoint, args))
    __swig_setmethods__["m_ground"] = _Box2D2.b2PulleyJoint_m_ground_set
    __swig_getmethods__["m_ground"] = _Box2D2.b2PulleyJoint_m_ground_get
    __swig_setmethods__["m_groundAnchor1"] = _Box2D2.b2PulleyJoint_m_groundAnchor1_set
    __swig_getmethods__["m_groundAnchor1"] = _Box2D2.b2PulleyJoint_m_groundAnchor1_get
    __swig_setmethods__["m_groundAnchor2"] = _Box2D2.b2PulleyJoint_m_groundAnchor2_set
    __swig_getmethods__["m_groundAnchor2"] = _Box2D2.b2PulleyJoint_m_groundAnchor2_get
    __swig_setmethods__["m_localAnchor1"] = _Box2D2.b2PulleyJoint_m_localAnchor1_set
    __swig_getmethods__["m_localAnchor1"] = _Box2D2.b2PulleyJoint_m_localAnchor1_get
    __swig_setmethods__["m_localAnchor2"] = _Box2D2.b2PulleyJoint_m_localAnchor2_set
    __swig_getmethods__["m_localAnchor2"] = _Box2D2.b2PulleyJoint_m_localAnchor2_get
    __swig_setmethods__["m_u1"] = _Box2D2.b2PulleyJoint_m_u1_set
    __swig_getmethods__["m_u1"] = _Box2D2.b2PulleyJoint_m_u1_get
    __swig_setmethods__["m_u2"] = _Box2D2.b2PulleyJoint_m_u2_set
    __swig_getmethods__["m_u2"] = _Box2D2.b2PulleyJoint_m_u2_get
    __swig_setmethods__["m_constant"] = _Box2D2.b2PulleyJoint_m_constant_set
    __swig_getmethods__["m_constant"] = _Box2D2.b2PulleyJoint_m_constant_get
    __swig_setmethods__["m_ratio"] = _Box2D2.b2PulleyJoint_m_ratio_set
    __swig_getmethods__["m_ratio"] = _Box2D2.b2PulleyJoint_m_ratio_get
    __swig_setmethods__["m_maxLength1"] = _Box2D2.b2PulleyJoint_m_maxLength1_set
    __swig_getmethods__["m_maxLength1"] = _Box2D2.b2PulleyJoint_m_maxLength1_get
    __swig_setmethods__["m_maxLength2"] = _Box2D2.b2PulleyJoint_m_maxLength2_set
    __swig_getmethods__["m_maxLength2"] = _Box2D2.b2PulleyJoint_m_maxLength2_get
    __swig_setmethods__["m_pulleyMass"] = _Box2D2.b2PulleyJoint_m_pulleyMass_set
    __swig_getmethods__["m_pulleyMass"] = _Box2D2.b2PulleyJoint_m_pulleyMass_get
    __swig_setmethods__["m_limitMass1"] = _Box2D2.b2PulleyJoint_m_limitMass1_set
    __swig_getmethods__["m_limitMass1"] = _Box2D2.b2PulleyJoint_m_limitMass1_get
    __swig_setmethods__["m_limitMass2"] = _Box2D2.b2PulleyJoint_m_limitMass2_set
    __swig_getmethods__["m_limitMass2"] = _Box2D2.b2PulleyJoint_m_limitMass2_get
    __swig_setmethods__["m_force"] = _Box2D2.b2PulleyJoint_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2PulleyJoint_m_force_get
    __swig_setmethods__["m_limitForce1"] = _Box2D2.b2PulleyJoint_m_limitForce1_set
    __swig_getmethods__["m_limitForce1"] = _Box2D2.b2PulleyJoint_m_limitForce1_get
    __swig_setmethods__["m_limitForce2"] = _Box2D2.b2PulleyJoint_m_limitForce2_set
    __swig_getmethods__["m_limitForce2"] = _Box2D2.b2PulleyJoint_m_limitForce2_get
    __swig_setmethods__["m_positionImpulse"] = _Box2D2.b2PulleyJoint_m_positionImpulse_set
    __swig_getmethods__["m_positionImpulse"] = _Box2D2.b2PulleyJoint_m_positionImpulse_get
    __swig_setmethods__["m_limitPositionImpulse1"] = _Box2D2.b2PulleyJoint_m_limitPositionImpulse1_set
    __swig_getmethods__["m_limitPositionImpulse1"] = _Box2D2.b2PulleyJoint_m_limitPositionImpulse1_get
    __swig_setmethods__["m_limitPositionImpulse2"] = _Box2D2.b2PulleyJoint_m_limitPositionImpulse2_set
    __swig_getmethods__["m_limitPositionImpulse2"] = _Box2D2.b2PulleyJoint_m_limitPositionImpulse2_get
    __swig_setmethods__["m_state"] = _Box2D2.b2PulleyJoint_m_state_set
    __swig_getmethods__["m_state"] = _Box2D2.b2PulleyJoint_m_state_get
    __swig_setmethods__["m_limitState1"] = _Box2D2.b2PulleyJoint_m_limitState1_set
    __swig_getmethods__["m_limitState1"] = _Box2D2.b2PulleyJoint_m_limitState1_get
    __swig_setmethods__["m_limitState2"] = _Box2D2.b2PulleyJoint_m_limitState2_set
    __swig_getmethods__["m_limitState2"] = _Box2D2.b2PulleyJoint_m_limitState2_get
    __swig_destroy__ = _Box2D2.delete_b2PulleyJoint
b2PulleyJoint.GetGroundAnchor1 = new_instancemethod(_Box2D2.b2PulleyJoint_GetGroundAnchor1,None,b2PulleyJoint)
b2PulleyJoint.GetGroundAnchor2 = new_instancemethod(_Box2D2.b2PulleyJoint_GetGroundAnchor2,None,b2PulleyJoint)
b2PulleyJoint.GetLength1 = new_instancemethod(_Box2D2.b2PulleyJoint_GetLength1,None,b2PulleyJoint)
b2PulleyJoint.GetLength2 = new_instancemethod(_Box2D2.b2PulleyJoint_GetLength2,None,b2PulleyJoint)
b2PulleyJoint.GetRatio = new_instancemethod(_Box2D2.b2PulleyJoint_GetRatio,None,b2PulleyJoint)
b2PulleyJoint_swigregister = _Box2D2.b2PulleyJoint_swigregister
b2PulleyJoint_swigregister(b2PulleyJoint)

class b2GearJointDef(b2JointDef):
    __swig_setmethods__ = {}
    for _s in [b2JointDef]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2GearJointDef, name, value)
    __swig_getmethods__ = {}
    for _s in [b2JointDef]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2GearJointDef, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2GearJointDef_swiginit(self,apply(_Box2D2.new_b2GearJointDef, args))
    __swig_setmethods__["joint1"] = _Box2D2.b2GearJointDef_joint1_set
    __swig_getmethods__["joint1"] = _Box2D2.b2GearJointDef_joint1_get
    __swig_setmethods__["joint2"] = _Box2D2.b2GearJointDef_joint2_set
    __swig_getmethods__["joint2"] = _Box2D2.b2GearJointDef_joint2_get
    __swig_setmethods__["ratio"] = _Box2D2.b2GearJointDef_ratio_set
    __swig_getmethods__["ratio"] = _Box2D2.b2GearJointDef_ratio_get
    __swig_destroy__ = _Box2D2.delete_b2GearJointDef
b2GearJointDef_swigregister = _Box2D2.b2GearJointDef_swigregister
b2GearJointDef_swigregister(b2GearJointDef)

class b2GearJoint(b2Joint):
    __swig_setmethods__ = {}
    for _s in [b2Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, b2GearJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [b2Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, b2GearJoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        _Box2D2.b2GearJoint_swiginit(self,apply(_Box2D2.new_b2GearJoint, args))
    __swig_setmethods__["m_ground1"] = _Box2D2.b2GearJoint_m_ground1_set
    __swig_getmethods__["m_ground1"] = _Box2D2.b2GearJoint_m_ground1_get
    __swig_setmethods__["m_ground2"] = _Box2D2.b2GearJoint_m_ground2_set
    __swig_getmethods__["m_ground2"] = _Box2D2.b2GearJoint_m_ground2_get
    __swig_setmethods__["m_revolute1"] = _Box2D2.b2GearJoint_m_revolute1_set
    __swig_getmethods__["m_revolute1"] = _Box2D2.b2GearJoint_m_revolute1_get
    __swig_setmethods__["m_prismatic1"] = _Box2D2.b2GearJoint_m_prismatic1_set
    __swig_getmethods__["m_prismatic1"] = _Box2D2.b2GearJoint_m_prismatic1_get
    __swig_setmethods__["m_revolute2"] = _Box2D2.b2GearJoint_m_revolute2_set
    __swig_getmethods__["m_revolute2"] = _Box2D2.b2GearJoint_m_revolute2_get
    __swig_setmethods__["m_prismatic2"] = _Box2D2.b2GearJoint_m_prismatic2_set
    __swig_getmethods__["m_prismatic2"] = _Box2D2.b2GearJoint_m_prismatic2_get
    __swig_setmethods__["m_groundAnchor1"] = _Box2D2.b2GearJoint_m_groundAnchor1_set
    __swig_getmethods__["m_groundAnchor1"] = _Box2D2.b2GearJoint_m_groundAnchor1_get
    __swig_setmethods__["m_groundAnchor2"] = _Box2D2.b2GearJoint_m_groundAnchor2_set
    __swig_getmethods__["m_groundAnchor2"] = _Box2D2.b2GearJoint_m_groundAnchor2_get
    __swig_setmethods__["m_localAnchor1"] = _Box2D2.b2GearJoint_m_localAnchor1_set
    __swig_getmethods__["m_localAnchor1"] = _Box2D2.b2GearJoint_m_localAnchor1_get
    __swig_setmethods__["m_localAnchor2"] = _Box2D2.b2GearJoint_m_localAnchor2_set
    __swig_getmethods__["m_localAnchor2"] = _Box2D2.b2GearJoint_m_localAnchor2_get
    __swig_setmethods__["m_J"] = _Box2D2.b2GearJoint_m_J_set
    __swig_getmethods__["m_J"] = _Box2D2.b2GearJoint_m_J_get
    __swig_setmethods__["m_constant"] = _Box2D2.b2GearJoint_m_constant_set
    __swig_getmethods__["m_constant"] = _Box2D2.b2GearJoint_m_constant_get
    __swig_setmethods__["m_ratio"] = _Box2D2.b2GearJoint_m_ratio_set
    __swig_getmethods__["m_ratio"] = _Box2D2.b2GearJoint_m_ratio_get
    __swig_setmethods__["m_mass"] = _Box2D2.b2GearJoint_m_mass_set
    __swig_getmethods__["m_mass"] = _Box2D2.b2GearJoint_m_mass_get
    __swig_setmethods__["m_force"] = _Box2D2.b2GearJoint_m_force_set
    __swig_getmethods__["m_force"] = _Box2D2.b2GearJoint_m_force_get
    __swig_destroy__ = _Box2D2.delete_b2GearJoint
b2GearJoint.GetRatio = new_instancemethod(_Box2D2.b2GearJoint_GetRatio,None,b2GearJoint)
b2GearJoint_swigregister = _Box2D2.b2GearJoint_swigregister
b2GearJoint_swigregister(b2GearJoint)



