4 #include "radeon_common_context.h"
5 #include "radeon_dma.h"
6 #include "radeon_texture.h"
8 void radeonUserClear(struct gl_context
*ctx
, GLuint mask
);
9 void radeonRecalcScissorRects(radeonContextPtr radeon
);
10 void radeonSetCliprects(radeonContextPtr radeon
);
11 void radeonUpdateScissor( struct gl_context
*ctx
);
12 void radeonScissor(struct gl_context
* ctx
, GLint x
, GLint y
, GLsizei w
, GLsizei h
);
14 void radeonWaitForIdleLocked(radeonContextPtr radeon
);
15 extern uint32_t radeonGetAge(radeonContextPtr radeon
);
16 void radeonCopyBuffer( __DRIdrawable
*dPriv
,
17 const drm_clip_rect_t
*rect
);
18 void radeonSwapBuffers(__DRIdrawable
* dPriv
);
19 void radeonCopySubBuffer(__DRIdrawable
* dPriv
,
20 int x
, int y
, int w
, int h
);
22 void radeonUpdatePageFlipping(radeonContextPtr rmesa
);
24 void radeonFlush(struct gl_context
*ctx
);
25 void radeonFinish(struct gl_context
* ctx
);
26 void radeonEmitState(radeonContextPtr radeon
);
27 GLuint
radeonCountStateEmitSize(radeonContextPtr radeon
);
29 void radeon_clear_tris(struct gl_context
*ctx
, GLbitfield mask
);
31 void radeon_window_moved(radeonContextPtr radeon
);
32 void radeon_draw_buffer(struct gl_context
*ctx
, struct gl_framebuffer
*fb
);
33 void radeonDrawBuffer( struct gl_context
*ctx
, GLenum mode
);
34 void radeonReadBuffer( struct gl_context
*ctx
, GLenum mode
);
35 void radeon_viewport(struct gl_context
*ctx
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
36 void radeon_get_cliprects(radeonContextPtr radeon
,
37 struct drm_clip_rect
**cliprects
,
38 unsigned int *num_cliprects
,
39 int *x_off
, int *y_off
);
40 void radeon_fbo_init(struct radeon_context
*radeon
);
42 radeon_renderbuffer_set_bo(struct radeon_renderbuffer
*rb
,
43 struct radeon_bo
*bo
);
44 struct radeon_renderbuffer
*
45 radeon_create_renderbuffer(gl_format format
, __DRIdrawable
*driDrawPriv
);
48 radeonReadPixels(struct gl_context
* ctx
,
49 GLint x
, GLint y
, GLsizei width
, GLsizei height
,
50 GLenum format
, GLenum type
,
51 const struct gl_pixelstore_attrib
*pack
, GLvoid
* pixels
);
53 void radeon_check_front_buffer_rendering(struct gl_context
*ctx
);
54 static inline struct radeon_renderbuffer
*radeon_renderbuffer(struct gl_renderbuffer
*rb
)
56 struct radeon_renderbuffer
*rrb
= (struct radeon_renderbuffer
*)rb
;
57 radeon_print(RADEON_MEMORY
, RADEON_TRACE
,
60 if (rrb
&& rrb
->base
.ClassID
== RADEON_RB_CLASS
)
66 static inline struct radeon_renderbuffer
*radeon_get_renderbuffer(struct gl_framebuffer
*fb
, int att_index
)
68 radeon_print(RADEON_MEMORY
, RADEON_TRACE
,
69 "%s(fb %p, index %d)\n",
70 __func__
, fb
, att_index
);
73 return radeon_renderbuffer(fb
->Attachment
[att_index
].Renderbuffer
);
78 static inline struct radeon_renderbuffer
*radeon_get_depthbuffer(radeonContextPtr rmesa
)
80 struct radeon_renderbuffer
*rrb
;
81 rrb
= radeon_renderbuffer(rmesa
->state
.depth
.rb
);
88 static inline struct radeon_renderbuffer
*radeon_get_colorbuffer(radeonContextPtr rmesa
)
90 struct radeon_renderbuffer
*rrb
;
92 rrb
= radeon_renderbuffer(rmesa
->state
.color
.rb
);
98 #include "radeon_cmdbuf.h"