///////////////////////////////////////////////////////////////////////////////////////////////////////////////
- class effect : protected iunknown_<d3deffect>
+ class effect_shared_memory
+ {
+ };
+
+ class effect : protected iunknown_<d3deffect>, public effect_base
{
public:
enum exception_codes
template <shader_model_type_e SHADER_MODEL_TYPE, unsigned char SHADER_MAJOR, unsigned char SHADER_MINOR>
effect(device &d, const construct_by_file &f,
const shader_model<SHADER_MODEL_TYPE, SHADER_MAJOR, SHADER_MINOR> &model,
- const ::std::map<::std::string,::std::string> defines,
- DWORD flags,
- LPD3DXEFFECTPOOL effect_pool) : m_dev(d)
+ const defines_t defines=defines_t(),
+ DWORD flags=0,
+ effect_shared_memory effect_pool=effect_shared_memory()) : m_dev(d)
{
_cunstruct_a(
f.filename.c_str(), defines, include, model.to_string(), hlsl_flags, fx_flags/*, m_dev.get_d3ddevice_ptr()*/,
template <shader_model_type_e SHADER_MODEL_TYPE, unsigned char SHADER_MAJOR, unsigned char SHADER_MINOR>
effect(device &d, const construct_by_file_lpcstr &f,
const shader_model<SHADER_MODEL_TYPE, SHADER_MAJOR, SHADER_MINOR> &model,
- CONST D3D9_SHADER_MACRO *defines=NULL,
- ID3D9Include *include=NULL,
- ID3D9EffectPool *effect_pool=NULL,
- UINT fx_flags=0,
- UINT hlsl_flags=0,
- ID3DX9ThreadPump *pump=NULL,
- HRESULT *p_hresult=NULL) : m_dev(d)
+ const defines_t defines=defines_t(),
+ DWORD flags=0,
+ effect_shared_memory effect_pool=effect_shared_memory()) : m_dev(d)
{
_cunstruct_a(
f.filename, defines, include, model.to_string(), hlsl_flags, fx_flags/*, m_dev.get_d3ddevice_ptr()*/,
template <shader_model_type_e SHADER_MODEL_TYPE, unsigned char SHADER_MAJOR, unsigned char SHADER_MINOR>
effect(device &d, const construct_by_file_lpctstr &f,
const shader_model<SHADER_MODEL_TYPE, SHADER_MAJOR, SHADER_MINOR> &model,
- CONST D3D9_SHADER_MACRO *defines=NULL,
- ID3D9Include *include=NULL,
- ID3D9EffectPool *effect_pool=NULL,
- UINT fx_flags=0,
- UINT hlsl_flags=0,
- ID3DX9ThreadPump *pump=NULL,
- HRESULT *p_hresult=NULL) : m_dev(d)
+ const defines_t defines=defines_t(),
+ DWORD flags=0,
+ effect_shared_memory effect_pool=effect_shared_memory()) : m_dev(d)
{
_cunstruct_aw(
f.filename, defines, include, model.to_string(), hlsl_flags, fx_flags/*, m_dev.get_d3ddevice_ptr()*/,