#pragma once

#include "Mix/Tool/CLR/Core/Dynamics/Shape.h"

namespace Mix{ namespace Tool{ namespace Win32{ namespace Dynamics{
	class BoxShape;
}}}}

namespace Mix{ namespace Tool{ namespace Dynamics{

	public ref class BoxShape : public Mix::Tool::Dynamics::Shape
	{
	internal:
		Mix::Tool::Win32::Dynamics::BoxShape* impl;
		bool m_bInternalImpl;

	internal:
		BoxShape( Mix::Tool::Win32::Dynamics::BoxShape* _impl );
		BoxShape( const D3DXVECTOR3& halfExtens );

	public:
		BoxShape( Mix::Tool::Math::Vector^ halfExtens );
		~BoxShape( void );

		property Mix::Tool::Math::Vector^ HalfExtents
		{
			Mix::Tool::Math::Vector^ get( void );
		}

	internal:
		property Mix::Tool::Win32::Dynamics::Shape* Impl
		{
			virtual Mix::Tool::Win32::Dynamics::Shape* get( void ) override;
		}
	};

}}}
