////////////////////////////////////////////////////////////////////////////
//
//  Crytek Engine Source File.
//  Copyright (C), Crytek Studios, 2001-2004.
// -------------------------------------------------------------------------
//  File name:   StatCGFPhysicalize.h
//  Version:     v1.00
//  Created:     8/11/2004 by Timur.
//  Compilers:   Visual Studio.NET 2003
//  Description: 
// -------------------------------------------------------------------------
//  History:
//
////////////////////////////////////////////////////////////////////////////

#ifndef __StatCGFPhysicalize_h__
#define __StatCGFPhysicalize_h__
#pragma once

#include "PhysWorld.h"
#include "CGFContent.h"

//////////////////////////////////////////////////////////////////////////
class CPhysicsInterface
{
public:
	CPhysicsInterface();
	~CPhysicsInterface();

	bool Physicalize( CNodeCGF *pNodeCGF,CContentCGF *pCGF );
	void DeletePhysicalProxySubsets( CMesh &mesh );
	void ProcessBreakablePhysics( CContentCGF *pCompiledCGF,CContentCGF *pSrcCGF );

private:
	bool PhysicalizeGeomType( int nGeomType,CNodeCGF *pNodeCGF,CContentCGF *pCGF );

	IPhysicalWorld* GetPhysicalWorld() { return m_pPhysicalWorld; }

	IPhysicalWorld *m_pPhysicalWorld;
	CPhysWorldLoader m_physLoader;
};

#endif // __StatCGFPhysicalize_h__
