//
// Asura_Physics_Constraint_SharedPoint.h
//
// Created by KJFL - 18 July 2007
//
// Copyright (C) 2007 Rebellion, All Rights Reserved.
//


#ifdef ASURA_USE_PRAGMA_ONCE
#pragma once
#endif

#ifndef __ASURA_PHYSICS_CONSTRAINT_SHAREDPOINT_H__
#define __ASURA_PHYSICS_CONSTRAINT_SHAREDPOINT_H__

#ifdef ASURA_PHYSICS_SUPPORT_CONSTRAINTS

#include "Core/Asura_Maths.h"
#include "Physics/Constraints/Asura_Physics_Constraint.h"

class Asura_Physics_RigidBodyInstance;

class Asura_Physics_Constraint_SharedPoint : public Asura_Physics_Constraint
{
	public:

		Asura_Physics_Constraint_SharedPoint( Asura_Physics_RigidBodyInstance* pxBody1, const Asura_AVector3& xPositionOnBody1, Asura_Physics_RigidBodyInstance* pxBody2, const Asura_AVector3& xPositionOnBody2  );

		virtual ~Asura_Physics_Constraint_SharedPoint() {}
		
		virtual void ResolveConstraint( void );

		// set joint-breaking speed
		// set joint-breaking distance
	
	protected: 

		Asura_AVector3	m_xPositionOnBody1;
		Asura_AVector3	m_xPositionOnBody2;
};

#endif

#endif//__ASURA_PHYSICS_CONSTRAINT_SHAREDPOINT_H__

