I’m creating an enumerated pixel format for SDL 1.3.
Did I miss anything important?
typedef enum {
SDL_PixelType_Unknown,
SDL_PixelType_Index1LSB,
SDL_PixelType_Index1MSB,
SDL_PixelType_Index4LSB,
SDL_PixelType_Index4MSB,
SDL_PixelType_Index8,
SDL_PixelType_Packed_RGB332,
SDL_PixelType_Packed_RGBX4444,
SDL_PixelType_Packed_XRGB4444,
SDL_PixelType_Packed_BGRX4444,
SDL_PixelType_Packed_XBGR4444,
SDL_PixelType_Packed_RGBA4444,
SDL_PixelType_Packed_ARGB4444,
SDL_PixelType_Packed_BGRA4444,
SDL_PixelType_Packed_ABGR4444,
SDL_PixelType_Packed_XRGB1555,
SDL_PixelType_Packed_RGBX5551,
SDL_PixelType_Packed_XBGR1555,
SDL_PixelType_Packed_BGRX5551,
SDL_PixelType_Packed_ARGB1555,
SDL_PixelType_Packed_RGBA5551,
SDL_PixelType_Packed_ABGR1555,
SDL_PixelType_Packed_BGRA5551,
SDL_PixelType_Packed_RGB565,
SDL_PixelType_Packed_BGR565,
SDL_PixelType_Packed_RGBX8888,
SDL_PixelType_Packed_XRGB8888,
SDL_PixelType_Packed_BGRX8888,
SDL_PixelType_Packed_XBGR8888,
SDL_PixelType_Packed_RGBA8888,
SDL_PixelType_Packed_ARGB8888,
SDL_PixelType_Packed_BGRA8888,
SDL_PixelType_Packed_ABGR8888,
SDL_PixelType_Uint8_RGB,
SDL_PixelType_Uint8_BGR,
SDL_PixelType_Uint8_RGBA,
SDL_PixelType_Uint8_BGRA,
SDL_PixelType_Uint16_RGB,
SDL_PixelType_Uint16_BGR,
SDL_PixelType_Uint16_RGBA,
SDL_PixelType_Uint16_BGRA,
SDL_PixelType_Uint32_RGB,
SDL_PixelType_Uint32_BGR,
SDL_PixelType_Uint32_RGBA,
SDL_PixelType_Uint32_BGRA,
SDL_PixelType_Float16_RGB,
SDL_PixelType_Float16_BGR,
SDL_PixelType_Float16_RGBA,
SDL_PixelType_Float16_BGRA,
SDL_PixelType_Float32_RGB,
SDL_PixelType_Float32_BGR,
SDL_PixelType_Float32_RGBA,
SDL_PixelType_Float32_BGRA,
SDL_NumPixelTypes
} SDL_PixelType;
Video drivers which support packed pixels in non-native endian formats
should advertise the native endian format, and must do a final swap before
sending the pixel data to the video card.
See ya,
-Sam Lantinga, Senior Software Engineer, Blizzard Entertainment