st/hgl: Move st_api creation to st and extern "C" it
authorAlexander von Gluck IV <kallisti5@unixzen.com>
Thu, 14 May 2015 22:29:00 +0000 (17:29 -0500)
committerAlexander von Gluck IV <kallisti5@unixzen.com>
Fri, 15 May 2015 17:55:59 +0000 (13:55 -0400)
Reviewed-by: Brian Paul <brianp@vmware.com>
src/gallium/state_trackers/hgl/hgl.c
src/gallium/state_trackers/hgl/hgl_context.h

index 77f7c2256e524f7c514051655a8d5272d9c5eeb0..1e804c07e6b413013978fefe4afc79c855e2c6fd 100644 (file)
@@ -7,8 +7,7 @@
  *      Alexander von Gluck IV, kallisti5@unixzen.com
  */
 
-
-#include "GLView.h"
+#include "hgl_context.h"
 
 #include <stdio.h>
 
@@ -17,8 +16,9 @@
 #include "util/u_format.h"
 #include "util/u_memory.h"
 #include "util/u_inlines.h"
+#include "state_tracker/st_gl_api.h" /* for st_gl_api_create */
 
-#include "hgl_context.h"
+#include "GLView.h"
 
 
 #ifdef DEBUG
@@ -93,7 +93,7 @@ hgl_st_framebuffer_validate_textures(struct st_framebuffer_iface *stfbi,
                for (i = 0; i < ST_ATTACHMENT_COUNT; i++)
                        pipe_resource_reference(&buffer->textures[i], NULL);
        }
-       
+
        memset(&templat, 0, sizeof(templat));
        templat.target = buffer->target;
        templat.width0 = width;
@@ -258,6 +258,14 @@ hgl_create_st_framebuffer(struct hgl_context* context)
 }
 
 
+struct st_api*
+hgl_create_st_api()
+{
+       CALLED();
+       return st_gl_api_create();
+}
+
+
 struct st_manager *
 hgl_create_st_manager(struct hgl_context* context)
 {
index 4840d9e2ee459639bf5fba4f50544d4c1b9c3552..d2ec7fb49c4397cb2eba8b90dc7665d5950cc25a 100644 (file)
@@ -9,9 +9,6 @@
 #define HGL_CONTEXT_H
 
 
-#ifdef __cplusplus
-extern "C" {
-#endif
 #include "state_tracker/st_api.h"
 #include "state_tracker/st_manager.h"
 #include "pipe/p_compiler.h"
@@ -20,8 +17,10 @@ extern "C" {
 #include "os/os_thread.h"
 
 #include "bitmap_wrapper.h"
+
+
 #ifdef __cplusplus
-}
+extern "C" {
 #endif
 
 
@@ -82,6 +81,9 @@ struct hgl_context
 };
 
 
+// hgl state_tracker api
+struct st_api* hgl_create_st_api(void);
+
 // hgl state_tracker framebuffer
 struct hgl_buffer* hgl_create_st_framebuffer(struct hgl_context* context);
 
@@ -94,4 +96,8 @@ struct st_visual* hgl_create_st_visual(ulong options);
 void hgl_destroy_st_visual(struct st_visual* visual);
 
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* HGL_CONTEXT_H */