/*!	
	@file
	@brief	ゲーム側から使うバーテックスシェーダー
*/



#ifndef CVertexShader_h
#define CVertexShader_h

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

#include"../template/GlobalPointer.h"
#include"../template/Mathematics.h"

#include<map>

namespace Maid
{

	class CGraphic;
	class CVertexShader  : public GlobalPointer<CGraphic>
	{
		friend CGraphic;
	public:
		virtual ~CVertexShader(){}

		virtual mstring GetID()const=0;

		void ClearConstant();
		void SetConstantF( int pos, const VECTOR4DF& value );
		void SetConstantF( int pos, const MATRIX4DF& value );

	private:
		MySTL::map<int,VECTOR4DF>	m_ConstF;
	};

}

#endif
