00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef Display_H
00031 #define Display_H
00032
00033 #include "basetype.h"
00034 #include "DisplayModeInfo.h"
00035
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif
00039
00040 typedef enum { DISPLAY_DIB_WINDOW, DISPLAY_DDRAW_FULLSCREEN, DISPLAY_COUNT } Display_Type;
00041
00042 typedef struct Display Display;
00043
00044 geBoolean Display_GetDisplayInfo( Display_Type DisplayType,
00045 char *DescriptionString,
00046 unsigned int DescriptionStringMaxLength,
00047 DisplayModeInfo *Info);
00048
00049 geBoolean Display_GetPixelFormat ( const Display *D,
00050
00051 int32 *bytes_per_pixel,
00052 int32 *R_shift,
00053 uint32 *R_mask,
00054 int32 *R_width,
00055 int32 *G_shift,
00056 uint32 *G_mask,
00057 int32 *G_width,
00058 int32 *B_shift,
00059 uint32 *B_mask,
00060 int32 *B_width);
00061
00062 void Display_GetDisplayFormat( const Display *D,
00063 Display_Type *DisplayType,
00064 int32 *Width,
00065 int32 *Height,
00066 int32 *BitsPerPixel,
00067 uint32 *Flags);
00068
00069 geBoolean Display_Blit ( Display *D);
00070
00071 geBoolean Display_Wipe ( Display *D,
00072 uint32 color);
00073
00074 geBoolean Display_Lock ( Display *D,
00075 uint8 **ptr,
00076 int32 *pitch);
00077
00078 geBoolean Display_Unlock ( Display *D);
00079
00080 void Display_Destroy ( Display **pDisplay);
00081
00082 geBoolean Display_SetActive ( Display *D, geBoolean Active );
00083
00084
00085 #ifdef _INC_WINDOWS
00086 Display *Display_Create ( HWND hWindow,
00087 Display_Type DisplayType,
00088 int32 RenderSizeAcross,
00089 int32 RenderSizeDown,
00090 int32 Display_BitsPerPixel,
00091 uint32 Display_Flags);
00092 #endif
00093
00094 #ifdef __cplusplus
00095 }
00096 #endif
00097
00098 #endif