#pragma once

//! @file Mix/Dynamics/IPointJoint.h
//! @brief ポイントジョイントインターフェースインクルードファイル

#include "Mix/Dynamics/IJoint.h"

namespace Mix{ namespace Dynamics{

	//! @class IPointJoint
	//! @brief ポイントジョイントインターフェース
	//! @note 一点で接合します。
	class IPointJoint : public Mix::Dynamics::IJoint
	{
	protected:
		//! @brief デストラクタ
		virtual ~IPointJoint( void ){}

	public:
		//! @brief ピボットのスプリングのやわらかさを取得します
		//! @return やわらかさを返します
		virtual Float32 GetPivotSpring( void ) const = 0;
		//! @brief ピボットのスプリングのやわらかさを設定します
		//! @param[in] spring やわらかさ( 0.0f〜1.0f )
		virtual void SetPivotSpring( Float32 spring ) = 0;

		//! @brief ピボットのダンパーの減衰力を取得します
		//! @return 減衰力を返します
		virtual Float32 GetPivotDamper( void ) const = 0;
		//! @brief ピボットのダンパーの減衰力を設定します
		//! @param[in] damper 減衰力( 0.2f〜0.8f )
		virtual void SetPivotDamper( Float32 damper ) = 0;
	};

}}
