Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1379)

Unified Diff: command_buffer/service/win/d3d9/effect_d3d9.h

Issue 147237: Adding GetStreamInfo functionality (and passing corresponding unit test). (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/o3d/
Patch Set: '' Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: command_buffer/service/win/d3d9/effect_d3d9.h
===================================================================
--- command_buffer/service/win/d3d9/effect_d3d9.h (revision 19749)
+++ command_buffer/service/win/d3d9/effect_d3d9.h (working copy)
@@ -80,7 +80,8 @@
class EffectD3D9 : public Effect {
public:
EffectD3D9(ID3DXEffect *d3d_effect,
- ID3DXConstantTable *fs_constant_table);
+ ID3DXConstantTable *fs_constant_table,
+ IDirect3DVertexShader9 *d3d_vertex_shader);
virtual ~EffectD3D9();
// Compiles and creates an effect from source code.
static EffectD3D9 *Create(GAPID3D9 *gapi,
@@ -101,8 +102,13 @@
EffectParamD3D9 *CreateParam(unsigned int index);
// Creates an effect parameter of the specified name.
EffectParamD3D9 *CreateParamByName(const char *name);
+ // Gets the number of stream inputs for the effect.
+ unsigned int GetStreamCount();
+ // Gets the stream data with the specified index.
+ bool GetStreamDesc(unsigned int index, unsigned int size, void *data);
private:
typedef std::vector<EffectParamD3D9 *> ParamList;
+ typedef std::vector<effect_stream::Desc> StreamList;
// Links a param into this effect.
void LinkParam(EffectParamD3D9 *param);
@@ -110,14 +116,19 @@
void UnlinkParam(EffectParamD3D9 *param);
// Sets sampler states.
bool SetSamplers(GAPID3D9 *gapi);
+ // Sets streams vector.
+ bool SetStreams();
ID3DXEffect *d3d_effect_;
+ IDirect3DVertexShader9 *d3d_vertex_shader_;
ID3DXConstantTable *fs_constant_table_;
ParamList params_;
+ StreamList streams_;
bool sync_parameters_;
ResourceID samplers_[kMaxSamplerUnits];
friend class EffectParamD3D9;
+ friend class EffectStreamD3D9;
Antoine Labour 2009/07/06 23:48:12 Not needed any more.
DISALLOW_COPY_AND_ASSIGN(EffectD3D9);
};

Powered by Google App Engine
This is Rietveld 408576698