port from perforce
This commit is contained in:
42
aiwaz/Aiwaz/Interfaces/IShaderParameterCollection.h
Normal file
42
aiwaz/Aiwaz/Interfaces/IShaderParameterCollection.h
Normal file
@@ -0,0 +1,42 @@
|
||||
#pragma once
|
||||
|
||||
struct ParameterBindType
|
||||
{
|
||||
enum Enumeration
|
||||
{
|
||||
BindBySemantic,
|
||||
BindByVariable
|
||||
};
|
||||
};
|
||||
|
||||
struct __declspec(novtable) IShaderParameter
|
||||
{
|
||||
virtual ParameterBindType::Enumeration get_ParameterNameType() const = 0;
|
||||
virtual void set_ParameterNameType(ParameterBindType::Enumeration argBindType) = 0;
|
||||
virtual void ApplyValue(ID3D10EffectVariable& argVariable) = 0;
|
||||
};
|
||||
|
||||
|
||||
struct ITexture;
|
||||
struct __declspec(novtable) IShaderParameterCollection
|
||||
{
|
||||
virtual ~IShaderParameterCollection() {}
|
||||
|
||||
virtual bool get_IsPreconditionForFollowingShaders() const = 0;
|
||||
virtual void set_IsPreconditionForFollowingShaders(bool argValue) = 0;
|
||||
|
||||
virtual void SetParameter(const string8& argParameterName,IShaderParameter* ar_Parameter_) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, ITexture& argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, float* af_Parameter_, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, float argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, D3DXVECTOR3* ar_Parameter_, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, const D3DXVECTOR3& argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, D3DXVECTOR4* ar_Parameter_, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, const D3DXVECTOR4& argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, D3DXMATRIX* argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, const D3DXMATRIX& argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, bool* ab_Parameter_, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void SetParameter(const string8& argParameterName, bool argParameter, ParameterBindType::Enumeration argParamNameType = ParameterBindType::BindBySemantic) = 0;
|
||||
virtual void RemoveParameter(const string8& argParameterName) = 0;
|
||||
|
||||
};
|
||||
Reference in New Issue
Block a user