//==========================================================================//
// File:	 EffectLibrary.hpp												//
// Project:  gosFX					                                        //
// Contents: Base Effect Component											//
//--------------------------------------------------------------------------//
// Date      Who    Modification                                            //
// 10/07/98  JMA    Created													//
//																			//
//--------------------------------------------------------------------------//
// Copyright (C) 1997-1998, Virtual World Entertainment, Inc.               //
// All Rights reserved worldwide                                            //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL              //
//==========================================================================//

#pragma once

#include "Adept.hpp"
#include <gosFX\EffectLibrary.hpp>

namespace Adept
{
	class ResourceEffectLibrary:
		public gosFX::EffectLibrary
	{
	//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	// Constructors/Destructors
	//
	public:
		ResourceEffectLibrary(bool preload=true);
		~ResourceEffectLibrary();

	//----------------------------------------------------------------------------
	// Shape table
	//
	public:
		MidLevelRenderer::MLRShape*
			UseShape(Stuff::MString& shape_file);
		void
			LoadDebrisArray(
				gosFX::DebrisCloud__Specification *spec,
				Stuff::MString& debris_file
			);

	protected:
		Stuff::HashOf<MidLevelRenderer::MLRShape*, Stuff::MString>
			m_shapeHash;
	};
}
