st/dri: mv driDriverAPI to backends
authorGeorge Sapountzis <gsapountzis@gmail.com>
Thu, 8 Apr 2010 15:58:35 +0000 (18:58 +0300)
committerGeorge Sapountzis <gsapountzis@gmail.com>
Fri, 30 Jul 2010 20:43:26 +0000 (23:43 +0300)
src/gallium/state_trackers/dri/common/dri_screen.c
src/gallium/state_trackers/dri/common/dri_screen.h
src/gallium/state_trackers/dri/drm/dri2.c
src/gallium/state_trackers/dri/drm/dri2.h [deleted file]
src/gallium/state_trackers/dri/sw/drisw.c
src/gallium/state_trackers/dri/sw/drisw.h [deleted file]

index 25cad8d46c4cd3b953eceab4477a434d2cad331d..a2bccefd6c593a6e97263e5b69d057c0cb41e8a8 100644 (file)
  */
 
 #include "utils.h"
-#ifndef __NOT_HAVE_DRM_H
-#include "vblank.h"
-#endif
 #include "xmlpool.h"
 
 #include "dri_screen.h"
 #include "dri_context.h"
 #include "dri_drawable.h"
 #include "dri1_helper.h"
-#ifndef __NOT_HAVE_DRM_H
-#include "dri2.h"
-#else
-#include "drisw.h"
-#endif
 
 #include "util/u_inlines.h"
 #include "pipe/p_screen.h"
@@ -366,7 +358,7 @@ dri_destroy_screen_helper(struct dri_screen * screen)
    dri_destroy_option_cache(screen);
 }
 
