summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/state_trackers/glx/xlib/xm_st.c25
1 files changed, 17 insertions, 8 deletions
diff --git a/src/gallium/state_trackers/glx/xlib/xm_st.c b/src/gallium/state_trackers/glx/xlib/xm_st.c
index 1cfd89ee85f..30e69eafc17 100644
--- a/src/gallium/state_trackers/glx/xlib/xm_st.c
+++ b/src/gallium/state_trackers/glx/xlib/xm_st.c
@@ -1,6 +1,5 @@
/*
* Mesa 3-D graphics library
- * Version: 7.9
*
* Copyright (C) 2010 LunarG Inc.
*
@@ -46,14 +45,16 @@ struct xmesa_st_framebuffer {
struct pipe_resource *display_resource;
};
+
static INLINE struct xmesa_st_framebuffer *
xmesa_st_framebuffer(struct st_framebuffer_iface *stfbi)
{
return (struct xmesa_st_framebuffer *) stfbi->st_manager_private;
}
+
/**
- * Display an attachment to the xlib_drawable of the framebuffer.
+ * Display (present) an attachment to the xlib_drawable of the framebuffer.
*/
static boolean
xmesa_st_framebuffer_display(struct st_framebuffer_iface *stfbi,
@@ -74,10 +75,10 @@ xmesa_st_framebuffer_display(struct st_framebuffer_iface *stfbi,
}
xstfb->screen->flush_frontbuffer(xstfb->screen, pres, 0, 0, &xstfb->buffer->ws);
-
return TRUE;
}
+
/**
* Copy the contents between the attachments.
*/
@@ -106,6 +107,7 @@ xmesa_st_framebuffer_copy_textures(struct st_framebuffer_iface *stfbi,
src_ptex, 0, &src_box);
}
+
/**
* Remove outdated textures and create the requested ones.
* This is a helper used during framebuffer validation.
@@ -191,7 +193,7 @@ xmesa_st_framebuffer_validate_textures(struct st_framebuffer_iface *stfbi,
* \param count number of framebuffer attachments in statts[]
* \param out returns resources for each of the attachments
*/
-static boolean
+static boolean
xmesa_st_framebuffer_validate(struct st_framebuffer_iface *stfbi,
const enum st_attachment_type *statts,
unsigned count,
@@ -249,6 +251,7 @@ xmesa_st_framebuffer_validate(struct st_framebuffer_iface *stfbi,
return TRUE;
}
+
/**
* Called via st_framebuffer_iface::flush_front()
*/
@@ -268,6 +271,7 @@ xmesa_st_framebuffer_flush_front(struct st_context_iface *stctx,
return ret;
}
+
struct st_framebuffer_iface *
xmesa_create_st_framebuffer(XMesaDisplay xmdpy, XMesaBuffer b)
{
@@ -288,7 +292,7 @@ xmesa_create_st_framebuffer(XMesaDisplay xmdpy, XMesaBuffer b)
xstfb->buffer = b;
xstfb->screen = xmdpy->screen;
xstfb->stvis = b->xm_visual->stvis;
- if(xstfb->screen->get_param(xstfb->screen, PIPE_CAP_NPOT_TEXTURES))
+ if (xstfb->screen->get_param(xstfb->screen, PIPE_CAP_NPOT_TEXTURES))
xstfb->target = PIPE_TEXTURE_2D;
else
xstfb->target = PIPE_TEXTURE_RECT;
@@ -302,6 +306,7 @@ xmesa_create_st_framebuffer(XMesaDisplay xmdpy, XMesaBuffer b)
return stfbi;
}
+
void
xmesa_destroy_st_framebuffer(struct st_framebuffer_iface *stfbi)
{
@@ -317,6 +322,7 @@ xmesa_destroy_st_framebuffer(struct st_framebuffer_iface *stfbi)
free(stfbi);
}
+
/**
* Return the pipe_surface which corresponds to the given
* framebuffer attachment.
@@ -329,6 +335,7 @@ xmesa_get_framebuffer_resource(struct st_framebuffer_iface *stfbi,
return xstfb->textures[att];
}
+
void
xmesa_swap_st_framebuffer(struct st_framebuffer_iface *stfbi)
{
@@ -357,6 +364,7 @@ xmesa_swap_st_framebuffer(struct st_framebuffer_iface *stfbi)
}
}
+
void
xmesa_copy_st_framebuffer(struct st_framebuffer_iface *stfbi,
enum st_attachment_type src,
@@ -368,19 +376,21 @@ xmesa_copy_st_framebuffer(struct st_framebuffer_iface *stfbi,
xmesa_st_framebuffer_display(stfbi, dst);
}
+
struct pipe_resource*
xmesa_get_attachment(struct st_framebuffer_iface *stfbi,
enum st_attachment_type st_attachment)
{
struct xmesa_st_framebuffer *xstfb = xmesa_st_framebuffer(stfbi);
- struct pipe_resource* res;
+ struct pipe_resource *res;
res = xstfb->textures[st_attachment];
return res;
}
+
struct pipe_context*
-xmesa_get_context(struct st_framebuffer_iface* stfbi)
+xmesa_get_context(struct st_framebuffer_iface *stfbi)
{
struct pipe_context *pipe;
struct xmesa_st_framebuffer *xstfb = xmesa_st_framebuffer(stfbi);
@@ -394,4 +404,3 @@ xmesa_get_context(struct st_framebuffer_iface* stfbi)
}
return pipe;
}
-