Make layer activation via CreateDevice struct or env variable
Also finish making all activated layers per icd and per gpu.
diff --git a/include/xgl.h b/include/xgl.h
index 64734e1..25812c9 100644
--- a/include/xgl.h
+++ b/include/xgl.h
@@ -871,6 +871,7 @@
// IMG CHANGE BEGIN - support for vertex input description
XGL_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_CREATE_INFO = 34,
// IMG CHANGE END
+ XGL_STRUCTURE_TYPE_LAYER_CREATE_INFO = 35,
XGL_MAX_ENUM(_XGL_STRUCTURE_TYPE)
} XGL_STRUCTURE_TYPE;
@@ -1118,6 +1119,14 @@
XGL_FLAGS flags; // XGL_DEVICE_CREATE_FLAGS
} XGL_DEVICE_CREATE_INFO;
+typedef struct _XGL_LAYER_CREATE_INFO
+{
+ XGL_STRUCTURE_TYPE sType; // Should be XGL_STRUCTURE_TYPE_LAYER_CREATE_INFO
+ XGL_VOID* pNext; // Pointer to next structure
+ XGL_UINT layerCount;
+ const XGL_CHAR *const* ppActiveLayerNames; // layer library name of form libXGLLayer<Name>.so
+} XGL_LAYER_CREATE_INFO;
+
typedef struct _XGL_PHYSICAL_GPU_QUEUE_PROPERTIES
{
XGL_SIZE structSize; // Size of structure in bytes