Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5563 serge 1
#ifndef COMMON_MISC_H
2
#define COMMON_MISC_H
3
 
4
#include "radeon_common_context.h"
5
#include "radeon_dma.h"
6
#include "radeon_texture.h"
7
 
8
void radeonUserClear(struct gl_context *ctx, GLuint mask);
9
void radeonSetCliprects(radeonContextPtr radeon);
10
void radeonUpdateScissor( struct gl_context *ctx );
11
void radeonScissor(struct gl_context* ctx, GLint x, GLint y, GLsizei w, GLsizei h);
12
 
13
extern uint32_t radeonGetAge(radeonContextPtr radeon);
14
 
15
void radeonFlush(struct gl_context *ctx);
16
void radeonFinish(struct gl_context * ctx);
17
void radeonEmitState(radeonContextPtr radeon);
18
GLuint radeonCountStateEmitSize(radeonContextPtr radeon);
19
 
20
void radeon_clear_tris(struct gl_context *ctx, GLbitfield mask);
21
 
22
void radeon_window_moved(radeonContextPtr radeon);
23
void radeon_draw_buffer(struct gl_context *ctx, struct gl_framebuffer *fb);
24
void radeonDrawBuffer( struct gl_context *ctx, GLenum mode );
25
void radeonReadBuffer( struct gl_context *ctx, GLenum mode );
26
void radeon_viewport(struct gl_context *ctx, GLint x, GLint y, GLsizei width, GLsizei height);
27
void radeon_fbo_init(struct radeon_context *radeon);
28
void
29
radeon_renderbuffer_set_bo(struct radeon_renderbuffer *rb,
30
			   struct radeon_bo *bo);
31
struct radeon_renderbuffer *
32
radeon_create_renderbuffer(gl_format format, __DRIdrawable *driDrawPriv);
33
 
34
void
35
radeonReadPixels(struct gl_context * ctx,
36
				GLint x, GLint y, GLsizei width, GLsizei height,
37
				GLenum format, GLenum type,
38
				const struct gl_pixelstore_attrib *pack, GLvoid * pixels);
39
 
40
void radeon_check_front_buffer_rendering(struct gl_context *ctx);
41
static inline struct radeon_renderbuffer *radeon_renderbuffer(struct gl_renderbuffer *rb)
42
{
43
	struct radeon_renderbuffer *rrb = (struct radeon_renderbuffer *)rb;
44
	radeon_print(RADEON_MEMORY, RADEON_TRACE,
45
		"%s(rb %p)\n",
46
		__func__, (void *) rb);
47
	if (rrb && rrb->base.Base.ClassID == RADEON_RB_CLASS)
48
		return rrb;
49
	else
50
		return NULL;
51
}
52
 
53
static inline struct radeon_renderbuffer *radeon_get_renderbuffer(struct gl_framebuffer *fb, int att_index)
54
{
55
	radeon_print(RADEON_MEMORY, RADEON_TRACE,
56
		"%s(fb %p, index %d)\n",
57
		__func__, (void *) fb, att_index);
58
 
59
	if (att_index >= 0)
60
		return radeon_renderbuffer(fb->Attachment[att_index].Renderbuffer);
61
	else
62
		return NULL;
63
}
64
 
65
static inline struct radeon_renderbuffer *radeon_get_depthbuffer(radeonContextPtr rmesa)
66
{
67
	struct radeon_renderbuffer *rrb;
68
	rrb = radeon_renderbuffer(rmesa->state.depth.rb);
69
	if (!rrb)
70
		return NULL;
71
 
72
	return rrb;
73
}
74
 
75
static inline struct radeon_renderbuffer *radeon_get_colorbuffer(radeonContextPtr rmesa)
76
{
77
	struct radeon_renderbuffer *rrb;
78
 
79
	rrb = radeon_renderbuffer(rmesa->state.color.rb);
80
	if (!rrb)
81
		return NULL;
82
	return rrb;
83
}
84
 
85
#include "radeon_cmdbuf.h"
86
 
87
 
88
#endif