-static void
+void
 dri_destroy_screen(__DRIscreen * sPriv)
 {
    struct dri_screen *screen = dri_screen(sPriv);
@@ -402,38 +394,4 @@ dri_init_screen_helper(struct dri_screen *screen,
    return dri_fill_in_modes(screen, pixel_bits);
 }
 
-/**
- * DRI driver virtual function table.
- *
- * DRI versions differ in their implementation of init_screen and swap_buffers.
- */
-const struct __DriverAPIRec driDriverAPI = {
-   .DestroyScreen = dri_destroy_screen,
-   .CreateContext = dri_create_context,
-   .DestroyContext = dri_destroy_context,
-   .CreateBuffer = dri_create_buffer,
-   .DestroyBuffer = dri_destroy_buffer,
-   .MakeCurrent = dri_make_current,
-   .UnbindContext = dri_unbind_context,
-
-#ifndef __NOT_HAVE_DRM_H
-
-   .GetSwapInfo = NULL,
-   .GetDrawableMSC = NULL,
-   .WaitForMSC = NULL,
-   .InitScreen2 = dri2_init_screen,
-
-   .InitScreen = NULL,
-   .SwapBuffers = NULL,
-   .CopySubBuffer = NULL,
-
-#else
-
-   .InitScreen = drisw_init_screen,
-   .SwapBuffers = drisw_swap_buffers,
-
-#endif
-
-};
-
 /* vim: set sw=3 ts=8 sts=3 expandtab: */
index 087ae8d2a4a2e6aa12a557021c0988a8a35052ab..cfbebb3341c55287f7f7fac96e46005716e7a261 100644 (file)
@@ -132,6 +132,9 @@ dri_init_screen_helper(struct dri_screen *screen,
 void
 dri_destroy_screen_helper(struct dri_screen * screen);
 
+void
+dri_destroy_screen(__DRIscreen * sPriv);
+
 #endif
 
 /* vim: set sw=3 ts=8 sts=3 expandtab: */
index 5c6573fa69b80adc67b7d1f231d232fb3de28adf..9965d706c894b98568a1c3b62437bf27ebb2a0f0 100644 (file)
@@ -38,9 +38,6 @@
 #include "dri_screen.h"
 #include "dri_context.h"
 #include "dri_drawable.h"
-#include "dri2.h"
-
-#include "GL/internal/dri_interface.h"
 
 /**
  * DRI2 flush extension.
@@ -497,7 +494,7 @@ static const __DRIextension *dri_screen_extensions[] = {
  *
  * Returns the __GLcontextModes supported by this driver.
  */
-const __DRIconfig **
+static const __DRIconfig **
 dri2_init_screen(__DRIscreen * sPriv)
 {
    const __DRIconfig **configs;
@@ -534,6 +531,30 @@ fail:
    return NULL;
 }
 
+/**
+ * DRI driver virtual function table.
+ *
+ * DRI versions differ in their implementation of init_screen and swap_buffers.
+ */
+const struct __DriverAPIRec driDriverAPI = {
+   .DestroyScreen = dri_destroy_screen,
+   .CreateContext = dri_create_context,
+   .DestroyContext = dri_destroy_context,
+   .CreateBuffer = dri_create_buffer,
+   .DestroyBuffer = dri_destroy_buffer,
+   .MakeCurrent = dri_make_current,
+   .UnbindContext = dri_unbind_context,
+
+   .GetSwapInfo = NULL,
+   .GetDrawableMSC = NULL,
+   .WaitForMSC = NULL,
+   .InitScreen2 = dri2_init_screen,
+
+   .InitScreen = NULL,
+   .SwapBuffers = NULL,
+   .CopySubBuffer = NULL,
+};
+
 /* This is the table of extensions that the loader will dlsym() for. */
 PUBLIC const __DRIextension *__driDriverExtensions[] = {
     &driCoreExtension.base,
diff --git a/src/gallium/state_trackers/dri/drm/dri2.h b/src/gallium/state_trackers/dri/drm/dri2.h
deleted file mode 100644 (file)
index 07adfe4..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/**************************************************************************
- *
- * Copyright 2009, VMware, Inc.
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sub license, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial portions
- * of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
- * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- **************************************************************************/
-
-#ifndef DRI2_H
-#define DRI2_H
-
-#include "dri_drawable.h"
-#include "dri_wrapper.h"
-
-const __DRIconfig **
-dri2_init_screen(__DRIscreen * sPriv);
-
-#endif /* DRI2_H */
index 86297c3f80c944ca19cb6df0b2567876f8055911..9edade9dc9b1680e9e7b84204e8decc6b90625fa 100644 (file)
@@ -44,7 +44,6 @@
 #include "dri_context.h"
 #include "dri_drawable.h"
 #include "dri1_helper.h"
-#include "drisw.h"
 
 DEBUG_GET_ONCE_BOOL_OPTION(swrast_no_present, "SWRAST_NO_PRESENT", FALSE);
 static boolean swrast_no_present = FALSE;
@@ -133,7 +132,7 @@ drisw_copy_to_front(__DRIdrawable * dPriv,
  * Backend functions for st_framebuffer interface and swap_buffers.
  */
 
-void
+static void
 drisw_swap_buffers(__DRIdrawable *dPriv)
 {
    struct dri_context *ctx = dri_get_current(dPriv->driScreenPriv);
@@ -250,7 +249,7 @@ static struct drisw_loader_funcs drisw_lf = {
    .put_image = drisw_put_image
 };
 
-const __DRIconfig **
+static const __DRIconfig **
 drisw_init_screen(__DRIscreen * sPriv)
 {
    const __DRIconfig **configs;
@@ -286,6 +285,24 @@ fail:
    return NULL;
 }
 
+/**
+ * DRI driver virtual function table.
+ *
+ * DRI versions differ in their implementation of init_screen and swap_buffers.
+ */
+const struct __DriverAPIRec driDriverAPI = {
+   .DestroyScreen = dri_destroy_screen,
+   .CreateContext = dri_create_context,
+   .DestroyContext = dri_destroy_context,
+   .CreateBuffer = dri_create_buffer,
+   .DestroyBuffer = dri_destroy_buffer,
+   .MakeCurrent = dri_make_current,
+   .UnbindContext = dri_unbind_context,
+
+   .InitScreen = drisw_init_screen,
+   .SwapBuffers = drisw_swap_buffers,
+};
+
 /* This is the table of extensions that the loader will dlsym() for. */
 PUBLIC const __DRIextension *__driDriverExtensions[] = {
     &driCoreExtension.base,
diff --git a/src/gallium/state_trackers/dri/sw/drisw.h b/src/gallium/state_trackers/dri/sw/drisw.h
deleted file mode 100644 (file)
index 6c6c891..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/**************************************************************************
- *
- * Copyright 2009, VMware, Inc.
- * All Rights Reserved.
- * Copyright 2010 George Sapountzis <gsapountzis@gmail.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sub license, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial portions
- * of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
- * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- **************************************************************************/
-
-#ifndef DRISW_H
-#define DRISW_H
-
-#include "dri_context.h"
-#include "dri_drawable.h"
-
-#include "state_tracker/st_api.h"
-#include "dri_wrapper.h"
-
-const __DRIconfig **
-drisw_init_screen(__DRIscreen * sPriv);
-
-void drisw_swap_buffers(__DRIdrawable * dPriv);
-
-#endif /* DRISW_H */