swr: refactor swr_create_screen to allow for proper cleanup on error
[mesa.git] / src / gallium / drivers / swr / swr_screen.h
index a96dc44cf664849193bee48871310bdb1a8a4450..b80d8c70ec97a913cf0155644d02a396461d7f5a 100644 (file)
 #ifndef SWR_SCREEN_H
 #define SWR_SCREEN_H
 
+#include "swr_resource.h"
+
 #include "pipe/p_screen.h"
 #include "pipe/p_defines.h"
+#include "util/u_dl.h"
+#include "util/u_format.h"
 #include "api.h"
 
+#include "memory/TilingFunctions.h"
+
 struct sw_winsys;
 
 struct swr_screen {
    struct pipe_screen base;
+   struct pipe_context *pipe;
 
    struct pipe_fence_handle *flush_fence;
 
    struct sw_winsys *winsys;
 
+   /* Configurable environment settings */
+   boolean msaa_force_enable;
+   uint8_t msaa_max_count;
+   uint32_t client_copy_limit;
+
    HANDLE hJitMgr;
+
+   /* Dynamic backend implementations */
+   util_dl_library *pLibrary;
+   PFNSwrGetInterface pfnSwrGetInterface;
+
+   /* Do we run on Xeon Phi? */
+   bool is_knl;
 };
 
 static INLINE struct swr_screen *