PSP2SDK  dirty-f9e4f2d
The free SDK for PSP2
include/psp2/gxm.h
Go to the documentation of this file.
00001 
00012 #ifndef _PSP2_GXM_
00013 #define _PSP2_GXM_
00014 
00015 #include <psp2/types.h>
00016 
00017 #ifdef __cplusplus
00018 extern "C" {
00019 #endif
00020 
00021 // Error Codes
00022 
00023 enum {
00024     SCE_GXM_ERROR_UNINITIALIZED = 0x805B0000,
00025     SCE_GXM_ERROR_ALREADY_INITIALIZED   = 0x805B0001,
00026     SCE_GXM_ERROR_OUT_OF_MEMORY = 0x805B0002,
00027     SCE_GXM_ERROR_INVALID_VALUE = 0x805B0003,
00028     SCE_GXM_ERROR_INVALID_POINTER   = 0x805B0004,
00029     SCE_GXM_ERROR_INVALID_ALIGNMENT = 0x805B0005,
00030     SCE_GXM_ERROR_NOT_WITHIN_SCENE  = 0x805B0006,
00031     SCE_GXM_ERROR_WITHIN_SCENE  = 0x805B0007,
00032     SCE_GXM_ERROR_NULL_PROGRAM  = 0x805B0008,
00033     SCE_GXM_ERROR_UNSUPPORTED   = 0x805B0009,
00034     SCE_GXM_ERROR_PATCHER_INTERNAL  = 0x805B000A,
00035     SCE_GXM_ERROR_RESERVE_FAILED    = 0x805B000B,
00036     SCE_GXM_ERROR_PROGRAM_IN_USE    = 0x805B000C,
00037     SCE_GXM_ERROR_INVALID_INDEX_COUNT   = 0x805B000D,
00038     SCE_GXM_ERROR_INVALID_POLYGON_MODE  = 0x805B000E,
00039     SCE_GXM_ERROR_INVALID_SAMPLER_RESULT_TYPE_PRECISION = 0x805B000F,
00040     SCE_GXM_ERROR_INVALID_SAMPLER_RESULT_TYPE_COMPONENT_COUNT   = 0x805B0010,
00041     SCE_GXM_ERROR_UNIFORM_BUFFER_NOT_RESERVED   = 0x805B0011,
00042     SCE_GXM_ERROR_INVALID_AUXILIARY_SURFACE = 0x805B0013,
00043     SCE_GXM_ERROR_INVALID_PRECOMPUTED_DRAW  = 0x805B0014,
00044     SCE_GXM_ERROR_INVALID_PRECOMPUTED_VERTEX_STATE  = 0x805B0015,
00045     SCE_GXM_ERROR_INVALID_PRECOMPUTED_FRAGMENT_STATE    = 0x805B0016,
00046     SCE_GXM_ERROR_DRIVER    = 0x805B0017
00047 };
00048 
00049 typedef void (SceGxmDisplayQueueCallback)(const void *callbackData);
00050 
00051 typedef struct SceGxmInitializeParams {
00052     unsigned int flags;
00053     unsigned int displayQueueMaxPendingCount;
00054     SceGxmDisplayQueueCallback *displayQueueCallback;
00055     unsigned int displayQueueCallbackDataSize;
00056     SceSize parameterBufferSize;
00057 } SceGxmInitializeParams;
00058 
00059 typedef enum SceGxmMemoryAttribFlags {
00060     SCE_GXM_MEMORY_ATTRIB_READ  = 1,
00061     SCE_GXM_MEMORY_ATTRIB_WRITE = 2,
00062     SCE_GXM_MEMORY_ATTRIB_RW    = (SCE_GXM_MEMORY_ATTRIB_READ | SCE_GXM_MEMORY_ATTRIB_WRITE)
00063 } SceGxmMemoryAttribFlags;
00064 
00065 typedef enum SceGxmAttributeFormat {
00066     SCE_GXM_ATTRIBUTE_FORMAT_U8,
00067     SCE_GXM_ATTRIBUTE_FORMAT_S8,
00068     SCE_GXM_ATTRIBUTE_FORMAT_U16,
00069     SCE_GXM_ATTRIBUTE_FORMAT_S16,
00070     SCE_GXM_ATTRIBUTE_FORMAT_U8N,
00071     SCE_GXM_ATTRIBUTE_FORMAT_S8N,
00072     SCE_GXM_ATTRIBUTE_FORMAT_U16N,
00073     SCE_GXM_ATTRIBUTE_FORMAT_S16N,
00074     SCE_GXM_ATTRIBUTE_FORMAT_F16,
00075     SCE_GXM_ATTRIBUTE_FORMAT_F32
00076 } SceGxmAttributeFormat;
00077 
00078 typedef enum SceGxmDepthStencilFormat {
00079     SCE_GXM_DEPTH_STENCIL_FORMAT_DF32   = 0x00044000u,
00080     SCE_GXM_DEPTH_STENCIL_FORMAT_S8 = 0x00022000u,
00081     SCE_GXM_DEPTH_STENCIL_FORMAT_DF32_S8    = 0x00066000u,
00082     SCE_GXM_DEPTH_STENCIL_FORMAT_S8D24  = 0x01266000u,
00083     SCE_GXM_DEPTH_STENCIL_FORMAT_D16    = 0x02444000u
00084 } SceGxmDepthStencilFormat;
00085 
00086 typedef enum SceGxmPrimitiveType {
00087     SCE_GXM_PRIMITIVE_TRIANGLES = 0x00000000u,
00088     SCE_GXM_PRIMITIVE_LINES = 0x04000000u,
00089     SCE_GXM_PRIMITIVE_POINTS    = 0x08000000u,
00090     SCE_GXM_PRIMITIVE_TRIANGLE_STRIP    = 0x0c000000u,
00091     SCE_GXM_PRIMITIVE_TRIANGLE_FAN  = 0x10000000u,
00092     SCE_GXM_PRIMITIVE_TRIANGLE_EDGES    = 0x14000000u
00093 } SceGxmPrimitiveType;
00094 
00095 typedef enum SceGxmEdgeEnableFlags {
00096     SCE_GXM_EDGE_ENABLE_01  = 0x00000100u,
00097     SCE_GXM_EDGE_ENABLE_12  = 0x00000200u,
00098     SCE_GXM_EDGE_ENABLE_20  = 0x00000400u
00099 } SceGxmEdgeEnableFlags;
00100 
00101 typedef enum SceGxmRegionClipMode {
00102     SCE_GXM_REGION_CLIP_NONE    = 0x00000000u,
00103     SCE_GXM_REGION_CLIP_ALL = 0x40000000u,
00104     SCE_GXM_REGION_CLIP_OUTSIDE = 0x80000000u,
00105     SCE_GXM_REGION_CLIP_INSIDE  = 0xc0000000u
00106 } SceGxmRegionClipMode;
00107 
00108 typedef enum SceGxmDepthFunc {
00109     SCE_GXM_DEPTH_FUNC_NEVER    = 0x00000000u,
00110     SCE_GXM_DEPTH_FUNC_LESS = 0x00400000u,
00111     SCE_GXM_DEPTH_FUNC_EQUAL    = 0x00800000u,
00112     SCE_GXM_DEPTH_FUNC_LESS_EQUAL   = 0x00c00000u,
00113     SCE_GXM_DEPTH_FUNC_GREATER  = 0x01000000u,
00114     SCE_GXM_DEPTH_FUNC_NOT_EQUAL    = 0x01400000u,
00115     SCE_GXM_DEPTH_FUNC_GREATER_EQUAL    = 0x01800000u,
00116     SCE_GXM_DEPTH_FUNC_ALWAYS   = 0x01c00000u
00117 } SceGxmDepthFunc;
00118 
00119 typedef enum SceGxmStencilFunc {
00120     SCE_GXM_STENCIL_FUNC_NEVER  = 0x00000000u,
00121     SCE_GXM_STENCIL_FUNC_LESS   = 0x02000000u,
00122     SCE_GXM_STENCIL_FUNC_EQUAL  = 0x04000000u,
00123     SCE_GXM_STENCIL_FUNC_LESS_EQUAL = 0x06000000u,
00124     SCE_GXM_STENCIL_FUNC_GREATER    = 0x08000000u,
00125     SCE_GXM_STENCIL_FUNC_NOT_EQUAL  = 0x0a000000u,
00126     SCE_GXM_STENCIL_FUNC_GREATER_EQUAL  = 0x0c000000u,
00127     SCE_GXM_STENCIL_FUNC_ALWAYS = 0x0e000000u
00128 } SceGxmStencilFunc;
00129 
00130 typedef enum SceGxmStencilOp {
00131     SCE_GXM_STENCIL_OP_KEEP = 0x00000000u,
00132     SCE_GXM_STENCIL_OP_ZERO = 0x00000001u,
00133     SCE_GXM_STENCIL_OP_REPLACE  = 0x00000002u,
00134     SCE_GXM_STENCIL_OP_INCR = 0x00000003u,
00135     SCE_GXM_STENCIL_OP_DECR = 0x00000004u,
00136     SCE_GXM_STENCIL_OP_INVERT   = 0x00000005u,
00137     SCE_GXM_STENCIL_OP_INCR_WRAP    = 0x00000006u,
00138     SCE_GXM_STENCIL_OP_DECR_WRAP    = 0x00000007u
00139 } SceGxmStencilOp;
00140 
00141 typedef enum SceGxmCullMode {
00142     SCE_GXM_CULL_NONE   = 0x00000000u,
00143     SCE_GXM_CULL_CW = 0x00000001u,
00144     SCE_GXM_CULL_CCW    = 0x00000002u
00145 } SceGxmCullMode;
00146 
00147 typedef enum SceGxmPolygonMode {
00148     SCE_GXM_POLYGON_MODE_TRIANGLE_FILL  = 0x00000000u,
00149     SCE_GXM_POLYGON_MODE_LINE   = 0x00008000u,
00150     SCE_GXM_POLYGON_MODE_POINT_10UV = 0x00010000u,
00151     SCE_GXM_POLYGON_MODE_POINT  = 0x00018000u,
00152     SCE_GXM_POLYGON_MODE_POINT_01UV = 0x00020000u,
00153     SCE_GXM_POLYGON_MODE_TRIANGLE_LINE  = 0x00028000u,
00154     SCE_GXM_POLYGON_MODE_TRIANGLE_POINT = 0x00030000u
00155 } SceGxmPolygonMode;
00156 
00157 typedef enum SceGxmColorSwizzle4Mode {
00158     SCE_GXM_COLOR_SWIZZLE4_ABGR = 0x00000000u,
00159     SCE_GXM_COLOR_SWIZZLE4_ARGB = 0x00100000u,
00160     SCE_GXM_COLOR_SWIZZLE4_RGBA = 0x00200000u,
00161     SCE_GXM_COLOR_SWIZZLE4_BGRA = 0x00300000u
00162 } SceGxmColorSwizzle4Mode;
00163 
00164 typedef enum SceGxmColorSwizzle3Mode {
00165     SCE_GXM_COLOR_SWIZZLE3_BGR  = 0x00000000u,
00166     SCE_GXM_COLOR_SWIZZLE3_RGB  = 0x00100000u
00167 } SceGxmColorSwizzle3Mode;
00168 
00169 typedef enum SceGxmColorSwizzle2Mode {
00170     SCE_GXM_COLOR_SWIZZLE2_GR   = 0x00000000u,
00171     SCE_GXM_COLOR_SWIZZLE2_RG   = 0x00100000u,
00172     SCE_GXM_COLOR_SWIZZLE2_RA   = 0x00200000u,
00173     SCE_GXM_COLOR_SWIZZLE2_AR = 0x00300000u
00174 } SceGxmColorSwizzle2Mode;
00175 
00176 typedef enum SceGxmColorSwizzle1Mode {
00177     SCE_GXM_COLOR_SWIZZLE1_R    = 0x00000000u,
00178     SCE_GXM_COLOR_SWIZZLE1_G    = 0x00100000u,
00179     SCE_GXM_COLOR_SWIZZLE1_A    = 0x00100000u
00180 } SceGxmColorSwizzle1Mode;
00181 
00182 typedef enum SceGxmColorBaseFormat {
00183     SCE_GXM_COLOR_BASE_FORMAT_U8U8U8U8  = 0x00000000,
00184     SCE_GXM_COLOR_BASE_FORMAT_U8U8U8    = 0x10000000,
00185     SCE_GXM_COLOR_BASE_FORMAT_U5U6U5    = 0x30000000,
00186     SCE_GXM_COLOR_BASE_FORMAT_U1U5U5U5  = 0x40000000,
00187     SCE_GXM_COLOR_BASE_FORMAT_U4U4U4U4  = 0x50000000,
00188     SCE_GXM_COLOR_BASE_FORMAT_U8U3U3U2  = 0x60000000,
00189     SCE_GXM_COLOR_BASE_FORMAT_F16   = 0xf0000000,
00190     SCE_GXM_COLOR_BASE_FORMAT_F16F16    = 0x00800000,
00191     SCE_GXM_COLOR_BASE_FORMAT_F32   = 0x10800000,
00192     SCE_GXM_COLOR_BASE_FORMAT_S16   = 0x20800000,
00193     SCE_GXM_COLOR_BASE_FORMAT_S16S16    = 0x30800000,
00194     SCE_GXM_COLOR_BASE_FORMAT_U16   = 0x40800000,
00195     SCE_GXM_COLOR_BASE_FORMAT_U16U16    = 0x50800000,
00196     SCE_GXM_COLOR_BASE_FORMAT_U2U10U10U10   = 0x60800000,
00197     SCE_GXM_COLOR_BASE_FORMAT_U8    = 0x80800000,
00198     SCE_GXM_COLOR_BASE_FORMAT_S8    = 0x90800000,
00199     SCE_GXM_COLOR_BASE_FORMAT_S5S5U6    = 0xa0800000,
00200     SCE_GXM_COLOR_BASE_FORMAT_U8U8  = 0xb0800000,
00201     SCE_GXM_COLOR_BASE_FORMAT_S8S8  = 0xc0800000,
00202     SCE_GXM_COLOR_BASE_FORMAT_U8S8S8U8  = 0xd0800000,
00203     SCE_GXM_COLOR_BASE_FORMAT_S8S8S8S8  = 0xe0800000,
00204     SCE_GXM_COLOR_BASE_FORMAT_F16F16F16F16  = 0x01000000,
00205     SCE_GXM_COLOR_BASE_FORMAT_F32F32    = 0x11000000,
00206     SCE_GXM_COLOR_BASE_FORMAT_F11F11F10 = 0x21000000,
00207     SCE_GXM_COLOR_BASE_FORMAT_SE5M9M9M9 = 0x31000000,
00208     SCE_GXM_COLOR_BASE_FORMAT_U2F10F10F10   = 0x41000000
00209 } SceGxmColorBaseFormat;
00210 
00211 typedef enum SceGxmColorFormat {
00212     // Supported formats
00213 
00214     SCE_GXM_COLOR_FORMAT_U8U8U8U8_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8U8 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00215     SCE_GXM_COLOR_FORMAT_U8U8U8U8_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8U8 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00216     SCE_GXM_COLOR_FORMAT_U8U8U8U8_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8U8 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00217     SCE_GXM_COLOR_FORMAT_U8U8U8U8_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8U8 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00218 
00219     SCE_GXM_COLOR_FORMAT_U8U8U8_BGR = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8 | SCE_GXM_COLOR_SWIZZLE3_BGR,
00220     SCE_GXM_COLOR_FORMAT_U8U8U8_RGB = SCE_GXM_COLOR_BASE_FORMAT_U8U8U8 | SCE_GXM_COLOR_SWIZZLE3_RGB,
00221 
00222     SCE_GXM_COLOR_FORMAT_U5U6U5_BGR = SCE_GXM_COLOR_BASE_FORMAT_U5U6U5 | SCE_GXM_COLOR_SWIZZLE3_BGR,
00223     SCE_GXM_COLOR_FORMAT_U5U6U5_RGB = SCE_GXM_COLOR_BASE_FORMAT_U5U6U5 | SCE_GXM_COLOR_SWIZZLE3_RGB,
00224 
00225     SCE_GXM_COLOR_FORMAT_U1U5U5U5_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U1U5U5U5 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00226     SCE_GXM_COLOR_FORMAT_U1U5U5U5_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U1U5U5U5 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00227     SCE_GXM_COLOR_FORMAT_U5U5U5U1_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U1U5U5U5 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00228     SCE_GXM_COLOR_FORMAT_U5U5U5U1_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U1U5U5U5 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00229 
00230     SCE_GXM_COLOR_FORMAT_U4U4U4U4_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U4U4U4U4 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00231     SCE_GXM_COLOR_FORMAT_U4U4U4U4_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U4U4U4U4 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00232     SCE_GXM_COLOR_FORMAT_U4U4U4U4_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U4U4U4U4 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00233     SCE_GXM_COLOR_FORMAT_U4U4U4U4_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U4U4U4U4 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00234 
00235     SCE_GXM_COLOR_FORMAT_U8U3U3U2_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U8U3U3U2,
00236 
00237     SCE_GXM_COLOR_FORMAT_F16_R = SCE_GXM_COLOR_BASE_FORMAT_F16 | SCE_GXM_COLOR_SWIZZLE1_R,
00238     SCE_GXM_COLOR_FORMAT_F16_G = SCE_GXM_COLOR_BASE_FORMAT_F16 | SCE_GXM_COLOR_SWIZZLE1_G,
00239 
00240     SCE_GXM_COLOR_FORMAT_F16F16_GR = SCE_GXM_COLOR_BASE_FORMAT_F16F16 | SCE_GXM_COLOR_SWIZZLE2_GR,
00241     SCE_GXM_COLOR_FORMAT_F16F16_RG = SCE_GXM_COLOR_BASE_FORMAT_F16F16 | SCE_GXM_COLOR_SWIZZLE2_RG,
00242 
00243     SCE_GXM_COLOR_FORMAT_F32_R = SCE_GXM_COLOR_BASE_FORMAT_F32 | SCE_GXM_COLOR_SWIZZLE1_R,
00244 
00245     SCE_GXM_COLOR_FORMAT_S16_R = SCE_GXM_COLOR_BASE_FORMAT_S16 | SCE_GXM_COLOR_SWIZZLE1_R,
00246     SCE_GXM_COLOR_FORMAT_S16_G = SCE_GXM_COLOR_BASE_FORMAT_S16 | SCE_GXM_COLOR_SWIZZLE1_G,
00247 
00248     SCE_GXM_COLOR_FORMAT_S16S16_GR = SCE_GXM_COLOR_BASE_FORMAT_S16S16 | SCE_GXM_COLOR_SWIZZLE2_GR,
00249     SCE_GXM_COLOR_FORMAT_S16S16_RG = SCE_GXM_COLOR_BASE_FORMAT_S16S16 | SCE_GXM_COLOR_SWIZZLE2_RG,
00250 
00251     SCE_GXM_COLOR_FORMAT_U16_R = SCE_GXM_COLOR_BASE_FORMAT_U16 | SCE_GXM_COLOR_SWIZZLE1_R,
00252     SCE_GXM_COLOR_FORMAT_U16_G = SCE_GXM_COLOR_BASE_FORMAT_U16 | SCE_GXM_COLOR_SWIZZLE1_G,
00253 
00254     SCE_GXM_COLOR_FORMAT_U16U16_GR = SCE_GXM_COLOR_BASE_FORMAT_U16U16 | SCE_GXM_COLOR_SWIZZLE2_GR,
00255     SCE_GXM_COLOR_FORMAT_U16U16_RG = SCE_GXM_COLOR_BASE_FORMAT_U16U16 | SCE_GXM_COLOR_SWIZZLE2_RG,
00256 
00257     SCE_GXM_COLOR_FORMAT_U2U10U10U10_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U2U10U10U10 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00258     SCE_GXM_COLOR_FORMAT_U2U10U10U10_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U2U10U10U10 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00259     SCE_GXM_COLOR_FORMAT_U10U10U10U2_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U2U10U10U10 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00260     SCE_GXM_COLOR_FORMAT_U10U10U10U2_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U2U10U10U10 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00261 
00262     SCE_GXM_COLOR_FORMAT_U8_R = SCE_GXM_COLOR_BASE_FORMAT_U8 | SCE_GXM_COLOR_SWIZZLE1_R,
00263     SCE_GXM_COLOR_FORMAT_U8_A = SCE_GXM_COLOR_BASE_FORMAT_U8 | SCE_GXM_COLOR_SWIZZLE1_A,
00264 
00265     SCE_GXM_COLOR_FORMAT_S8_R = SCE_GXM_COLOR_BASE_FORMAT_S8 | SCE_GXM_COLOR_SWIZZLE1_R,
00266     SCE_GXM_COLOR_FORMAT_S8_A = SCE_GXM_COLOR_BASE_FORMAT_S8 | SCE_GXM_COLOR_SWIZZLE1_A,
00267 
00268     SCE_GXM_COLOR_FORMAT_U6S5S5_BGR = SCE_GXM_COLOR_BASE_FORMAT_S5S5U6 | SCE_GXM_COLOR_SWIZZLE3_BGR,
00269     SCE_GXM_COLOR_FORMAT_S5S5U6_RGB = SCE_GXM_COLOR_BASE_FORMAT_S5S5U6 | SCE_GXM_COLOR_SWIZZLE3_RGB,
00270 
00271     SCE_GXM_COLOR_FORMAT_U8U8_GR = SCE_GXM_COLOR_BASE_FORMAT_U8U8 | SCE_GXM_COLOR_SWIZZLE2_GR,
00272     SCE_GXM_COLOR_FORMAT_U8U8_RG = SCE_GXM_COLOR_BASE_FORMAT_U8U8 | SCE_GXM_COLOR_SWIZZLE2_RG,
00273     SCE_GXM_COLOR_FORMAT_U8U8_RA = SCE_GXM_COLOR_BASE_FORMAT_U8U8 | SCE_GXM_COLOR_SWIZZLE2_RA,
00274     SCE_GXM_COLOR_FORMAT_U8U8_AR = SCE_GXM_COLOR_BASE_FORMAT_U8U8 | SCE_GXM_COLOR_SWIZZLE2_AR,
00275 
00276     SCE_GXM_COLOR_FORMAT_S8S8_GR = SCE_GXM_COLOR_BASE_FORMAT_S8S8 | SCE_GXM_COLOR_SWIZZLE2_GR,
00277     SCE_GXM_COLOR_FORMAT_S8S8_RG = SCE_GXM_COLOR_BASE_FORMAT_S8S8 | SCE_GXM_COLOR_SWIZZLE2_RG,
00278     SCE_GXM_COLOR_FORMAT_S8S8_RA = SCE_GXM_COLOR_BASE_FORMAT_S8S8 | SCE_GXM_COLOR_SWIZZLE2_RA,
00279     SCE_GXM_COLOR_FORMAT_S8S8_AR = SCE_GXM_COLOR_BASE_FORMAT_S8S8 | SCE_GXM_COLOR_SWIZZLE2_AR,
00280 
00281     SCE_GXM_COLOR_FORMAT_U8S8S8U8_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U8S8S8U8 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00282     SCE_GXM_COLOR_FORMAT_U8U8S8S8_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U8S8S8U8 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00283     SCE_GXM_COLOR_FORMAT_U8S8S8U8_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U8S8S8U8 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00284     SCE_GXM_COLOR_FORMAT_S8S8U8U8_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U8S8S8U8 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00285 
00286     SCE_GXM_COLOR_FORMAT_S8S8S8S8_ABGR = SCE_GXM_COLOR_BASE_FORMAT_S8S8S8S8 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00287     SCE_GXM_COLOR_FORMAT_S8S8S8S8_ARGB = SCE_GXM_COLOR_BASE_FORMAT_S8S8S8S8 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00288     SCE_GXM_COLOR_FORMAT_S8S8S8S8_RGBA = SCE_GXM_COLOR_BASE_FORMAT_S8S8S8S8 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00289     SCE_GXM_COLOR_FORMAT_S8S8S8S8_BGRA = SCE_GXM_COLOR_BASE_FORMAT_S8S8S8S8 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00290 
00291     SCE_GXM_COLOR_FORMAT_F16F16F16F16_ABGR = SCE_GXM_COLOR_BASE_FORMAT_F16F16F16F16 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00292     SCE_GXM_COLOR_FORMAT_F16F16F16F16_ARGB = SCE_GXM_COLOR_BASE_FORMAT_F16F16F16F16 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00293     SCE_GXM_COLOR_FORMAT_F16F16F16F16_RGBA = SCE_GXM_COLOR_BASE_FORMAT_F16F16F16F16 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00294     SCE_GXM_COLOR_FORMAT_F16F16F16F16_BGRA = SCE_GXM_COLOR_BASE_FORMAT_F16F16F16F16 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00295 
00296     SCE_GXM_COLOR_FORMAT_F32F32_GR = SCE_GXM_COLOR_BASE_FORMAT_F32F32 | SCE_GXM_COLOR_SWIZZLE2_GR,
00297     SCE_GXM_COLOR_FORMAT_F32F32_RG = SCE_GXM_COLOR_BASE_FORMAT_F32F32 | SCE_GXM_COLOR_SWIZZLE2_RG,
00298 
00299     SCE_GXM_COLOR_FORMAT_F10F11F11_BGR = SCE_GXM_COLOR_BASE_FORMAT_F11F11F10 | SCE_GXM_COLOR_SWIZZLE3_BGR,
00300     SCE_GXM_COLOR_FORMAT_F11F11F10_RGB = SCE_GXM_COLOR_BASE_FORMAT_F11F11F10 | SCE_GXM_COLOR_SWIZZLE3_RGB,
00301 
00302     SCE_GXM_COLOR_FORMAT_SE5M9M9M9_BGR = SCE_GXM_COLOR_BASE_FORMAT_SE5M9M9M9 | SCE_GXM_COLOR_SWIZZLE3_BGR,
00303     SCE_GXM_COLOR_FORMAT_SE5M9M9M9_RGB = SCE_GXM_COLOR_BASE_FORMAT_SE5M9M9M9 | SCE_GXM_COLOR_SWIZZLE3_RGB,
00304 
00305     SCE_GXM_COLOR_FORMAT_U2F10F10F10_ABGR = SCE_GXM_COLOR_BASE_FORMAT_U2F10F10F10 | SCE_GXM_COLOR_SWIZZLE4_ABGR,
00306     SCE_GXM_COLOR_FORMAT_U2F10F10F10_ARGB = SCE_GXM_COLOR_BASE_FORMAT_U2F10F10F10 | SCE_GXM_COLOR_SWIZZLE4_ARGB,
00307     SCE_GXM_COLOR_FORMAT_F10F10F10U2_RGBA = SCE_GXM_COLOR_BASE_FORMAT_U2F10F10F10 | SCE_GXM_COLOR_SWIZZLE4_RGBA,
00308     SCE_GXM_COLOR_FORMAT_F10F10F10U2_BGRA = SCE_GXM_COLOR_BASE_FORMAT_U2F10F10F10 | SCE_GXM_COLOR_SWIZZLE4_BGRA,
00309 
00310     // Legacy formats
00311 
00312     SCE_GXM_COLOR_FORMAT_A8B8G8R8 = SCE_GXM_COLOR_FORMAT_U8U8U8U8_ABGR,
00313     SCE_GXM_COLOR_FORMAT_A8R8G8B8 = SCE_GXM_COLOR_FORMAT_U8U8U8U8_ARGB,
00314     SCE_GXM_COLOR_FORMAT_R5G6B5   = SCE_GXM_COLOR_FORMAT_U5U6U5_RGB,
00315     SCE_GXM_COLOR_FORMAT_A1R5G5B5 = SCE_GXM_COLOR_FORMAT_U1U5U5U5_ARGB,
00316     SCE_GXM_COLOR_FORMAT_A4R4G4B4 = SCE_GXM_COLOR_FORMAT_U4U4U4U4_ARGB,
00317     SCE_GXM_COLOR_FORMAT_A8 = SCE_GXM_COLOR_FORMAT_U8_A
00318 } SceGxmColorFormat;
00319 
00320 typedef enum SceGxmColorSurfaceType {
00321     SCE_GXM_COLOR_SURFACE_LINEAR    = 0x00000000u,
00322     SCE_GXM_COLOR_SURFACE_TILED = 0x04000000u,
00323     SCE_GXM_COLOR_SURFACE_SWIZZLED  = 0x08000000u
00324 } SceGxmColorSurfaceType;
00325 
00326 typedef enum SceGxmColorSurfaceGammaMode {
00327     SCE_GXM_COLOR_SURFACE_GAMMA_NONE    = 0x00000000u,
00328     SCE_GXM_COLOR_SURFACE_GAMMA_R   = 0x00001000u,
00329     SCE_GXM_COLOR_SURFACE_GAMMA_GR  = 0x00003000u,
00330     SCE_GXM_COLOR_SURFACE_GAMMA_BGR = 0x00001000u
00331 } SceGxmColorSurfaceGammaMode;
00332 
00333 typedef enum SceGxmColorSurfaceDitherMode {
00334     SCE_GXM_COLOR_SURFACE_DITHER_DISABLED   = 0x00000000u,
00335     SCE_GXM_COLOR_SURFACE_DITHER_ENABLED    = 0x00000008u
00336 } SceGxmColorSurfaceDitherMode;
00337 
00338 typedef enum SceGxmDepthStencilSurfaceType {
00339     SCE_GXM_DEPTH_STENCIL_SURFACE_LINEAR    = 0x00000000u,
00340     SCE_GXM_DEPTH_STENCIL_SURFACE_TILED = 0x00011000u
00341 } SceGxmDepthStencilSurfaceType;
00342 
00343 typedef enum SceGxmOutputRegisterFormat {
00344     SCE_GXM_OUTPUT_REGISTER_FORMAT_DECLARED,
00345     SCE_GXM_OUTPUT_REGISTER_FORMAT_UCHAR4,
00346     SCE_GXM_OUTPUT_REGISTER_FORMAT_CHAR4,
00347     SCE_GXM_OUTPUT_REGISTER_FORMAT_USHORT2,
00348     SCE_GXM_OUTPUT_REGISTER_FORMAT_SHORT2,
00349     SCE_GXM_OUTPUT_REGISTER_FORMAT_HALF4,
00350     SCE_GXM_OUTPUT_REGISTER_FORMAT_HALF2,
00351     SCE_GXM_OUTPUT_REGISTER_FORMAT_FLOAT2,
00352     SCE_GXM_OUTPUT_REGISTER_FORMAT_FLOAT
00353 } SceGxmOutputRegisterFormat;
00354 
00355 typedef enum SceGxmMultisampleMode {
00356     SCE_GXM_MULTISAMPLE_NONE,
00357     SCE_GXM_MULTISAMPLE_2X,
00358     SCE_GXM_MULTISAMPLE_4X
00359 } SceGxmMultisampleMode;
00360 
00361 typedef enum SceGxmTextureSwizzle4Mode {
00362     SCE_GXM_TEXTURE_SWIZZLE4_ABGR   = 0x00000000u,
00363     SCE_GXM_TEXTURE_SWIZZLE4_ARGB   = 0x00001000u,
00364     SCE_GXM_TEXTURE_SWIZZLE4_RGBA   = 0x00002000u,
00365     SCE_GXM_TEXTURE_SWIZZLE4_BGRA   = 0x00003000u,
00366     SCE_GXM_TEXTURE_SWIZZLE4_1BGR   = 0x00004000u,
00367     SCE_GXM_TEXTURE_SWIZZLE4_1RGB   = 0x00005000u,
00368     SCE_GXM_TEXTURE_SWIZZLE4_RGB1   = 0x00006000u,
00369     SCE_GXM_TEXTURE_SWIZZLE4_BGR1   = 0x00007000u
00370 } SceGxmTextureSwizzle4Mode;
00371 
00372 typedef enum SceGxmTextureSwizzle3Mode {
00373     SCE_GXM_TEXTURE_SWIZZLE3_BGR    = 0x00000000u,
00374     SCE_GXM_TEXTURE_SWIZZLE3_RGB    = 0x00001000u
00375 } SceGxmTextureSwizzle3Mode;
00376 
00377 typedef enum SceGxmTextureSwizzle2Mode {
00378     SCE_GXM_TEXTURE_SWIZZLE2_GR = 0x00000000u,
00379     SCE_GXM_TEXTURE_SWIZZLE2_00GR   = 0x00001000u,
00380     SCE_GXM_TEXTURE_SWIZZLE2_GRRR   = 0x00002000u,
00381     SCE_GXM_TEXTURE_SWIZZLE2_RGGG   = 0x00003000u,
00382     SCE_GXM_TEXTURE_SWIZZLE2_GRGR   = 0x00004000u,
00383     SCE_GXM_TEXTURE_SWIZZLE2_00RG   = 0x00005000u
00384 } SceGxmTextureSwizzle2Mode;
00385 
00386 typedef enum SceGxmTextureSwizzle2ModeAlt {
00387     SCE_GXM_TEXTURE_SWIZZLE2_SD = 0x00000000u,
00388     SCE_GXM_TEXTURE_SWIZZLE2_DS = 0x00001000u
00389 } SceGxmTextureSwizzle2ModeAlt;
00390 
00391 typedef enum SceGxmTextureSwizzle1Mode {
00392     SCE_GXM_TEXTURE_SWIZZLE1_R  = 0x00000000u,
00393     SCE_GXM_TEXTURE_SWIZZLE1_000R   = 0x00001000u,
00394     SCE_GXM_TEXTURE_SWIZZLE1_111R   = 0x00002000u,
00395     SCE_GXM_TEXTURE_SWIZZLE1_RRRR   = 0x00003000u,
00396     SCE_GXM_TEXTURE_SWIZZLE1_0RRR   = 0x00004000u,
00397     SCE_GXM_TEXTURE_SWIZZLE1_1RRR   = 0x00005000u,
00398     SCE_GXM_TEXTURE_SWIZZLE1_R000   = 0x00006000u,
00399     SCE_GXM_TEXTURE_SWIZZLE1_R111   = 0x00007000u
00400 } SceGxmTextureSwizzle1Mode;
00401 
00402 typedef enum SceGxmTextureSwizzleYUV422Mode {
00403     SCE_GXM_TEXTURE_SWIZZLE_YUYV_CSC0   = 0x00000000u,
00404     SCE_GXM_TEXTURE_SWIZZLE_YVYU_CSC0   = 0x00001000u,
00405     SCE_GXM_TEXTURE_SWIZZLE_UYVY_CSC0   = 0x00002000u,
00406     SCE_GXM_TEXTURE_SWIZZLE_VYUY_CSC0   = 0x00003000u,
00407     SCE_GXM_TEXTURE_SWIZZLE_YUYV_CSC1   = 0x00004000u,
00408     SCE_GXM_TEXTURE_SWIZZLE_YVYU_CSC1   = 0x00005000u,
00409     SCE_GXM_TEXTURE_SWIZZLE_UYVY_CSC1   = 0x00006000u,
00410     SCE_GXM_TEXTURE_SWIZZLE_VYUY_CSC1   = 0x00007000u
00411 } SceGxmTextureSwizzleYUV422Mode;
00412 
00413 typedef enum SceGxmTextureSwizzleYUV420Mode {
00414     SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC0    = 0x00000000u,
00415     SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC0    = 0x00001000u,
00416     SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC1    = 0x00002000u,
00417     SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC1    = 0x00003000u
00418 } SceGxmTextureSwizzleYUV420Mode;
00419 
00420 typedef enum SceGxmTextureBaseFormat {
00421     SCE_GXM_TEXTURE_BASE_FORMAT_U8  = 0x00000000,
00422     SCE_GXM_TEXTURE_BASE_FORMAT_S8  = 0x01000000,
00423     SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4    = 0x02000000,
00424     SCE_GXM_TEXTURE_BASE_FORMAT_U8U3U3U2    = 0x03000000,
00425     SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5    = 0x04000000,
00426     SCE_GXM_TEXTURE_BASE_FORMAT_U5U6U5  = 0x05000000,
00427     SCE_GXM_TEXTURE_BASE_FORMAT_S5S5U6  = 0x06000000,
00428     SCE_GXM_TEXTURE_BASE_FORMAT_U8U8    = 0x07000000,
00429     SCE_GXM_TEXTURE_BASE_FORMAT_S8S8    = 0x08000000,
00430     SCE_GXM_TEXTURE_BASE_FORMAT_U16 = 0x09000000,
00431     SCE_GXM_TEXTURE_BASE_FORMAT_S16 = 0x0a000000,
00432     SCE_GXM_TEXTURE_BASE_FORMAT_F16 = 0x0b000000,
00433     SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8    = 0x0c000000,
00434     SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8    = 0x0d000000,
00435     SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 = 0x0e000000,
00436     SCE_GXM_TEXTURE_BASE_FORMAT_U16U16  = 0x0f000000,
00437     SCE_GXM_TEXTURE_BASE_FORMAT_S16S16  = 0x10000000,
00438     SCE_GXM_TEXTURE_BASE_FORMAT_F16F16  = 0x11000000,
00439     SCE_GXM_TEXTURE_BASE_FORMAT_F32 = 0x12000000,
00440     SCE_GXM_TEXTURE_BASE_FORMAT_F32M    = 0x13000000,
00441     SCE_GXM_TEXTURE_BASE_FORMAT_X8S8S8U8    = 0x14000000,
00442     SCE_GXM_TEXTURE_BASE_FORMAT_X8U24   = 0x15000000,
00443     SCE_GXM_TEXTURE_BASE_FORMAT_U32 = 0x17000000,
00444     SCE_GXM_TEXTURE_BASE_FORMAT_S32 = 0x18000000,
00445     SCE_GXM_TEXTURE_BASE_FORMAT_SE5M9M9M9   = 0x19000000,
00446     SCE_GXM_TEXTURE_BASE_FORMAT_F11F11F10   = 0x1a000000,
00447     SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16    = 0x1b000000,
00448     SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16    = 0x1c000000,
00449     SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16    = 0x1d000000,
00450     SCE_GXM_TEXTURE_BASE_FORMAT_F32F32  = 0x1e000000,
00451     SCE_GXM_TEXTURE_BASE_FORMAT_U32U32  = 0x1f000000,
00452     SCE_GXM_TEXTURE_BASE_FORMAT_PVRT2BPP    = 0x80000000,
00453     SCE_GXM_TEXTURE_BASE_FORMAT_PVRT4BPP    = 0x81000000,
00454     SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII2BPP  = 0x82000000,
00455     SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII4BPP  = 0x83000000,
00456     SCE_GXM_TEXTURE_BASE_FORMAT_UBC1    = 0x85000000,
00457     SCE_GXM_TEXTURE_BASE_FORMAT_UBC2    = 0x86000000,
00458     SCE_GXM_TEXTURE_BASE_FORMAT_UBC3    = 0x87000000,
00459     SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P2    = 0x90000000,
00460     SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P3    = 0x91000000,
00461     SCE_GXM_TEXTURE_BASE_FORMAT_YUV422  = 0x92000000,
00462     SCE_GXM_TEXTURE_BASE_FORMAT_P4  = 0x94000000,
00463     SCE_GXM_TEXTURE_BASE_FORMAT_P8  = 0x95000000,
00464     SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8  = 0x98000000,
00465     SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8  = 0x99000000,
00466     SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 = 0x9a000000
00467 } SceGxmTextureBaseFormat;
00468 
00469 typedef enum SceGxmTextureFormat {
00470     // Supported formats
00471 
00472     SCE_GXM_TEXTURE_FORMAT_U8_000R = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00473     SCE_GXM_TEXTURE_FORMAT_U8_111R = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00474     SCE_GXM_TEXTURE_FORMAT_U8_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00475     SCE_GXM_TEXTURE_FORMAT_U8_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00476     SCE_GXM_TEXTURE_FORMAT_U8_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00477     SCE_GXM_TEXTURE_FORMAT_U8_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00478     SCE_GXM_TEXTURE_FORMAT_U8_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00479     SCE_GXM_TEXTURE_FORMAT_U8_R = SCE_GXM_TEXTURE_BASE_FORMAT_U8 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00480 
00481     SCE_GXM_TEXTURE_FORMAT_S8_000R = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00482     SCE_GXM_TEXTURE_FORMAT_S8_111R = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00483     SCE_GXM_TEXTURE_FORMAT_S8_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00484     SCE_GXM_TEXTURE_FORMAT_S8_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00485     SCE_GXM_TEXTURE_FORMAT_S8_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00486     SCE_GXM_TEXTURE_FORMAT_S8_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00487     SCE_GXM_TEXTURE_FORMAT_S8_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00488     SCE_GXM_TEXTURE_FORMAT_S8_R = SCE_GXM_TEXTURE_BASE_FORMAT_S8 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00489 
00490     SCE_GXM_TEXTURE_FORMAT_U4U4U4U4_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00491     SCE_GXM_TEXTURE_FORMAT_U4U4U4U4_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00492     SCE_GXM_TEXTURE_FORMAT_U4U4U4U4_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00493     SCE_GXM_TEXTURE_FORMAT_U4U4U4U4_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00494     SCE_GXM_TEXTURE_FORMAT_X4U4U4U4_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00495     SCE_GXM_TEXTURE_FORMAT_X4U4U4U4_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00496     SCE_GXM_TEXTURE_FORMAT_U4U4U4X4_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00497     SCE_GXM_TEXTURE_FORMAT_U4U4U4X4_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U4U4U4U4 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00498 
00499     SCE_GXM_TEXTURE_FORMAT_U8U3U3U2_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U8U3U3U2,
00500 
00501     SCE_GXM_TEXTURE_FORMAT_U1U5U5U5_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00502     SCE_GXM_TEXTURE_FORMAT_U1U5U5U5_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00503     SCE_GXM_TEXTURE_FORMAT_U5U5U5U1_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00504     SCE_GXM_TEXTURE_FORMAT_U5U5U5U1_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00505     SCE_GXM_TEXTURE_FORMAT_X1U5U5U5_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00506     SCE_GXM_TEXTURE_FORMAT_X1U5U5U5_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00507     SCE_GXM_TEXTURE_FORMAT_U5U5U5X1_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00508     SCE_GXM_TEXTURE_FORMAT_U5U5U5X1_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U1U5U5U5 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00509 
00510     SCE_GXM_TEXTURE_FORMAT_U5U6U5_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U5U6U5 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00511     SCE_GXM_TEXTURE_FORMAT_U5U6U5_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U5U6U5 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00512 
00513     SCE_GXM_TEXTURE_FORMAT_U6S5S5_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_S5S5U6 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00514     SCE_GXM_TEXTURE_FORMAT_S5S5U6_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_S5S5U6 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00515 
00516     SCE_GXM_TEXTURE_FORMAT_U8U8_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00517     SCE_GXM_TEXTURE_FORMAT_U8U8_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00518     SCE_GXM_TEXTURE_FORMAT_U8U8_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00519     SCE_GXM_TEXTURE_FORMAT_U8U8_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00520     SCE_GXM_TEXTURE_FORMAT_U8U8_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00521     SCE_GXM_TEXTURE_FORMAT_U8U8_GR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00522 
00523     SCE_GXM_TEXTURE_FORMAT_S8S8_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00524     SCE_GXM_TEXTURE_FORMAT_S8S8_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00525     SCE_GXM_TEXTURE_FORMAT_S8S8_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00526     SCE_GXM_TEXTURE_FORMAT_S8S8_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00527     SCE_GXM_TEXTURE_FORMAT_S8S8_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00528     SCE_GXM_TEXTURE_FORMAT_S8S8_GR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00529 
00530     SCE_GXM_TEXTURE_FORMAT_U16_000R = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00531     SCE_GXM_TEXTURE_FORMAT_U16_111R = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00532     SCE_GXM_TEXTURE_FORMAT_U16_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00533     SCE_GXM_TEXTURE_FORMAT_U16_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00534     SCE_GXM_TEXTURE_FORMAT_U16_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00535     SCE_GXM_TEXTURE_FORMAT_U16_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00536     SCE_GXM_TEXTURE_FORMAT_U16_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00537     SCE_GXM_TEXTURE_FORMAT_U16_R = SCE_GXM_TEXTURE_BASE_FORMAT_U16 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00538 
00539     SCE_GXM_TEXTURE_FORMAT_S16_000R = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00540     SCE_GXM_TEXTURE_FORMAT_S16_111R = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00541     SCE_GXM_TEXTURE_FORMAT_S16_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00542     SCE_GXM_TEXTURE_FORMAT_S16_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00543     SCE_GXM_TEXTURE_FORMAT_S16_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00544     SCE_GXM_TEXTURE_FORMAT_S16_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00545     SCE_GXM_TEXTURE_FORMAT_S16_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00546     SCE_GXM_TEXTURE_FORMAT_S16_R = SCE_GXM_TEXTURE_BASE_FORMAT_S16 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00547 
00548     SCE_GXM_TEXTURE_FORMAT_F16_000R = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00549     SCE_GXM_TEXTURE_FORMAT_F16_111R = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00550     SCE_GXM_TEXTURE_FORMAT_F16_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00551     SCE_GXM_TEXTURE_FORMAT_F16_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00552     SCE_GXM_TEXTURE_FORMAT_F16_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00553     SCE_GXM_TEXTURE_FORMAT_F16_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00554     SCE_GXM_TEXTURE_FORMAT_F16_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00555     SCE_GXM_TEXTURE_FORMAT_F16_R = SCE_GXM_TEXTURE_BASE_FORMAT_F16 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00556 
00557     SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00558     SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00559     SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00560     SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00561     SCE_GXM_TEXTURE_FORMAT_X8U8U8U8_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00562     SCE_GXM_TEXTURE_FORMAT_X8U8U8U8_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00563     SCE_GXM_TEXTURE_FORMAT_U8U8U8X8_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00564     SCE_GXM_TEXTURE_FORMAT_U8U8U8X8_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00565 
00566     SCE_GXM_TEXTURE_FORMAT_S8S8S8S8_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00567     SCE_GXM_TEXTURE_FORMAT_S8S8S8S8_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00568     SCE_GXM_TEXTURE_FORMAT_S8S8S8S8_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00569     SCE_GXM_TEXTURE_FORMAT_S8S8S8S8_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00570     SCE_GXM_TEXTURE_FORMAT_X8S8S8S8_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00571     SCE_GXM_TEXTURE_FORMAT_X8S8S8S8_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00572     SCE_GXM_TEXTURE_FORMAT_S8S8S8X8_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00573     SCE_GXM_TEXTURE_FORMAT_S8S8S8X8_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00574 
00575     SCE_GXM_TEXTURE_FORMAT_U2U10U10U10_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00576     SCE_GXM_TEXTURE_FORMAT_U2U10U10U10_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00577     SCE_GXM_TEXTURE_FORMAT_U10U10U10U2_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00578     SCE_GXM_TEXTURE_FORMAT_U10U10U10U2_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00579     SCE_GXM_TEXTURE_FORMAT_X2U10U10U10_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00580     SCE_GXM_TEXTURE_FORMAT_X2U10U10U10_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00581     SCE_GXM_TEXTURE_FORMAT_U10U10U10X2_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00582     SCE_GXM_TEXTURE_FORMAT_U10U10U10X2_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U2U10U10U10 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00583 
00584     SCE_GXM_TEXTURE_FORMAT_U16U16_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00585     SCE_GXM_TEXTURE_FORMAT_U16U16_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00586     SCE_GXM_TEXTURE_FORMAT_U16U16_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00587     SCE_GXM_TEXTURE_FORMAT_U16U16_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00588     SCE_GXM_TEXTURE_FORMAT_U16U16_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00589     SCE_GXM_TEXTURE_FORMAT_U16U16_GR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00590 
00591     SCE_GXM_TEXTURE_FORMAT_S16S16_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00592     SCE_GXM_TEXTURE_FORMAT_S16S16_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00593     SCE_GXM_TEXTURE_FORMAT_S16S16_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00594     SCE_GXM_TEXTURE_FORMAT_S16S16_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00595     SCE_GXM_TEXTURE_FORMAT_S16S16_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00596     SCE_GXM_TEXTURE_FORMAT_S16S16_GR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00597 
00598     SCE_GXM_TEXTURE_FORMAT_F16F16_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00599     SCE_GXM_TEXTURE_FORMAT_F16F16_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00600     SCE_GXM_TEXTURE_FORMAT_F16F16_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00601     SCE_GXM_TEXTURE_FORMAT_F16F16_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00602     SCE_GXM_TEXTURE_FORMAT_F16F16_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00603     SCE_GXM_TEXTURE_FORMAT_F16F16_GR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00604 
00605     SCE_GXM_TEXTURE_FORMAT_F32_000R = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00606     SCE_GXM_TEXTURE_FORMAT_F32_111R = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00607     SCE_GXM_TEXTURE_FORMAT_F32_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00608     SCE_GXM_TEXTURE_FORMAT_F32_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00609     SCE_GXM_TEXTURE_FORMAT_F32_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00610     SCE_GXM_TEXTURE_FORMAT_F32_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00611     SCE_GXM_TEXTURE_FORMAT_F32_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00612     SCE_GXM_TEXTURE_FORMAT_F32_R = SCE_GXM_TEXTURE_BASE_FORMAT_F32 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00613 
00614     SCE_GXM_TEXTURE_FORMAT_F32M_000R = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00615     SCE_GXM_TEXTURE_FORMAT_F32M_111R = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00616     SCE_GXM_TEXTURE_FORMAT_F32M_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00617     SCE_GXM_TEXTURE_FORMAT_F32M_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00618     SCE_GXM_TEXTURE_FORMAT_F32M_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00619     SCE_GXM_TEXTURE_FORMAT_F32M_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00620     SCE_GXM_TEXTURE_FORMAT_F32M_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00621     SCE_GXM_TEXTURE_FORMAT_F32M_R = SCE_GXM_TEXTURE_BASE_FORMAT_F32M | SCE_GXM_TEXTURE_SWIZZLE1_R,
00622 
00623     SCE_GXM_TEXTURE_FORMAT_X8S8S8U8_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_X8S8S8U8 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00624     SCE_GXM_TEXTURE_FORMAT_X8U8S8S8_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_X8S8S8U8 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00625 
00626     SCE_GXM_TEXTURE_FORMAT_X8U24_SD = SCE_GXM_TEXTURE_BASE_FORMAT_X8U24 | SCE_GXM_TEXTURE_SWIZZLE2_SD,
00627     SCE_GXM_TEXTURE_FORMAT_U24X8_DS = SCE_GXM_TEXTURE_BASE_FORMAT_X8U24 | SCE_GXM_TEXTURE_SWIZZLE2_DS,
00628 
00629     SCE_GXM_TEXTURE_FORMAT_U32_000R = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00630     SCE_GXM_TEXTURE_FORMAT_U32_111R = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00631     SCE_GXM_TEXTURE_FORMAT_U32_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00632     SCE_GXM_TEXTURE_FORMAT_U32_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00633     SCE_GXM_TEXTURE_FORMAT_U32_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00634     SCE_GXM_TEXTURE_FORMAT_U32_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00635     SCE_GXM_TEXTURE_FORMAT_U32_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00636     SCE_GXM_TEXTURE_FORMAT_U32_R = SCE_GXM_TEXTURE_BASE_FORMAT_U32 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00637 
00638     SCE_GXM_TEXTURE_FORMAT_S32_000R = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_000R,
00639     SCE_GXM_TEXTURE_FORMAT_S32_111R = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_111R,
00640     SCE_GXM_TEXTURE_FORMAT_S32_RRRR = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_RRRR,
00641     SCE_GXM_TEXTURE_FORMAT_S32_0RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_0RRR,
00642     SCE_GXM_TEXTURE_FORMAT_S32_1RRR = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_1RRR,
00643     SCE_GXM_TEXTURE_FORMAT_S32_R000 = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_R000,
00644     SCE_GXM_TEXTURE_FORMAT_S32_R111 = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_R111,
00645     SCE_GXM_TEXTURE_FORMAT_S32_R = SCE_GXM_TEXTURE_BASE_FORMAT_S32 | SCE_GXM_TEXTURE_SWIZZLE1_R,
00646 
00647     SCE_GXM_TEXTURE_FORMAT_SE5M9M9M9_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_SE5M9M9M9 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00648     SCE_GXM_TEXTURE_FORMAT_SE5M9M9M9_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_SE5M9M9M9 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00649 
00650     SCE_GXM_TEXTURE_FORMAT_F10F11F11_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_F11F11F10 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00651     SCE_GXM_TEXTURE_FORMAT_F11F11F10_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_F11F11F10 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00652 
00653     SCE_GXM_TEXTURE_FORMAT_F16F16F16F16_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00654     SCE_GXM_TEXTURE_FORMAT_F16F16F16F16_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00655     SCE_GXM_TEXTURE_FORMAT_F16F16F16F16_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00656     SCE_GXM_TEXTURE_FORMAT_F16F16F16F16_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00657     SCE_GXM_TEXTURE_FORMAT_X16F16F16F16_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00658     SCE_GXM_TEXTURE_FORMAT_X16F16F16F16_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00659     SCE_GXM_TEXTURE_FORMAT_F16F16F16X16_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00660     SCE_GXM_TEXTURE_FORMAT_F16F16F16X16_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_F16F16F16F16 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00661 
00662     SCE_GXM_TEXTURE_FORMAT_U16U16U16U16_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00663     SCE_GXM_TEXTURE_FORMAT_U16U16U16U16_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00664     SCE_GXM_TEXTURE_FORMAT_U16U16U16U16_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00665     SCE_GXM_TEXTURE_FORMAT_U16U16U16U16_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00666     SCE_GXM_TEXTURE_FORMAT_X16U16U16U16_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00667     SCE_GXM_TEXTURE_FORMAT_X16U16U16U16_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00668     SCE_GXM_TEXTURE_FORMAT_U16U16U16X16_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00669     SCE_GXM_TEXTURE_FORMAT_U16U16U16X16_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U16U16U16U16 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00670 
00671     SCE_GXM_TEXTURE_FORMAT_S16S16S16S16_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00672     SCE_GXM_TEXTURE_FORMAT_S16S16S16S16_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00673     SCE_GXM_TEXTURE_FORMAT_S16S16S16S16_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00674     SCE_GXM_TEXTURE_FORMAT_S16S16S16S16_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00675     SCE_GXM_TEXTURE_FORMAT_X16S16S16S16_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00676     SCE_GXM_TEXTURE_FORMAT_X16S16S16S16_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00677     SCE_GXM_TEXTURE_FORMAT_S16S16S16X16_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00678     SCE_GXM_TEXTURE_FORMAT_S16S16S16X16_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_S16S16S16S16 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00679 
00680     SCE_GXM_TEXTURE_FORMAT_F32F32_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00681     SCE_GXM_TEXTURE_FORMAT_F32F32_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00682     SCE_GXM_TEXTURE_FORMAT_F32F32_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00683     SCE_GXM_TEXTURE_FORMAT_F32F32_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00684     SCE_GXM_TEXTURE_FORMAT_F32F32_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00685     SCE_GXM_TEXTURE_FORMAT_F32F32_GR = SCE_GXM_TEXTURE_BASE_FORMAT_F32F32 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00686 
00687     SCE_GXM_TEXTURE_FORMAT_U32U32_00GR = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_00GR,
00688     SCE_GXM_TEXTURE_FORMAT_U32U32_GRRR = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_GRRR,
00689     SCE_GXM_TEXTURE_FORMAT_U32U32_RGGG = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_RGGG,
00690     SCE_GXM_TEXTURE_FORMAT_U32U32_GRGR = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_GRGR,
00691     SCE_GXM_TEXTURE_FORMAT_U32U32_00RG = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_00RG,
00692     SCE_GXM_TEXTURE_FORMAT_U32U32_GR = SCE_GXM_TEXTURE_BASE_FORMAT_U32U32 | SCE_GXM_TEXTURE_SWIZZLE2_GR,
00693 
00694     SCE_GXM_TEXTURE_FORMAT_PVRT2BPP_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRT2BPP | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00695     SCE_GXM_TEXTURE_FORMAT_PVRT2BPP_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRT2BPP | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00696 
00697     SCE_GXM_TEXTURE_FORMAT_PVRT4BPP_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRT4BPP | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00698     SCE_GXM_TEXTURE_FORMAT_PVRT4BPP_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRT4BPP | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00699 
00700     SCE_GXM_TEXTURE_FORMAT_PVRTII2BPP_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII2BPP | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00701     SCE_GXM_TEXTURE_FORMAT_PVRTII2BPP_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII2BPP | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00702 
00703     SCE_GXM_TEXTURE_FORMAT_PVRTII4BPP_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII4BPP | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00704     SCE_GXM_TEXTURE_FORMAT_PVRTII4BPP_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_PVRTII4BPP | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00705 
00706     SCE_GXM_TEXTURE_FORMAT_UBC1_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_UBC1 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00707 
00708     SCE_GXM_TEXTURE_FORMAT_UBC2_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_UBC2 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00709 
00710     SCE_GXM_TEXTURE_FORMAT_UBC3_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_UBC3 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00711 
00712     SCE_GXM_TEXTURE_FORMAT_YUV420P2_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P2 | SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC0,
00713     SCE_GXM_TEXTURE_FORMAT_YVU420P2_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P2 | SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC0,
00714     SCE_GXM_TEXTURE_FORMAT_YUV420P2_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P2 | SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC1,
00715     SCE_GXM_TEXTURE_FORMAT_YVU420P2_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P2 | SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC1,
00716 
00717     SCE_GXM_TEXTURE_FORMAT_YUV420P3_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P3 | SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC0,
00718     SCE_GXM_TEXTURE_FORMAT_YVU420P3_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P3 | SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC0,
00719     SCE_GXM_TEXTURE_FORMAT_YUV420P3_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P3 | SCE_GXM_TEXTURE_SWIZZLE_YUV_CSC1,
00720     SCE_GXM_TEXTURE_FORMAT_YVU420P3_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV420P3 | SCE_GXM_TEXTURE_SWIZZLE_YVU_CSC1,
00721 
00722     SCE_GXM_TEXTURE_FORMAT_YUYV422_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_YUYV_CSC0,
00723     SCE_GXM_TEXTURE_FORMAT_YVYU422_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_YVYU_CSC0,
00724     SCE_GXM_TEXTURE_FORMAT_UYVY422_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_UYVY_CSC0,
00725     SCE_GXM_TEXTURE_FORMAT_VYUY422_CSC0 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_VYUY_CSC0,
00726     SCE_GXM_TEXTURE_FORMAT_YUYV422_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_YUYV_CSC1,
00727     SCE_GXM_TEXTURE_FORMAT_YVYU422_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_YVYU_CSC1,
00728     SCE_GXM_TEXTURE_FORMAT_UYVY422_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_UYVY_CSC1,
00729     SCE_GXM_TEXTURE_FORMAT_VYUY422_CSC1 = SCE_GXM_TEXTURE_BASE_FORMAT_YUV422 | SCE_GXM_TEXTURE_SWIZZLE_VYUY_CSC1,
00730 
00731     SCE_GXM_TEXTURE_FORMAT_P4_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00732     SCE_GXM_TEXTURE_FORMAT_P4_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00733     SCE_GXM_TEXTURE_FORMAT_P4_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00734     SCE_GXM_TEXTURE_FORMAT_P4_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00735     SCE_GXM_TEXTURE_FORMAT_P4_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00736     SCE_GXM_TEXTURE_FORMAT_P4_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00737     SCE_GXM_TEXTURE_FORMAT_P4_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00738     SCE_GXM_TEXTURE_FORMAT_P4_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_P4 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00739 
00740     SCE_GXM_TEXTURE_FORMAT_P8_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00741     SCE_GXM_TEXTURE_FORMAT_P8_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00742     SCE_GXM_TEXTURE_FORMAT_P8_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00743     SCE_GXM_TEXTURE_FORMAT_P8_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00744     SCE_GXM_TEXTURE_FORMAT_P8_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00745     SCE_GXM_TEXTURE_FORMAT_P8_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00746     SCE_GXM_TEXTURE_FORMAT_P8_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00747     SCE_GXM_TEXTURE_FORMAT_P8_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_P8 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00748 
00749     SCE_GXM_TEXTURE_FORMAT_U8U8U8_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00750     SCE_GXM_TEXTURE_FORMAT_U8U8U8_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U8U8U8 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00751 
00752     SCE_GXM_TEXTURE_FORMAT_S8S8S8_BGR = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE3_BGR,
00753     SCE_GXM_TEXTURE_FORMAT_S8S8S8_RGB = SCE_GXM_TEXTURE_BASE_FORMAT_S8S8S8 | SCE_GXM_TEXTURE_SWIZZLE3_RGB,
00754 
00755     SCE_GXM_TEXTURE_FORMAT_U2F10F10F10_ABGR = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_ABGR,
00756     SCE_GXM_TEXTURE_FORMAT_U2F10F10F10_ARGB = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_ARGB,
00757     SCE_GXM_TEXTURE_FORMAT_F10F10F10U2_RGBA = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_RGBA,
00758     SCE_GXM_TEXTURE_FORMAT_F10F10F10U2_BGRA = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_BGRA,
00759     SCE_GXM_TEXTURE_FORMAT_X2F10F10F10_1BGR = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_1BGR,
00760     SCE_GXM_TEXTURE_FORMAT_X2F10F10F10_1RGB = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_1RGB,
00761     SCE_GXM_TEXTURE_FORMAT_F10F10F10X2_RGB1 = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_RGB1,
00762     SCE_GXM_TEXTURE_FORMAT_F10F10F10X2_BGR1 = SCE_GXM_TEXTURE_BASE_FORMAT_U2F10F10F10 | SCE_GXM_TEXTURE_SWIZZLE4_BGR1,
00763 
00764     // Legacy formats
00765 
00766     SCE_GXM_TEXTURE_FORMAT_L8 = SCE_GXM_TEXTURE_FORMAT_U8_1RRR,
00767     SCE_GXM_TEXTURE_FORMAT_A8 = SCE_GXM_TEXTURE_FORMAT_U8_R000,
00768     SCE_GXM_TEXTURE_FORMAT_R8 = SCE_GXM_TEXTURE_FORMAT_U8_000R,
00769     SCE_GXM_TEXTURE_FORMAT_A4R4G4B4 = SCE_GXM_TEXTURE_FORMAT_U4U4U4U4_ARGB,
00770     SCE_GXM_TEXTURE_FORMAT_A1R5G5B5 = SCE_GXM_TEXTURE_FORMAT_U1U5U5U5_ARGB,
00771     SCE_GXM_TEXTURE_FORMAT_R5G6B5 = SCE_GXM_TEXTURE_FORMAT_U5U6U5_RGB,
00772     SCE_GXM_TEXTURE_FORMAT_A8L8 = SCE_GXM_TEXTURE_FORMAT_U8U8_GRRR,
00773     SCE_GXM_TEXTURE_FORMAT_L8A8 = SCE_GXM_TEXTURE_FORMAT_U8U8_RGGG,
00774     SCE_GXM_TEXTURE_FORMAT_G8R8 = SCE_GXM_TEXTURE_FORMAT_U8U8_00GR,
00775     SCE_GXM_TEXTURE_FORMAT_L16 = SCE_GXM_TEXTURE_FORMAT_U16_1RRR,
00776     SCE_GXM_TEXTURE_FORMAT_A16 = SCE_GXM_TEXTURE_FORMAT_U16_R000,
00777     SCE_GXM_TEXTURE_FORMAT_R16 = SCE_GXM_TEXTURE_FORMAT_U16_000R,
00778     SCE_GXM_TEXTURE_FORMAT_D16 = SCE_GXM_TEXTURE_FORMAT_U16_R,
00779     SCE_GXM_TEXTURE_FORMAT_LF16 = SCE_GXM_TEXTURE_FORMAT_F16_1RRR,
00780     SCE_GXM_TEXTURE_FORMAT_AF16 = SCE_GXM_TEXTURE_FORMAT_F16_R000,
00781     SCE_GXM_TEXTURE_FORMAT_RF16 = SCE_GXM_TEXTURE_FORMAT_F16_000R,
00782     SCE_GXM_TEXTURE_FORMAT_A8R8G8B8 = SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_ARGB,
00783     SCE_GXM_TEXTURE_FORMAT_A8B8G8R8 = SCE_GXM_TEXTURE_FORMAT_U8U8U8U8_ABGR,
00784     SCE_GXM_TEXTURE_FORMAT_AF16LF16 = SCE_GXM_TEXTURE_FORMAT_F16F16_GRRR,
00785     SCE_GXM_TEXTURE_FORMAT_LF16AF16 = SCE_GXM_TEXTURE_FORMAT_F16F16_RGGG,
00786     SCE_GXM_TEXTURE_FORMAT_GF16RF16 = SCE_GXM_TEXTURE_FORMAT_F16F16_00GR,
00787     SCE_GXM_TEXTURE_FORMAT_LF32M = SCE_GXM_TEXTURE_FORMAT_F32M_1RRR,
00788     SCE_GXM_TEXTURE_FORMAT_AF32M = SCE_GXM_TEXTURE_FORMAT_F32M_R000,
00789     SCE_GXM_TEXTURE_FORMAT_RF32M = SCE_GXM_TEXTURE_FORMAT_F32M_000R,
00790     SCE_GXM_TEXTURE_FORMAT_DF32M = SCE_GXM_TEXTURE_FORMAT_F32M_R,
00791     SCE_GXM_TEXTURE_FORMAT_VYUY = SCE_GXM_TEXTURE_FORMAT_VYUY422_CSC0,
00792     SCE_GXM_TEXTURE_FORMAT_YVYU = SCE_GXM_TEXTURE_FORMAT_YVYU422_CSC0,
00793     SCE_GXM_TEXTURE_FORMAT_UBC1 = SCE_GXM_TEXTURE_FORMAT_UBC1_ABGR,
00794     SCE_GXM_TEXTURE_FORMAT_UBC2 = SCE_GXM_TEXTURE_FORMAT_UBC2_ABGR,
00795     SCE_GXM_TEXTURE_FORMAT_UBC3 = SCE_GXM_TEXTURE_FORMAT_UBC3_ABGR,
00796     SCE_GXM_TEXTURE_FORMAT_PVRT2BPP = SCE_GXM_TEXTURE_FORMAT_PVRT2BPP_ABGR,
00797     SCE_GXM_TEXTURE_FORMAT_PVRT4BPP = SCE_GXM_TEXTURE_FORMAT_PVRT4BPP_ABGR,
00798     SCE_GXM_TEXTURE_FORMAT_PVRTII2BPP = SCE_GXM_TEXTURE_FORMAT_PVRTII2BPP_ABGR,
00799     SCE_GXM_TEXTURE_FORMAT_PVRTII4BPP = SCE_GXM_TEXTURE_FORMAT_PVRTII4BPP_ABGR
00800 } SceGxmTextureFormat;
00801 
00802 typedef enum SceGxmTextureAnisoMode {
00803     SCE_GXM_TEXTURE_ANISO_DISABLED  = 0x00000000u,
00804     SCE_GXM_TEXTURE_ANISO_ENABLED   = 0x00004000u
00805 } SceGxmTextureAnisoMode;
00806 
00807 typedef enum SceGxmTextureType {
00808     SCE_GXM_TEXTURE_SWIZZLED    = 0x00000000u,
00809     SCE_GXM_TEXTURE_CUBE        = 0x40000000u,
00810     SCE_GXM_TEXTURE_LINEAR      = 0x60000000u,
00811     SCE_GXM_TEXTURE_TILED       = 0x80000000u,
00812     SCE_GXM_TEXTURE_LINEAR_STRIDED  = 0xc0000000u
00813 } SceGxmTextureType;
00814 
00815 typedef enum SceGxmTextureFilter {
00816     SCE_GXM_TEXTURE_FILTER_POINT    = 0x00000000u,
00817     SCE_GXM_TEXTURE_FILTER_LINEAR   = 0x00000001u,
00818     SCE_GXM_TEXTURE_FILTER_ANISO_LINEAR = 0x00000002u,
00819     SCE_GXM_TEXTURE_FILTER_ANISO_POINT  = 0x00000003u
00820 } SceGxmTextureFilter;
00821 
00822 typedef enum SceGxmTextureMipFilter {
00823     SCE_GXM_TEXTURE_MIP_FILTER_DISABLED = 0x00000000u,
00824     SCE_GXM_TEXTURE_MIP_FILTER_ENABLED  = 0x00000200u
00825 } SceGxmTextureMipFilter;
00826 
00827 typedef enum SceGxmTextureAddrMode {
00828     SCE_GXM_TEXTURE_ADDR_REPEAT         = 0x00000000u,
00829     SCE_GXM_TEXTURE_ADDR_MIRROR         = 0x00000001u,
00830     SCE_GXM_TEXTURE_ADDR_CLAMP          = 0x00000002u,
00831     SCE_GXM_TEXTURE_ADDR_MIRROR_CLAMP       = 0x00000003u,
00832     SCE_GXM_TEXTURE_ADDR_REPEAT_IGNORE_BORDER   = 0x00000004u,
00833     SCE_GXM_TEXTURE_ADDR_CLAMP_FULL_BORDER      = 0x00000005u,
00834     SCE_GXM_TEXTURE_ADDR_CLAMP_IGNORE_BORDER    = 0x00000006u,
00835     SCE_GXM_TEXTURE_ADDR_CLAMP_HALF_BORDER      = 0x00000007u
00836 } SceGxmTextureAddrMode;
00837 
00838 typedef enum SceGxmTextureGammaMode {
00839     SCE_GXM_TEXTURE_GAMMA_NONE  = 0x00000000u,
00840     SCE_GXM_TEXTURE_GAMMA_R     = 0x08000000u,
00841     SCE_GXM_TEXTURE_GAMMA_GR    = 0x18000000u,
00842     SCE_GXM_TEXTURE_GAMMA_BGR   = 0x08000000u
00843 } SceGxmTextureGammaMode;
00844 
00845 typedef enum SceGxmIndexFormat {
00846     SCE_GXM_INDEX_FORMAT_U16    = 0x00000000u,
00847     SCE_GXM_INDEX_FORMAT_U32    = 0x01000000u
00848 } SceGxmIndexFormat;
00849 
00850 typedef enum SceGxmIndexSource {
00851     SCE_GXM_INDEX_SOURCE_INDEX_16BIT    = 0x00000000u,
00852     SCE_GXM_INDEX_SOURCE_INDEX_32BIT    = 0x00000001u,
00853     SCE_GXM_INDEX_SOURCE_INSTANCE_16BIT = 0x00000002u,
00854     SCE_GXM_INDEX_SOURCE_INSTANCE_32BIT = 0x00000003u
00855 } SceGxmIndexSource;
00856 
00857 typedef enum SceGxmFragmentProgramMode {
00858     SCE_GXM_FRAGMENT_PROGRAM_DISABLED   = 0x00200000u,
00859     SCE_GXM_FRAGMENT_PROGRAM_ENABLED    = 0x00000000u
00860 } SceGxmFragmentProgramMode;
00861 
00862 typedef enum SceGxmDepthWriteMode {
00863     SCE_GXM_DEPTH_WRITE_DISABLED    = 0x00100000u,
00864     SCE_GXM_DEPTH_WRITE_ENABLED = 0x00000000u
00865 } SceGxmDepthWriteMode;
00866 
00867 typedef enum SceGxmLineFillLastPixelMode {
00868     SCE_GXM_LINE_FILL_LAST_PIXEL_DISABLED   = 0x00000000u,
00869     SCE_GXM_LINE_FILL_LAST_PIXEL_ENABLED    = 0x00080000u
00870 } SceGxmLineFillLastPixelMode;
00871 
00872 typedef enum SceGxmTwoSidedMode {
00873     SCE_GXM_TWO_SIDED_DISABLED  = 0x00000000u,
00874     SCE_GXM_TWO_SIDED_ENABLED   = 0x00000800u
00875 } SceGxmTwoSidedMode;
00876 
00877 typedef enum SceGxmWClampMode {
00878     SCE_GXM_WCLAMP_MODE_DISABLED    = 0x00000000u,
00879     SCE_GXM_WCLAMP_MODE_ENABLED = 0x00008000u
00880 } SceGxmWClampMode;
00881 
00882 typedef enum SceGxmViewportMode {
00883     SCE_GXM_VIEWPORT_DISABLED   = 0x00010000u,
00884     SCE_GXM_VIEWPORT_ENABLED    = 0x00000000u
00885 } SceGxmViewportMode;
00886 
00887 typedef enum SceGxmWBufferMode {
00888     SCE_GXM_WBUFFER_DISABLED    = 0x00000000u,
00889     SCE_GXM_WBUFFER_ENABLED     = 0x00004000u
00890 } SceGxmWBufferMode;
00891 
00892 typedef enum SceGxmDepthStencilForceLoadMode {
00893     SCE_GXM_DEPTH_STENCIL_FORCE_LOAD_DISABLED   = 0x00000000u,
00894     SCE_GXM_DEPTH_STENCIL_FORCE_LOAD_ENABLED    = 0x00000002u
00895 } SceGxmDepthStencilForceLoadMode;
00896 
00897 typedef enum SceGxmDepthStencilForceStoreMode {
00898     SCE_GXM_DEPTH_STENCIL_FORCE_STORE_DISABLED  = 0x00000000u,
00899     SCE_GXM_DEPTH_STENCIL_FORCE_STORE_ENABLED   = 0x00000004u
00900 } SceGxmDepthStencilForceStoreMode;
00901 
00902 typedef enum SceGxmSceneFlags {
00903     SCE_GXM_SCENE_FRAGMENT_SET_DEPENDENCY       = 0x00000001u,
00904     SCE_GXM_SCENE_VERTEX_WAIT_FOR_DEPENDENCY    = 0x00000002u
00905 } SceGxmSceneFlags;
00906 
00907 typedef enum SceGxmMidSceneFlags {
00908     SCE_GXM_MIDSCENE_PRESERVE_DEFAULT_UNIFORM_BUFFERS   = 0x00000001u
00909 } SceGxmMidSceneFlags;
00910 
00911 typedef enum SceGxmColorSurfaceScaleMode {
00912     SCE_GXM_COLOR_SURFACE_SCALE_NONE        = 0x00000000u,
00913     SCE_GXM_COLOR_SURFACE_SCALE_MSAA_DOWNSCALE  = 0x00000001u
00914 } SceGxmColorSurfaceScaleMode;
00915 
00916 typedef enum SceGxmOutputRegisterSize {
00917     SCE_GXM_OUTPUT_REGISTER_SIZE_32BIT  = 0x00000000u,
00918     SCE_GXM_OUTPUT_REGISTER_SIZE_64BIT  = 0x00000001u
00919 } SceGxmOutputRegisterSize;
00920 
00921 typedef enum SceGxmVisibilityTestMode {
00922     SCE_GXM_VISIBILITY_TEST_DISABLED    = 0x00000000u,
00923     SCE_GXM_VISIBILITY_TEST_ENABLED     = 0x00004000u
00924 } SceGxmVisibilityTestMode;
00925 
00926 typedef enum SceGxmVisibilityTestOp {
00927     SCE_GXM_VISIBILITY_TEST_OP_INCREMENT    = 0x00000000u,
00928     SCE_GXM_VISIBILITY_TEST_OP_SET      = 0x00040000u
00929 } SceGxmVisibilityTestOp;
00930 
00931 typedef enum SceGxmBlendFunc {
00932     SCE_GXM_BLEND_FUNC_NONE,
00933     SCE_GXM_BLEND_FUNC_ADD,
00934     SCE_GXM_BLEND_FUNC_SUBTRACT,
00935     SCE_GXM_BLEND_FUNC_REVERSE_SUBTRACT
00936 } SceGxmBlendFunc;
00937 
00938 typedef enum SceGxmBlendFactor {
00939     SCE_GXM_BLEND_FACTOR_ZERO,
00940     SCE_GXM_BLEND_FACTOR_ONE,
00941     SCE_GXM_BLEND_FACTOR_SRC_COLOR,
00942     SCE_GXM_BLEND_FACTOR_ONE_MINUS_SRC_COLOR,
00943     SCE_GXM_BLEND_FACTOR_SRC_ALPHA,
00944     SCE_GXM_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA,
00945     SCE_GXM_BLEND_FACTOR_DST_COLOR,
00946     SCE_GXM_BLEND_FACTOR_ONE_MINUS_DST_COLOR,
00947     SCE_GXM_BLEND_FACTOR_DST_ALPHA,
00948     SCE_GXM_BLEND_FACTOR_ONE_MINUS_DST_ALPHA,
00949     SCE_GXM_BLEND_FACTOR_SRC_ALPHA_SATURATE,
00950     SCE_GXM_BLEND_FACTOR_DST_ALPHA_SATURATE
00951 } SceGxmBlendFactor;
00952 
00953 typedef enum SceGxmColorMask {
00954     SCE_GXM_COLOR_MASK_NONE = 0,
00955     SCE_GXM_COLOR_MASK_A    = (1 << 0),
00956     SCE_GXM_COLOR_MASK_R    = (1 << 1),
00957     SCE_GXM_COLOR_MASK_G    = (1 << 2),
00958     SCE_GXM_COLOR_MASK_B    = (1 << 3),
00959     SCE_GXM_COLOR_MASK_ALL  = (SCE_GXM_COLOR_MASK_A | SCE_GXM_COLOR_MASK_B | SCE_GXM_COLOR_MASK_G | SCE_GXM_COLOR_MASK_R)
00960 } SceGxmColorMask;
00961 
00962 typedef struct SceGxmBlendInfo {
00963     SceGxmColorMask colorMask;
00964     SceGxmBlendFunc colorFunc : 4;
00965     SceGxmBlendFunc alphaFunc : 4;
00966     SceGxmBlendFactor colorSrc : 4;
00967     SceGxmBlendFactor colorDst : 4;
00968     SceGxmBlendFactor alphaSrc : 4;
00969     SceGxmBlendFactor alphaDst : 4;
00970 } SceGxmBlendInfo;
00971 
00972 typedef struct SceGxmRenderTarget SceGxmRenderTarget;
00973 
00974 typedef struct SceGxmSyncObject SceGxmSyncObject;
00975 
00976 typedef struct SceGxmVertexAttribute {
00977     unsigned short streamIndex;
00978     unsigned short offset;
00979     SceGxmAttributeFormat format;
00980     unsigned char componentCount;
00981     unsigned short regIndex;
00982 } SceGxmVertexAttribute;
00983 
00984 typedef struct SceGxmVertexStream {
00985     unsigned short stride;
00986     unsigned short indexSource;
00987 } SceGxmVertexStream;
00988 
00989 typedef struct SceGxmTexture {
00990     unsigned int controlWords[4];
00991 } SceGxmTexture;
00992 
00993 typedef struct SceGxmColorSurface {
00994     unsigned int pbeSidebandWord;
00995     unsigned int pbeEmitWords[6];
00996     unsigned int outputRegisterSize;
00997     SceGxmTexture backgroundTex;
00998 } SceGxmColorSurface;
00999 
01000 typedef struct SceGxmDepthStencilSurface {
01001     unsigned int zlsControl;
01002     void *depthData;
01003     void *stencilData;
01004     float backgroundDepth;
01005     unsigned int backgroundControl;
01006 } SceGxmDepthStencilSurface;
01007 
01009 typedef struct SceGxmAuxiliarySurface {
01010     uint32_t colorFormat; 
01011     uint32_t type; 
01012     uint32_t width; 
01013     uint32_t height; 
01014     uint32_t stride; 
01015     void *data; 
01016 } SceGxmAuxiliarySurface;
01017 
01018 typedef struct SceGxmNotification {
01019     volatile unsigned int *address;
01020     unsigned int value;
01021 } SceGxmNotification;
01022 
01023 typedef struct SceGxmValidRegion {
01024     unsigned int xMin;
01025     unsigned int yMin;
01026     unsigned int xMax;
01027     unsigned int yMax;
01028 } SceGxmValidRegion;
01029 
01030 typedef struct SceGxmContext SceGxmContext;
01031 
01032 enum {
01033     SCE_GXM_MINIMUM_CONTEXT_HOST_MEM_SIZE       = (2 * 1024),
01034     SCE_GXM_DEFAULT_PARAMETER_BUFFER_SIZE           = (16 * 1024 * 1024),
01035     SCE_GXM_DEFAULT_VDM_RING_BUFFER_SIZE        = (128 * 1024),
01036     SCE_GXM_DEFAULT_VERTEX_RING_BUFFER_SIZE     = (2 * 1024 * 1024),
01037     SCE_GXM_DEFAULT_FRAGMENT_RING_BUFFER_SIZE   = (512 * 1024),
01038     SCE_GXM_DEFAULT_FRAGMENT_USSE_RING_BUFFER_SIZE  = (16 * 1024),
01039 };
01040 
01041 typedef struct SceGxmContextParams {
01042     void *hostMem;
01043     SceSize hostMemSize;
01044     void *vdmRingBufferMem;
01045     SceSize vdmRingBufferMemSize;
01046     void *vertexRingBufferMem;
01047     SceSize vertexRingBufferMemSize;
01048     void *fragmentRingBufferMem;
01049     SceSize fragmentRingBufferMemSize;
01050     void *fragmentUsseRingBufferMem;
01051     SceSize fragmentUsseRingBufferMemSize;
01052     unsigned int fragmentUsseRingBufferOffset;
01053 } SceGxmContextParams;
01054 
01055 typedef struct SceGxmVertexProgram SceGxmVertexProgram;
01056 
01057 typedef struct SceGxmFragmentProgram SceGxmFragmentProgram;
01058 
01059 enum {
01060     SCE_GXM_PRECOMPUTED_VERTEX_STATE_WORD_COUNT   = 7,
01061     SCE_GXM_PRECOMPUTED_FRAGMENT_STATE_WORD_COUNT = 9,
01062     SCE_GXM_PRECOMPUTED_DRAW_WORD_COUNT           = 11,
01063 };
01064 
01065 typedef struct SceGxmPrecomputedVertexState {
01066     unsigned int data[SCE_GXM_PRECOMPUTED_VERTEX_STATE_WORD_COUNT];
01067 } SceGxmPrecomputedVertexState;
01068 
01069 typedef struct SceGxmPrecomputedFragmentState {
01070     unsigned int data[SCE_GXM_PRECOMPUTED_FRAGMENT_STATE_WORD_COUNT];
01071 } SceGxmPrecomputedFragmentState;
01072 
01073 typedef struct SceGxmPrecomputedDraw {
01074     unsigned int data[SCE_GXM_PRECOMPUTED_DRAW_WORD_COUNT];
01075 } SceGxmPrecomputedDraw;
01076 
01077 enum {
01078     SCE_GXM_MAX_VERTEX_ATTRIBUTES  = 16,
01079     SCE_GXM_MAX_VERTEX_STREAMS     = 4,
01080     SCE_GXM_MAX_TEXTURE_UNITS      = 16,
01081     SCE_GXM_MAX_UNIFORM_BUFFERS    = 8,
01082     SCE_GXM_MAX_AUXILIARY_SURFACES = 3,
01083 };
01084 
01085 enum {
01086     SCE_GXM_TILE_SHIFTX = 5U,
01087     SCE_GXM_TILE_SHIFTY = 5U,
01088     SCE_GXM_TILE_SIZEX  = (1U << SCE_GXM_TILE_SHIFTX),
01089     SCE_GXM_TILE_SIZEY  = (1U << SCE_GXM_TILE_SHIFTY),
01090 };
01091 
01092 enum {
01093     SCE_GXM_COLOR_SURFACE_ALIGNMENT        = 4U,
01094     SCE_GXM_TEXTURE_ALIGNMENT              = 16U,
01095     SCE_GXM_DEPTHSTENCIL_SURFACE_ALIGNMENT = 16U,
01096     SCE_GXM_PALETTE_ALIGNMENT              = 64U,
01097 };
01098 
01099 typedef struct SceGxmProgram SceGxmProgram;
01100 
01101 typedef struct SceGxmProgramParameter SceGxmProgramParameter;
01102 
01103 typedef enum SceGxmProgramType {
01104     SCE_GXM_VERTEX_PROGRAM,
01105     SCE_GXM_FRAGMENT_PROGRAM
01106 } SceGxmProgramType;
01107 
01108 typedef enum SceGxmParameterCategory {
01109     SCE_GXM_PARAMETER_CATEGORY_ATTRIBUTE,
01110     SCE_GXM_PARAMETER_CATEGORY_UNIFORM,
01111     SCE_GXM_PARAMETER_CATEGORY_SAMPLER,
01112     SCE_GXM_PARAMETER_CATEGORY_AUXILIARY_SURFACE,
01113     SCE_GXM_PARAMETER_CATEGORY_UNIFORM_BUFFER
01114 } SceGxmParameterCategory;
01115 
01116 typedef enum SceGxmParameterType {
01117     SCE_GXM_PARAMETER_TYPE_F32,
01118     SCE_GXM_PARAMETER_TYPE_F16,
01119     SCE_GXM_PARAMETER_TYPE_C10,
01120     SCE_GXM_PARAMETER_TYPE_U32,
01121     SCE_GXM_PARAMETER_TYPE_S32,
01122     SCE_GXM_PARAMETER_TYPE_U16,
01123     SCE_GXM_PARAMETER_TYPE_S16,
01124     SCE_GXM_PARAMETER_TYPE_U8,
01125     SCE_GXM_PARAMETER_TYPE_S8,
01126     SCE_GXM_PARAMETER_TYPE_AGGREGATE
01127 } SceGxmParameterType;
01128 
01129 typedef enum SceGxmParameterSemantic {
01130     SCE_GXM_PARAMETER_SEMANTIC_NONE,
01131     SCE_GXM_PARAMETER_SEMANTIC_ATTR,
01132     SCE_GXM_PARAMETER_SEMANTIC_BCOL,
01133     SCE_GXM_PARAMETER_SEMANTIC_BINORMAL,
01134     SCE_GXM_PARAMETER_SEMANTIC_BLENDINDICES,
01135     SCE_GXM_PARAMETER_SEMANTIC_BLENDWEIGHT,
01136     SCE_GXM_PARAMETER_SEMANTIC_COLOR,
01137     SCE_GXM_PARAMETER_SEMANTIC_DIFFUSE,
01138     SCE_GXM_PARAMETER_SEMANTIC_FOGCOORD,
01139     SCE_GXM_PARAMETER_SEMANTIC_NORMAL,
01140     SCE_GXM_PARAMETER_SEMANTIC_POINTSIZE,
01141     SCE_GXM_PARAMETER_SEMANTIC_POSITION,
01142     SCE_GXM_PARAMETER_SEMANTIC_SPECULAR,
01143     SCE_GXM_PARAMETER_SEMANTIC_TANGENT,
01144     SCE_GXM_PARAMETER_SEMANTIC_TEXCOORD
01145 } SceGxmParameterSemantic;
01146 
01147 typedef struct SceGxmShaderPatcher SceGxmShaderPatcher;
01148 
01149 typedef struct SceGxmRegisteredProgram SceGxmRegisteredProgram;
01150 
01151 typedef SceGxmRegisteredProgram *SceGxmShaderPatcherId;
01152 
01153 typedef void *(SceGxmShaderPatcherHostAllocCallback)(void *userData, SceSize size);
01154 typedef void (SceGxmShaderPatcherHostFreeCallback)(void *userData, void *mem);
01155 typedef void *(SceGxmShaderPatcherBufferAllocCallback)(void *userData, SceSize size);
01156 typedef void (SceGxmShaderPatcherBufferFreeCallback)(void *userData, void *mem);
01157 typedef void *(SceGxmShaderPatcherUsseAllocCallback)(void *userData, SceSize size, unsigned int *usseOffset);
01158 typedef void (SceGxmShaderPatcherUsseFreeCallback)(void *userData, void *mem);
01159 
01160 typedef struct SceGxmShaderPatcherParams {
01161     void *userData;
01162     SceGxmShaderPatcherHostAllocCallback *hostAllocCallback;
01163     SceGxmShaderPatcherHostFreeCallback *hostFreeCallback;
01164     SceGxmShaderPatcherBufferAllocCallback *bufferAllocCallback;
01165     SceGxmShaderPatcherBufferFreeCallback *bufferFreeCallback;
01166     void *bufferMem;
01167     SceSize bufferMemSize;
01168     SceGxmShaderPatcherUsseAllocCallback *vertexUsseAllocCallback;
01169     SceGxmShaderPatcherUsseFreeCallback *vertexUsseFreeCallback;
01170     void *vertexUsseMem;
01171     SceSize vertexUsseMemSize;
01172     unsigned int vertexUsseOffset;
01173     SceGxmShaderPatcherUsseAllocCallback *fragmentUsseAllocCallback;
01174     SceGxmShaderPatcherUsseFreeCallback *fragmentUsseFreeCallback;
01175     void *fragmentUsseMem;
01176     SceSize fragmentUsseMemSize;
01177     unsigned int fragmentUsseOffset;
01178 } SceGxmShaderPatcherParams;
01179 
01180 typedef enum SceGxmRenderTargetFlags {
01181     SCE_GXM_RENDER_TARGET_CUSTOM_MULTISAMPLE_LOCATIONS = (1 << 0),
01182 } SceGxmRenderTargetFlags;
01183 
01184 typedef struct SceGxmRenderTargetParams {
01185     uint32_t flags;                 
01186     uint16_t width;                 
01187     uint16_t height;                
01188     uint16_t scenesPerFrame;        
01189     uint16_t multisampleMode;       
01190     uint32_t multisampleLocations;  
01191     SceUID driverMemBlock;          
01192 } SceGxmRenderTargetParams;
01193 
01194 /* prototypes */
01195 
01196 int sceGxmInitialize(const SceGxmInitializeParams *params);
01197 int sceGxmTerminate();
01198 
01199 volatile unsigned int *sceGxmGetNotificationRegion();
01200 int sceGxmNotificationWait(const SceGxmNotification *notification);
01201 
01202 int sceGxmMapMemory(void *base, SceSize size, SceGxmMemoryAttribFlags attr);
01203 int sceGxmUnmapMemory(void *base);
01204 
01205 int sceGxmMapVertexUsseMemory(void *base, SceSize size, unsigned int *offset);
01206 int sceGxmUnmapVertexUsseMemory(void *base);
01207 
01208 int sceGxmMapFragmentUsseMemory(void *base, SceSize size, unsigned int *offset);
01209 int sceGxmUnmapFragmentUsseMemory(void *base);
01210 
01211 int sceGxmDisplayQueueAddEntry(SceGxmSyncObject *oldBuffer, SceGxmSyncObject *newBuffer, const void *callbackData);
01212 int sceGxmDisplayQueueFinish();
01213 
01214 int sceGxmSyncObjectCreate(SceGxmSyncObject **syncObject);
01215 int sceGxmSyncObjectDestroy(SceGxmSyncObject *syncObject);
01216 
01217 int sceGxmCreateContext(const SceGxmContextParams *params, SceGxmContext **context);
01218 int sceGxmDestroyContext(SceGxmContext *context);
01219 
01220 void sceGxmSetValidationEnable(SceGxmContext *context, SceBool enable);
01221 
01222 void sceGxmSetVertexProgram(SceGxmContext *context, const SceGxmVertexProgram *vertexProgram);
01223 void sceGxmSetFragmentProgram(SceGxmContext *context, const SceGxmFragmentProgram *fragmentProgram);
01224 
01225 int sceGxmReserveVertexDefaultUniformBuffer(SceGxmContext *context, void **uniformBuffer);
01226 int sceGxmReserveFragmentDefaultUniformBuffer(SceGxmContext *context, void **uniformBuffer);
01227 
01228 int sceGxmSetVertexStream(SceGxmContext *context, unsigned int streamIndex, const void *streamData);
01229 int sceGxmSetVertexTexture(SceGxmContext *context, unsigned int textureIndex, const SceGxmTexture *texture);
01230 int sceGxmSetFragmentTexture(SceGxmContext *context, unsigned int textureIndex, const SceGxmTexture *texture);
01231 int sceGxmSetVertexUniformBuffer(SceGxmContext *context, unsigned int bufferIndex, const void *bufferData);
01232 int sceGxmSetFragmentUniformBuffer(SceGxmContext *context, unsigned int bufferIndex, const void *bufferData);
01233 int sceGxmSetAuxiliarySurface(SceGxmContext *context, unsigned int surfaceIndex, const SceGxmAuxiliarySurface *surface);
01234 
01235 void sceGxmSetPrecomputedFragmentState(SceGxmContext *context, const SceGxmPrecomputedFragmentState *precomputedState);
01236 void sceGxmSetPrecomputedVertexState(SceGxmContext *context, const SceGxmPrecomputedVertexState *precomputedState);
01237 
01238 int sceGxmDrawPrecomputed(SceGxmContext *context, const SceGxmPrecomputedDraw *precomputedDraw);
01239 int sceGxmDraw(SceGxmContext *context, SceGxmPrimitiveType primType, SceGxmIndexFormat indexType, const void *indexData, unsigned int indexCount);
01240 int sceGxmDrawInstanced(SceGxmContext *context, SceGxmPrimitiveType primType, SceGxmIndexFormat indexType, const void *indexData, unsigned int indexCount, unsigned int indexWrap);
01241 int sceGxmSetVisibilityBuffer(SceGxmContext *context, void *bufferBase, unsigned int stridePerCore);
01242 
01243 int sceGxmBeginScene(SceGxmContext *context, unsigned int flags, const SceGxmRenderTarget *renderTarget, const SceGxmValidRegion *validRegion, SceGxmSyncObject *vertexSyncObject, SceGxmSyncObject *fragmentSyncObject, const SceGxmColorSurface *colorSurface, const SceGxmDepthStencilSurface *depthStencil);
01244 int sceGxmMidSceneFlush(SceGxmContext *context, unsigned int flags, SceGxmSyncObject *vertexSyncObject, const SceGxmNotification *vertexNotification);
01245 int sceGxmEndScene(SceGxmContext *context, const SceGxmNotification *vertexNotification, const SceGxmNotification *fragmentNotification);
01246 
01247 void sceGxmSetFrontDepthFunc(SceGxmContext *context, SceGxmDepthFunc depthFunc);
01248 void sceGxmSetBackDepthFunc(SceGxmContext *context, SceGxmDepthFunc depthFunc);
01249 void sceGxmSetFrontFragmentProgramEnable(SceGxmContext *context, SceGxmFragmentProgramMode enable);
01250 void sceGxmSetBackFragmentProgramEnable(SceGxmContext *context, SceGxmFragmentProgramMode enable);
01251 void sceGxmSetFrontDepthWriteEnable(SceGxmContext *context, SceGxmDepthWriteMode enable);
01252 void sceGxmSetBackDepthWriteEnable(SceGxmContext *context, SceGxmDepthWriteMode enable);
01253 void sceGxmSetFrontLineFillLastPixelEnable(SceGxmContext *context, SceGxmLineFillLastPixelMode enable);
01254 void sceGxmSetBackLineFillLastPixelEnable(SceGxmContext *context, SceGxmLineFillLastPixelMode enable);
01255 void sceGxmSetFrontStencilRef(SceGxmContext *context, unsigned int sref);
01256 void sceGxmSetBackStencilRef(SceGxmContext *context, unsigned int sref);
01257 void sceGxmSetFrontPointLineWidth(SceGxmContext *context, unsigned int width);
01258 void sceGxmSetBackPointLineWidth(SceGxmContext *context, unsigned int width);
01259 void sceGxmSetFrontPolygonMode(SceGxmContext *context, SceGxmPolygonMode mode);
01260 void sceGxmSetBackPolygonMode(SceGxmContext *context, SceGxmPolygonMode mode);
01261 void sceGxmSetFrontStencilFunc(SceGxmContext *context, SceGxmStencilFunc func, SceGxmStencilOp stencilFail, SceGxmStencilOp depthFail, SceGxmStencilOp depthPass, unsigned char compareMask, unsigned char writeMask);
01262 void sceGxmSetBackStencilFunc(SceGxmContext *context, SceGxmStencilFunc func, SceGxmStencilOp stencilFail, SceGxmStencilOp depthFail, SceGxmStencilOp depthPass, unsigned char compareMask, unsigned char writeMask);
01263 void sceGxmSetFrontDepthBias(SceGxmContext *context, int factor, int units);
01264 void sceGxmSetBackDepthBias(SceGxmContext *context, int factor, int units);
01265 void sceGxmSetTwoSidedEnable(SceGxmContext *context, SceGxmTwoSidedMode enable);
01266 void sceGxmSetViewport(SceGxmContext *context, float xOffset, float xScale, float yOffset, float yScale, float zOffset, float zScale);
01267 void sceGxmSetWClampValue(SceGxmContext *context, float clampValue);
01268 void sceGxmSetWClampEnable(SceGxmContext *context, SceGxmWClampMode enable);
01269 void sceGxmSetRegionClip(SceGxmContext *context, SceGxmRegionClipMode mode, unsigned int xMin, unsigned int yMin, unsigned int xMax, unsigned int yMax);
01270 void sceGxmSetCullMode(SceGxmContext *context, SceGxmCullMode mode);
01271 void sceGxmSetViewportEnable(SceGxmContext *context, SceGxmViewportMode enable);
01272 void sceGxmSetWBufferEnable(SceGxmContext *context, SceGxmWBufferMode enable);
01273 void sceGxmSetFrontVisibilityTestIndex(SceGxmContext *context, unsigned int index);
01274 void sceGxmSetBackVisibilityTestIndex(SceGxmContext *context, unsigned int index);
01275 void sceGxmSetFrontVisibilityTestOp(SceGxmContext *context, SceGxmVisibilityTestOp op);
01276 void sceGxmSetBackVisibilityTestOp(SceGxmContext *context, SceGxmVisibilityTestOp op);
01277 void sceGxmSetFrontVisibilityTestEnable(SceGxmContext *context, SceGxmVisibilityTestMode enable);
01278 void sceGxmSetBackVisibilityTestEnable(SceGxmContext *context, SceGxmVisibilityTestMode enable);
01279 
01280 void sceGxmFinish(SceGxmContext *context);
01281 
01282 int sceGxmPushUserMarker(SceGxmContext *context, const char *tag);
01283 int sceGxmPopUserMarker(SceGxmContext *context);
01284 int sceGxmSetUserMarker(SceGxmContext *context, const char *tag);
01285 
01286 int sceGxmPadHeartbeat(const SceGxmColorSurface *displaySurface, SceGxmSyncObject *displaySyncObject);
01287 
01288 int sceGxmPadTriggerGpuPaTrace();
01289 
01290 int sceGxmColorSurfaceInit(SceGxmColorSurface *surface, SceGxmColorFormat colorFormat, SceGxmColorSurfaceType surfaceType, SceGxmColorSurfaceScaleMode scaleMode, SceGxmOutputRegisterSize outputRegisterSize, unsigned int width, unsigned int height, unsigned int strideInPixels, void *data);
01291 int sceGxmColorSurfaceInitDisabled(SceGxmColorSurface *surface);
01292 SceBool sceGxmColorSurfaceIsEnabled(const SceGxmColorSurface *surface);
01293 void sceGxmColorSurfaceGetClip(const SceGxmColorSurface *surface, unsigned int *xMin, unsigned int *yMin, unsigned int *xMax, unsigned int *yMax);
01294 void sceGxmColorSurfaceSetClip(SceGxmColorSurface *surface, unsigned int xMin, unsigned int yMin, unsigned int xMax, unsigned int yMax);
01295 
01296 SceGxmColorSurfaceScaleMode sceGxmColorSurfaceGetScaleMode(const SceGxmColorSurface *surface);
01297 void sceGxmColorSurfaceSetScaleMode(SceGxmColorSurface *surface, SceGxmColorSurfaceScaleMode scaleMode);
01298 
01299 void *sceGxmColorSurfaceGetData(const SceGxmColorSurface *surface);
01300 int sceGxmColorSurfaceSetData(SceGxmColorSurface *surface, void *data);
01301 
01302 SceGxmColorFormat sceGxmColorSurfaceGetFormat(const SceGxmColorSurface *surface);
01303 int sceGxmColorSurfaceSetFormat(SceGxmColorSurface *surface, SceGxmColorFormat format);
01304 SceGxmColorSurfaceType sceGxmColorSurfaceGetType(const SceGxmColorSurface *surface);
01305 unsigned int sceGxmColorSurfaceGetStrideInPixels(const SceGxmColorSurface *surface);
01306 
01307 int sceGxmDepthStencilSurfaceInit(SceGxmDepthStencilSurface *surface, SceGxmDepthStencilFormat depthStencilFormat, SceGxmDepthStencilSurfaceType surfaceType, unsigned int strideInSamples, void *depthData, void *stencilData);
01308 int sceGxmDepthStencilSurfaceInitDisabled(SceGxmDepthStencilSurface *surface);
01309 float sceGxmDepthStencilSurfaceGetBackgroundDepth(const SceGxmDepthStencilSurface *surface);
01310 void sceGxmDepthStencilSurfaceSetBackgroundDepth(SceGxmDepthStencilSurface *surface, float backgroundDepth);
01311 unsigned char sceGxmDepthStencilSurfaceGetBackgroundStencil(const SceGxmDepthStencilSurface *surface);
01312 void sceGxmDepthStencilSurfaceSetBackgroundStencil(SceGxmDepthStencilSurface *surface, unsigned char backgroundStencil);
01313 SceBool sceGxmDepthStencilSurfaceIsEnabled(const SceGxmDepthStencilSurface *surface);
01314 void sceGxmDepthStencilSurfaceSetForceLoadMode(SceGxmDepthStencilSurface *surface, SceGxmDepthStencilForceLoadMode forceLoad);
01315 SceGxmDepthStencilForceLoadMode sceGxmDepthStencilSurfaceGetForceLoadMode(const SceGxmDepthStencilSurface *surface);
01316 void sceGxmDepthStencilSurfaceSetForceStoreMode(SceGxmDepthStencilSurface *surface, SceGxmDepthStencilForceStoreMode forceStore);
01317 SceGxmDepthStencilForceStoreMode sceGxmDepthStencilSurfaceGetForceStoreMode(const SceGxmDepthStencilSurface *surface);
01318 
01319 SceGxmColorSurfaceGammaMode sceGxmColorSurfaceGetGammaMode(const SceGxmColorSurface *surface);
01320 int sceGxmColorSurfaceSetGammaMode(SceGxmColorSurface *surface, SceGxmColorSurfaceGammaMode gammaMode);
01321 SceGxmColorSurfaceDitherMode sceGxmColorSurfaceGetDitherMode(const SceGxmColorSurface *surface);
01322 int sceGxmColorSurfaceSetDitherMode(SceGxmColorSurface *surface, SceGxmColorSurfaceDitherMode ditherMode);
01323 
01324 SceGxmDepthStencilFormat sceGxmDepthStencilSurfaceGetFormat(const SceGxmDepthStencilSurface *surface);
01325 unsigned int sceGxmDepthStencilSurfaceGetStrideInSamples(const SceGxmDepthStencilSurface *surface);
01326 
01327 int sceGxmProgramCheck(const SceGxmProgram *program);
01328 unsigned int sceGxmProgramGetSize(const SceGxmProgram *program);
01329 SceGxmProgramType sceGxmProgramGetType(const SceGxmProgram *program);
01330 SceBool sceGxmProgramIsDiscardUsed(const SceGxmProgram *program);
01331 SceBool sceGxmProgramIsDepthReplaceUsed(const SceGxmProgram *program);
01332 SceBool sceGxmProgramIsSpriteCoordUsed(const SceGxmProgram *program);
01333 unsigned int sceGxmProgramGetDefaultUniformBufferSize(const SceGxmProgram *program);
01334 unsigned int sceGxmProgramGetParameterCount(const SceGxmProgram *program);
01335 
01336 const SceGxmProgramParameter *sceGxmProgramGetParameter(const SceGxmProgram *program, unsigned int index);
01337 const SceGxmProgramParameter *sceGxmProgramFindParameterByName(const SceGxmProgram *program, const char *name);
01338 const SceGxmProgramParameter *sceGxmProgramFindParameterBySemantic(const SceGxmProgram *program, SceGxmParameterSemantic semantic, unsigned int index);
01339 unsigned int sceGxmProgramParameterGetIndex(const SceGxmProgram *program, const SceGxmProgramParameter *parameter);
01340 SceGxmParameterCategory sceGxmProgramParameterGetCategory(const SceGxmProgramParameter *parameter);
01341 const char *sceGxmProgramParameterGetName(const SceGxmProgramParameter *parameter);
01342 SceGxmParameterSemantic sceGxmProgramParameterGetSemantic(const SceGxmProgramParameter *parameter);
01343 unsigned int sceGxmProgramParameterGetSemanticIndex(const SceGxmProgramParameter *parameter);
01344 SceGxmParameterType sceGxmProgramParameterGetType(const SceGxmProgramParameter *parameter);
01345 unsigned int sceGxmProgramParameterGetComponentCount(const SceGxmProgramParameter *parameter);
01346 unsigned int sceGxmProgramParameterGetArraySize(const SceGxmProgramParameter *parameter);
01347 unsigned int sceGxmProgramParameterGetResourceIndex(const SceGxmProgramParameter *parameter);
01348 unsigned int sceGxmProgramParameterGetContainerIndex(const SceGxmProgramParameter *parameter);
01349 SceBool sceGxmProgramParameterIsSamplerCube(const SceGxmProgramParameter *parameter);
01350 
01351 const SceGxmProgram *sceGxmFragmentProgramGetProgram(const SceGxmFragmentProgram *fragmentProgram);
01352 const SceGxmProgram *sceGxmVertexProgramGetProgram(const SceGxmVertexProgram *vertexProgram);
01353 
01354 int sceGxmShaderPatcherCreate(const SceGxmShaderPatcherParams *params, SceGxmShaderPatcher **shaderPatcher);
01355 int sceGxmShaderPatcherSetUserData(SceGxmShaderPatcher *shaderPatcher, void *userData);
01356 void *sceGxmShaderPatcherGetUserData(SceGxmShaderPatcher *shaderPatcher);
01357 int sceGxmShaderPatcherDestroy(SceGxmShaderPatcher *shaderPatcher);
01358 int sceGxmShaderPatcherRegisterProgram(SceGxmShaderPatcher *shaderPatcher, const SceGxmProgram *programHeader, SceGxmShaderPatcherId *programId);
01359 int sceGxmShaderPatcherUnregisterProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmShaderPatcherId programId);
01360 const SceGxmProgram *sceGxmShaderPatcherGetProgramFromId(SceGxmShaderPatcherId programId);
01361 int sceGxmShaderPatcherSetAuxiliarySurface(SceGxmShaderPatcher *shaderPatcher, unsigned int auxSurfaceIndex, const SceGxmAuxiliarySurface *auxSurface);
01362 int sceGxmShaderPatcherCreateVertexProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmShaderPatcherId programId, const SceGxmVertexAttribute *attributes, unsigned int attributeCount, const SceGxmVertexStream *streams, unsigned int streamCount, SceGxmVertexProgram **vertexProgram);
01363 int sceGxmShaderPatcherCreateFragmentProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmShaderPatcherId programId, SceGxmOutputRegisterFormat outputFormat, SceGxmMultisampleMode multisampleMode, const SceGxmBlendInfo *blendInfo, const SceGxmProgram *vertexProgram, SceGxmFragmentProgram **fragmentProgram);
01364 int sceGxmShaderPatcherAddRefVertexProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmVertexProgram *vertexProgram);
01365 int sceGxmShaderPatcherAddRefFragmentProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmFragmentProgram *fragmentProgram);
01366 int sceGxmShaderPatcherReleaseVertexProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmVertexProgram *vertexProgram);
01367 int sceGxmShaderPatcherReleaseFragmentProgram(SceGxmShaderPatcher *shaderPatcher, SceGxmFragmentProgram *fragmentProgram);
01368 unsigned int sceGxmShaderPatcherGetHostMemAllocated(const SceGxmShaderPatcher *shaderPatcher);
01369 unsigned int sceGxmShaderPatcherGetBufferMemAllocated(const SceGxmShaderPatcher *shaderPatcher);
01370 unsigned int sceGxmShaderPatcherGetVertexUsseMemAllocated(const SceGxmShaderPatcher *shaderPatcher);
01371 unsigned int sceGxmShaderPatcherGetFragmentUsseMemAllocated(const SceGxmShaderPatcher *shaderPatcher);
01372 
01373 int sceGxmTextureInitSwizzled(SceGxmTexture *texture, const void *data, SceGxmTextureFormat texFormat, unsigned int width, unsigned int height, unsigned int mipCount);
01374 int sceGxmTextureInitLinear(SceGxmTexture *texture, const void *data, SceGxmTextureFormat texFormat, unsigned int width, unsigned int height, unsigned int mipCount);
01375 int sceGxmTextureInitLinearStrided(SceGxmTexture *texture, const void *data, SceGxmTextureFormat texFormat, unsigned int width, unsigned int height, unsigned int byteStride);
01376 int sceGxmTextureInitTiled(SceGxmTexture *texture, const void *data, SceGxmTextureFormat texFormat, unsigned int width, unsigned int height, unsigned int mipCount);
01377 int sceGxmTextureInitCube(SceGxmTexture *texture, const void *data, SceGxmTextureFormat texFormat, unsigned int width, unsigned int height, unsigned int mipCount);
01378 
01379 SceGxmTextureType sceGxmTextureGetType(const SceGxmTexture *texture);
01380 
01381 int sceGxmTextureSetMinFilter(SceGxmTexture *texture, SceGxmTextureFilter minFilter);
01382 SceGxmTextureFilter sceGxmTextureGetMinFilter(const SceGxmTexture *texture);
01383 
01384 int sceGxmTextureSetMagFilter(SceGxmTexture *texture, SceGxmTextureFilter magFilter);
01385 SceGxmTextureFilter sceGxmTextureGetMagFilter(const SceGxmTexture *texture);
01386 
01387 int sceGxmTextureSetMipFilter(SceGxmTexture *texture, SceGxmTextureMipFilter mipFilter);
01388 SceGxmTextureMipFilter sceGxmTextureGetMipFilter(const SceGxmTexture *texture);
01389 
01390 int sceGxmTextureSetAnisoMode(SceGxmTexture *texture, SceGxmTextureAnisoMode anisoMode);
01391 SceGxmTextureAnisoMode sceGxmTextureGetAnisoMode(const SceGxmTexture *texture);
01392 
01393 int sceGxmTextureSetUAddrMode(SceGxmTexture *texture, SceGxmTextureAddrMode addrMode);
01394 SceGxmTextureAddrMode sceGxmTextureGetUAddrMode(const SceGxmTexture *texture);
01395 
01396 int sceGxmTextureSetVAddrMode(SceGxmTexture *texture, SceGxmTextureAddrMode addrMode);
01397 SceGxmTextureAddrMode sceGxmTextureGetVAddrMode(const SceGxmTexture *texture);
01398 
01399 int sceGxmTextureSetFormat(SceGxmTexture *texture, SceGxmTextureFormat texFormat);
01400 SceGxmTextureFormat sceGxmTextureGetFormat(const SceGxmTexture *texture);
01401 
01402 int sceGxmTextureSetLodBias(SceGxmTexture *texture, unsigned int bias);
01403 unsigned int sceGxmTextureGetLodBias(const SceGxmTexture *texture);
01404 
01405 int sceGxmTextureSetStride(SceGxmTexture *texture, unsigned int byteStride);
01406 unsigned int sceGxmTextureGetStride(const SceGxmTexture *texture);
01407 
01408 int sceGxmTextureSetWidth(SceGxmTexture *texture, unsigned int width);
01409 unsigned int sceGxmTextureGetWidth(const SceGxmTexture *texture);
01410 
01411 int sceGxmTextureSetHeight(SceGxmTexture *texture, unsigned int height);
01412 unsigned int sceGxmTextureGetHeight(const SceGxmTexture *texture);
01413 
01414 int sceGxmTextureSetData(SceGxmTexture *texture, const void *data);
01415 void *sceGxmTextureGetData(const SceGxmTexture *texture);
01416 
01417 int sceGxmTextureSetMipmapCount(SceGxmTexture *texture, unsigned int mipCount);
01418 unsigned int sceGxmTextureGetMipmapCount(const SceGxmTexture *texture);
01419 
01420 int sceGxmTextureSetPalette(SceGxmTexture *texture, const void *paletteData);
01421 void *sceGxmTextureGetPalette(const SceGxmTexture *texture);
01422 
01423 SceGxmTextureGammaMode sceGxmTextureGetGammaMode(const SceGxmTexture *texture);
01424 int sceGxmTextureSetGammaMode(SceGxmTexture *texture, SceGxmTextureGammaMode gammaMode);
01425 
01426 unsigned int sceGxmGetPrecomputedVertexStateSize(const SceGxmVertexProgram *vertexProgram);
01427 int sceGxmPrecomputedVertexStateInit(SceGxmPrecomputedVertexState *precomputedState, const SceGxmVertexProgram *vertexProgram, void *memBlock);
01428 void sceGxmPrecomputedVertexStateSetDefaultUniformBuffer(SceGxmPrecomputedVertexState *precomputedState, void *defaultBuffer);
01429 void *sceGxmPrecomputedVertexStateGetDefaultUniformBuffer(const SceGxmPrecomputedVertexState *precomputedState);
01430 int sceGxmPrecomputedVertexStateSetAllTextures(SceGxmPrecomputedVertexState *precomputedState, const SceGxmTexture *textures);
01431 int sceGxmPrecomputedVertexStateSetTexture(SceGxmPrecomputedVertexState *precomputedState, unsigned int textureIndex, const SceGxmTexture *texture);
01432 int sceGxmPrecomputedVertexStateSetAllUniformBuffers(SceGxmPrecomputedVertexState *precomputedState, const void * const *bufferDataArray);
01433 int sceGxmPrecomputedVertexStateSetUniformBuffer(SceGxmPrecomputedVertexState *precomputedState, unsigned int bufferIndex, const void *bufferData);
01434 unsigned int sceGxmGetPrecomputedFragmentStateSize(const SceGxmFragmentProgram *fragmentProgram);
01435 int sceGxmPrecomputedFragmentStateInit(SceGxmPrecomputedFragmentState *precomputedState, const SceGxmFragmentProgram *fragmentProgram, void *memBlock);
01436 void sceGxmPrecomputedFragmentStateSetDefaultUniformBuffer(SceGxmPrecomputedFragmentState *precomputedState, void *defaultBuffer);
01437 void *sceGxmPrecomputedFragmentStateGetDefaultUniformBuffer(const SceGxmPrecomputedFragmentState *precomputedState);
01438 int sceGxmPrecomputedFragmentStateSetAllTextures(SceGxmPrecomputedFragmentState *precomputedState, const SceGxmTexture *textureArray);
01439 int sceGxmPrecomputedFragmentStateSetTexture(SceGxmPrecomputedFragmentState *precomputedState, unsigned int textureIndex, const SceGxmTexture *texture);
01440 int sceGxmPrecomputedFragmentStateSetAllUniformBuffers(SceGxmPrecomputedFragmentState *precomputedState, const void * const *bufferDataArray);
01441 int sceGxmPrecomputedFragmentStateSetUniformBuffer(SceGxmPrecomputedFragmentState *precomputedState, unsigned int bufferIndex, const void *bufferData);
01442 int sceGxmPrecomputedFragmentStateSetAllAuxiliarySurfaces(SceGxmPrecomputedFragmentState *precomputedState, const SceGxmAuxiliarySurface *auxSurfaceArray);
01443 unsigned int sceGxmGetPrecomputedDrawSize(const SceGxmVertexProgram *vertexProgram);
01444 int sceGxmPrecomputedDrawInit(SceGxmPrecomputedDraw *precomputedDraw, const SceGxmVertexProgram *vertexProgram, void *memBlock);
01445 int sceGxmPrecomputedDrawSetAllVertexStreams(SceGxmPrecomputedDraw *precomputedDraw, const void * const *streamDataArray);
01446 int sceGxmPrecomputedDrawSetVertexStream(SceGxmPrecomputedDraw *precomputedDraw, unsigned int streamIndex, const void *streamData);
01447 void sceGxmPrecomputedDrawSetParams(SceGxmPrecomputedDraw *precomputedDraw, SceGxmPrimitiveType primType, SceGxmIndexFormat indexType, const void *indexData, unsigned int indexCount);
01448 void sceGxmPrecomputedDrawSetParamsInstanced(SceGxmPrecomputedDraw *precomputedDraw, SceGxmPrimitiveType primType, SceGxmIndexFormat indexType, const void *indexData, unsigned int indexCount, unsigned int indexWrap);
01449 
01450 int sceGxmGetRenderTargetMemSizes(const SceGxmRenderTargetParams *params, unsigned int *hostMemSize, unsigned int *driverMemSize);
01451 int sceGxmCreateRenderTarget(const SceGxmRenderTargetParams *params, SceGxmRenderTarget **renderTarget);
01452 int sceGxmRenderTargetGetHostMem(const SceGxmRenderTarget *renderTarget, void **hostMem);
01453 int sceGxmRenderTargetGetDriverMemBlock(const SceGxmRenderTarget *renderTarget, SceUID *driverMemBlock);
01454 int sceGxmDestroyRenderTarget(SceGxmRenderTarget *renderTarget);
01455 
01456 int sceGxmSetUniformDataF(void *uniformBuffer, const SceGxmProgramParameter *parameter, unsigned int componentOffset, unsigned int componentCount, const float *sourceData);
01457 
01458 #ifdef __cplusplus
01459 }
01460 #endif
01461 
01462 #endif /* _PSP2_GXM_ */
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines