00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef header_displaycard_be
00016 #define header_displaycard_be
00017
00018 #include "Core/Display/Generic/displaycard_generic.h"
00019 #include "target_be.h"
00020
00021 class ClanWindowScreen;
00022
00023 class CL_DisplayCard_Be : public CL_DisplayCard_Generic
00024 {
00025 public:
00026 CL_DisplayCard_Be(int card_no);
00027 virtual ~CL_DisplayCard_Be();
00028
00029
00030
00031
00032 virtual void flip_display(bool sync=false);
00033 virtual void put_display(const class CL_Rect &rect);
00034 virtual void set_palette(CL_Palette *palette);
00035 virtual CL_Palette *get_palette();
00036 virtual void set_videomode(int width, int height, int bpp, bool fullscreen, bool allow_resize, bool video_memory);
00037 virtual bool is_initialized();
00038
00039 virtual std::string get_name() { return "BeOS Display"; }
00040 virtual int get_total_memory() { return -1; }
00041 virtual const std::list<CL_VidMode *> &get_videomodes();
00042
00043
00044
00045
00046 virtual CL_Target *get_target() { return m_target; }
00047 virtual CL_Target *get_frontbuffer() { return m_target; }
00048
00049 virtual void fill_rect(int x1, int y1, int x2, int y2, float r, float g, float b, float a);
00050 virtual void draw_rect(int x1, int y1, int x2, int y2, float r, float g, float b, float a);
00051 virtual void clear_display(float red=0, float green=0, float blue=0, float alpha=1);
00052
00053 private:
00054 CL_Palette *m_palette;
00055 CL_Target_Be *m_target;
00056 ClanWindowScreen *clws;
00057 };
00058
00059 #endif