summaryrefslogtreecommitdiff
path: root/test/Effects11/Binary/EffectStateBase11.h
diff options
context:
space:
mode:
authorJason Maskell <[email protected]>2016-05-09 10:39:54 +0200
committerJason Maskell <[email protected]>2016-05-09 10:39:54 +0200
commit79b3462799c28af8ba586349bd671b1b56e72353 (patch)
tree3b06e36c390254c0dc7f3733a0d32af213d87293 /test/Effects11/Binary/EffectStateBase11.h
downloadwaveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.tar.xz
waveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.zip
Initial commit with PS4 and XBone stuff trimmed.
Diffstat (limited to 'test/Effects11/Binary/EffectStateBase11.h')
-rw-r--r--test/Effects11/Binary/EffectStateBase11.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/test/Effects11/Binary/EffectStateBase11.h b/test/Effects11/Binary/EffectStateBase11.h
new file mode 100644
index 0000000..3727da2
--- /dev/null
+++ b/test/Effects11/Binary/EffectStateBase11.h
@@ -0,0 +1,49 @@
+//////////////////////////////////////////////////////////////////////////////
+//
+// Copyright (C) Microsoft Corporation. All Rights Reserved.
+//
+// File: EffectStateBase11.h
+// Content: D3DX11 Effects States Header
+//
+//////////////////////////////////////////////////////////////////////////////
+
+#pragma once
+
+namespace D3DX11Effects
+{
+
+//////////////////////////////////////////////////////////////////////////
+// Effect HLSL states and late resolve lists
+//////////////////////////////////////////////////////////////////////////
+
+struct RValue
+{
+ const char *m_pName;
+ UINT m_Value;
+};
+
+#define RVALUE_END() { NULL, 0U }
+#define RVALUE_ENTRY(prefix, x) { #x, (UINT)prefix##x }
+
+enum ELhsType;
+
+struct LValue
+{
+ const char *m_pName; // name of the LHS side of expression
+ EBlockType m_BlockType; // type of block it can appear in
+ D3D10_SHADER_VARIABLE_TYPE m_Type; // data type allows
+ UINT m_Cols; // number of [m_Type]'s required (1 for a scalar, 4 for a vector)
+ UINT m_Indices; // max index allowable (if LHS is an array; otherwise this is 1)
+ BOOL m_VectorScalar; // can be both vector and scalar (setting as a scalar sets all m_Indices values simultaneously)
+ CONST RValue *m_pRValue; // pointer to table of allowable RHS "late resolve" values
+ ELhsType m_LhsType; // ELHS_* enum value that corresponds to this entry
+ UINT m_Offset; // offset into the given block type where this value should be written
+ UINT m_Stride; // for vectors, byte stride between two consecutive values. if 0, m_Type's size is used
+};
+
+#define LVALUE_END() { NULL, D3D10_SVT_UINT, 0, 0, 0, NULL }
+
+extern CONST LValue g_lvGeneral[];
+extern CONST UINT g_lvGeneralCount;
+
+} // end namespace D3DX11Effects