#pragma once struct IFile; struct __declspec(novtable) IInternalShader { virtual ~IInternalShader() {} virtual void LoadFromFile(const string16& argValue) = 0; virtual ID3D10Effect* get_DX10Effect() const = 0; }; struct __declspec(novtable) IShader { virtual ~IShader() {} virtual void LoadFromFile(const string16& argValue) = 0; virtual string8 get_TechniqueName() const = 0; virtual void set_TechniqueName(const string8& argValue) = 0; virtual ID3D10EffectTechnique* get_DX10Technique() const = 0; virtual IInternalShader* get_InternalShader() const = 0; virtual bool TryApplyNextPass() = 0; virtual void ApplyFirstPass() = 0; virtual uint32 get_CurrentRenderPass() const = 0; virtual void set_Priority(unsigned char argValue) = 0; virtual unsigned char get_Priority() const = 0; };