/* -----------------------------------------------------------------------------
	GSFramework
	Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
----------------------------------------------------------------------------- */


#ifndef	__IEMBEDDEDRESOURCEHANDLER__
#define	__IEMBEDDEDRESOURCEHANDLER__


		#include "ntypes.h"


namespace GS {
	class String;

	namespace NML { class Tag; }
	namespace Core {

//
struct	IEmbeddedResourceHandler
{
virtual	bool		ExtractEmbeddedMaterial(String &nUnused(out), NML::Tag &, const char *nUnused(context), int nUnused(slot)) { return false; }
virtual	bool		ExtractEmbeddedShaderTree(String &nUnused(out), NML::Tag &, const char *nUnused(context)) { return false; }

virtual	~IEmbeddedResourceHandler() {}

static	IEmbeddedResourceHandler *Get();
static	void		Set(IEmbeddedResourceHandler *);
};

	} // Core
} // GS


#endif	// __IEMBEDDEDRESOURCEHANDLER__