00001 #ifndef ALLEGRO_GL_WINDOWS_VTABLE_H
00002 #define ALLEGRO_GL_WINDOWS_VTABLE_H
00003
00004 #include <allegro.h>
00005
00006
00007
00008
00009
00010
00011 typedef struct AGL_VIDEO_BITMAP {
00012 GLenum target;
00013 BITMAP *memory_copy;
00014 GLuint tex;
00015 GLuint fbo;
00016 int x_ofs, y_ofs;
00017 int width, height;
00018 struct AGL_VIDEO_BITMAP *next;
00019 GLenum format;
00020 GLenum type;
00021 } AGL_VIDEO_BITMAP;
00022
00023
00024 void __allegro_gl__glvtable_update_vtable (GFX_VTABLE **vtable);
00025 BITMAP *allegro_gl_create_video_bitmap(int w, int h);
00026 void allegro_gl_set_blender_mode(int mode, int r, int g, int b, int a);
00027 void allegro_gl_destroy_video_bitmap(BITMAP *bmp);
00028 void allegro_gl_created_sub_bitmap(BITMAP *bmp, BITMAP *parent);
00029 void split_color(int color, GLubyte *r, GLubyte *g, GLubyte *b, GLubyte *a,
00030 int color_depth);
00031 void allegro_gl_screen_blit_to_self (struct BITMAP *source, struct BITMAP *dest,
00032 int source_x, int source_y, int dest_x, int dest_y, int width,
00033 int height);
00034 void allegro_gl_video_blit_from_memory(struct BITMAP *source,
00035 struct BITMAP *dest, int source_x, int source_y, int dest_x,
00036 int dest_y, int width, int height);
00037 void allegro_gl_video_blit_to_memory(struct BITMAP *source, struct BITMAP *dest,
00038 int source_x, int source_y, int dest_x, int dest_y, int width,
00039 int height);
00040 void do_masked_blit_screen(struct BITMAP *source, struct BITMAP *dest,
00041 int source_x, int source_y, int dest_x, int dest_y, int width, int height,
00042 int flip_dir, int blit_type);
00043 void allegro_gl_video_blit_to_self(struct BITMAP *source, struct BITMAP *dest,
00044 int source_x, int source_y, int dest_x, int dest_y, int width, int height);
00045 void allegro_gl_screen_clear_to_color(struct BITMAP *bmp, int color);
00046 void allegro_gl_upload_and_display_texture(struct BITMAP *source,
00047 int source_x, int source_y, int dest_x, int dest_y, int width, int height,
00048 int flip_dir, GLint format, GLint type);
00049 void allegro_gl_screen_draw_glyph_ex(struct BITMAP *bmp,
00050 AL_CONST struct FONT_GLYPH *glyph, int x, int y,
00051 int color, int bg, int flip);
00052 void allegro_gl_screen_draw_color_glyph_ex(struct BITMAP *bmp,
00053 struct BITMAP *sprite, int x, int y, int color, int bg, int flip);
00054 #endif
00055