/*!	
	@file
	@brief	ゲーム側から使うピクセルシェーダー
*/



#ifndef CPixelShaderDefault_h
#define CPixelShaderDefault_h

#include"../Setup/CompileMode.h"
#include"../Auxiliary/mstring.h"
#include"../template/ReferenceCount.h"

#include"CPixelShader.h"
#include"CResourceNameGenerator.h"

namespace Maid
{
	class CPixelShaderDefault : public CPixelShader
	{
	public:
		CPixelShaderDefault();
		CPixelShaderDefault( const CPixelShaderDefault& rha );
		virtual ~CPixelShaderDefault();

		void Create( PIXELSHADERNAME::NAME name );

		void Delete();
		virtual mstring GetID() const;


	public:
		CPixelShaderDefault& operator = ( const CPixelShaderDefault& rha );

	private:
		mstring	m_CodeName;

		static ReferenceCount<mstring>	s_Cache;
	};

}

#endif
