//------------------------------------------------------------------------------------
// irr::scene::ILightSceneNode wrappers (parent is ISceneNode)
//------------------------------------------------------------------------------------

extern "C" 
{

	SLight* IrrScene_ILightSceneNode_getLightData(ILightSceneNode* node)
	{
		if (node)
			return &node->getLightData();
		else return 0;
	}
	
	void IrrScene_ILightSceneNode_setLightData(ILightSceneNode* node,const video::SLight& light)
	{
		if (node)
			node->setLightData(light);
	}

	void IrrScene_ILightSceneNode_setRadius(ILightSceneNode* node, f32 radius)
	{
		if (node)
			node->setRadius(radius);
	}

	f32 IrrScene_ILightSceneNode_getRadius(ILightSceneNode* node)
	{
		if (node)
			return node->getRadius();
		else return 0.0;
	}

	void IrrScene_ILightSceneNode_setLightType(ILightSceneNode* node, E_LIGHT_TYPE type)
	{
		if (node)
			node->setLightType(type);
	}

	s32 IrrScene_ILightSceneNode_getLightType(ILightSceneNode* node) // returns E_LIGHT_TYPE
	{
		if (node)
			return node->getLightType();
		else return -1;
	}

	void IrrScene_ILightSceneNode_enableCastShadow(ILightSceneNode* node, bool shadow=true)
	{
		if (node)
			node->enableCastShadow(shadow);
	}

	bool IrrScene_ILightSceneNode_getCastShadow(ILightSceneNode* node)
	{
		if (node)
			return node->getCastShadow();
		else return false;
	}

	void IrrScene_ILightSceneNode_setVisible(ILightSceneNode* node, bool isVisible) 
	{
		if (node)
			node->setVisible(isVisible);
	}

}