/*
 |            file: set.c
 |        language: 1	(ANSI C)
 |     produced by: GNU C 4.2.1
 |    compiler dir: /OST/GraphicsGFX/SDP3430/Source/SGX12.19/GFX_Linux_DDK/src/eurasia/eurasiacon/openvg
 | program counter: <0x13114;0x151cc>
 */
typedef unsigned int size_t

typedef long long int __quad_t

typedef long int __off_t

typedef __quad_t __off64_t

struct _IO_FILE {
	int _flags // @0
	char* _IO_read_ptr // @4
	char* _IO_read_end // @8
	char* _IO_read_base // @c
	char* _IO_write_base // @10
	char* _IO_write_ptr // @14
	char* _IO_write_end // @18
	char* _IO_buf_base // @1c
	char* _IO_buf_end // @20
	char* _IO_save_base // @24
	char* _IO_backup_base // @28
	char* _IO_save_end // @2c
	struct _IO_marker* _markers // @30
	struct _IO_FILE* _chain // @34
	int _fileno // @38
	int _flags2 // @3c
	__off_t _old_offset // @40
	short unsigned int _cur_column // @44
	signed char _vtable_offset // @46
	char[1] _shortbuf // @47
	_IO_lock_t* _lock // @48
	__off64_t _offset // @50
	void* __pad1 // @58
	void* __pad2 // @5c
	void* __pad3 // @60
	void* __pad4 // @64
	size_t __pad5 // @68
	int _mode // @6c
	char[40] _unused2 // @70
}

typedef void _IO_lock_t

struct _IO_marker {
	struct _IO_marker* _next // @0
	struct _IO_FILE* _sbuf // @4
	int _pos // @8
}

typedef unsigned int IMG_UINT

typedef int IMG_INT

typedef unsigned char IMG_UINT8

typedef unsigned char IMG_BYTE

typedef char IMG_CHAR

typedef long unsigned int IMG_UINT32

typedef long int IMG_INT32

typedef float IMG_FLOAT

enum tag_img_bool {
	IMG_FALSE = 0; //0x0
	IMG_TRUE = 1; //0x1
	IMG_FORCE_ALIGN = 2147483647; //0x7fffffff
}

typedef enum tag_img_bool IMG_BOOL

typedef void IMG_VOID

typedef void* IMG_PVOID

typedef IMG_PVOID IMG_HANDLE

typedef struct {
	IMG_UINT32 uiAddr // @0
} IMG_CPU_PHYADDR

typedef struct {
	IMG_UINT32 uiAddr // @0
} IMG_DEV_VIRTADDR

enum _PVRSRV_ERROR_ {
	PVRSRV_OK = 0; //0x0
	PVRSRV_ERROR_GENERIC = 1; //0x1
	PVRSRV_ERROR_OUT_OF_MEMORY = 2; //0x2
	PVRSRV_ERROR_TOO_MANY_BUFFERS = 3; //0x3
	PVRSRV_ERROR_SYMBOL_NOT_FOUND = 4; //0x4
	PVRSRV_ERROR_OUT_OF_HSPACE = 5; //0x5
	PVRSRV_ERROR_INVALID_PARAMS = 6; //0x6
	PVRSRV_ERROR_TILE_MAP_FAILED = 7; //0x7
	PVRSRV_ERROR_INIT_FAILURE = 8; //0x8
	PVRSRV_ERROR_CANT_REGISTER_CALLBACK = 9; //0x9
	PVRSRV_ERROR_INVALID_DEVICE = 10; //0xa
	PVRSRV_ERROR_NOT_OWNER = 11; //0xb
	PVRSRV_ERROR_BAD_MAPPING = 12; //0xc
	PVRSRV_ERROR_TIMEOUT = 13; //0xd
	PVRSRV_ERROR_NO_PRIMARY = 14; //0xe
	PVRSRV_ERROR_FLIP_CHAIN_EXISTS = 15; //0xf
	PVRSRV_ERROR_CANNOT_ACQUIRE_SYSDATA = 16; //0x10
	PVRSRV_ERROR_SCENE_INVALID = 17; //0x11
	PVRSRV_ERROR_STREAM_ERROR = 18; //0x12
	PVRSRV_ERROR_INVALID_INTERRUPT = 19; //0x13
	PVRSRV_ERROR_FAILED_DEPENDENCIES = 20; //0x14
	PVRSRV_ERROR_CMD_NOT_PROCESSED = 21; //0x15
	PVRSRV_ERROR_CMD_TOO_BIG = 22; //0x16
	PVRSRV_ERROR_DEVICE_REGISTER_FAILED = 23; //0x17
	PVRSRV_ERROR_FIFO_SPACE = 24; //0x18
	PVRSRV_ERROR_TA_RECOVERY = 25; //0x19
	PVRSRV_ERROR_INDOSORLOWPOWER = 26; //0x1a
	PVRSRV_ERROR_TOOMANYBUFFERS = 27; //0x1b
	PVRSRV_ERROR_NOT_SUPPORTED = 28; //0x1c
	PVRSRV_ERROR_PROCESSING_BLOCKED = 29; //0x1d
	PVRSRV_ERROR_CANNOT_FLUSH_QUEUE = 31; //0x1f
	PVRSRV_ERROR_CANNOT_GET_QUEUE_SPACE = 32; //0x20
	PVRSRV_ERROR_CANNOT_GET_RENDERDETAILS = 33; //0x21
	PVRSRV_ERROR_RETRY = 34; //0x22
	PVRSRV_ERROR_FORCE_I32 = 2147483647; //0x7fffffff
}

typedef enum _PVRSRV_ERROR_ PVRSRV_ERROR

enum _PVRSRV_PIXEL_FORMAT_ {
	PVRSRV_PIXEL_FORMAT_UNKNOWN = 0; //0x0
	PVRSRV_PIXEL_FORMAT_RGB565 = 1; //0x1
	PVRSRV_PIXEL_FORMAT_RGB555 = 2; //0x2
	PVRSRV_PIXEL_FORMAT_RGB888 = 3; //0x3
	PVRSRV_PIXEL_FORMAT_BGR888 = 4; //0x4
	PVRSRV_PIXEL_FORMAT_YUV420 = 5; //0x5
	PVRSRV_PIXEL_FORMAT_YUV444 = 6; //0x6
	PVRSRV_PIXEL_FORMAT_VUY444 = 7; //0x7
	PVRSRV_PIXEL_FORMAT_GREY_SCALE = 8; //0x8
	PVRSRV_PIXEL_FORMAT_YUYV = 9; //0x9
	PVRSRV_PIXEL_FORMAT_YVYU = 10; //0xa
	PVRSRV_PIXEL_FORMAT_UYVY = 11; //0xb
	PVRSRV_PIXEL_FORMAT_VYUY = 12; //0xc
	PVRSRV_PIXEL_FORMAT_PAL12 = 13; //0xd
	PVRSRV_PIXEL_FORMAT_PAL8 = 14; //0xe
	PVRSRV_PIXEL_FORMAT_PAL4 = 15; //0xf
	PVRSRV_PIXEL_FORMAT_PAL2 = 16; //0x10
	PVRSRV_PIXEL_FORMAT_PAL1 = 17; //0x11
	PVRSRV_PIXEL_FORMAT_ARGB1555 = 18; //0x12
	PVRSRV_PIXEL_FORMAT_ARGB4444 = 19; //0x13
	PVRSRV_PIXEL_FORMAT_ARGB8888 = 20; //0x14
	PVRSRV_PIXEL_FORMAT_ABGR8888 = 21; //0x15
	PVRSRV_PIXEL_FORMAT_YV12 = 22; //0x16
	PVRSRV_PIXEL_FORMAT_I420 = 23; //0x17
	PVRSRV_PIXEL_FORMAT_DXT1 = 24; //0x18
	PVRSRV_PIXEL_FORMAT_IMC2 = 25; //0x19
	PVRSRV_PIXEL_FORMAT_G16R16 = 26; //0x1a
	PVRSRV_PIXEL_FORMAT_G16R16F = 27; //0x1b
	PVRSRV_PIXEL_FORMAT_ARGB8332 = 28; //0x1c
	PVRSRV_PIXEL_FORMAT_A2RGB10 = 29; //0x1d
	PVRSRV_PIXEL_FORMAT_A2BGR10 = 30; //0x1e
	PVRSRV_PIXEL_FORMAT_ABGR16 = 31; //0x1f
	PVRSRV_PIXEL_FORMAT_ABGR16F = 32; //0x20
	PVRSRV_PIXEL_FORMAT_ABGR32F = 33; //0x21
	PVRSRV_PIXEL_FORMAT_R32F = 34; //0x22
	PVRSRV_PIXEL_FORMAT_A8 = 35; //0x23
	PVRSRV_PIXEL_FORMAT_L8 = 36; //0x24
	PVRSRV_PIXEL_FORMAT_A8L8 = 37; //0x25
	PVRSRV_PIXEL_FORMAT_L16 = 38; //0x26
	PVRSRV_PIXEL_FORMAT_R16F = 39; //0x27
	PVRSRV_PIXEL_FORMAT_L6V5U5 = 40; //0x28
	PVRSRV_PIXEL_FORMAT_V8U8 = 41; //0x29
	PVRSRV_PIXEL_FORMAT_V16U16 = 42; //0x2a
	PVRSRV_PIXEL_FORMAT_QWVU8888 = 43; //0x2b
	PVRSRV_PIXEL_FORMAT_XLVU8888 = 44; //0x2c
	PVRSRV_PIXEL_FORMAT_QWVU16 = 45; //0x2d
	PVRSRV_PIXEL_FORMAT_D16 = 46; //0x2e
	PVRSRV_PIXEL_FORMAT_D24S8 = 47; //0x2f
	PVRSRV_PIXEL_FORMAT_D24X8 = 48; //0x30
	PVRSRV_PIXEL_FORMAT_D32F = 49; //0x31
	PVRSRV_PIXEL_FORMAT_R8G8_B8G8 = 50; //0x32
	PVRSRV_PIXEL_FORMAT_G8R8_G8B8 = 51; //0x33
	PVRSRV_PIXEL_FORMAT_YUY2 = 52; //0x34
	PVRSRV_PIXEL_FORMAT_DXT23 = 53; //0x35
	PVRSRV_PIXEL_FORMAT_DXT45 = 54; //0x36
	PVRSRV_PIXEL_FORMAT_G32R32F = 55; //0x37
	PVRSRV_PIXEL_FORMAT_NV11 = 56; //0x38
	PVRSRV_PIXEL_FORMAT_NV12 = 57; //0x39
	PVRSRV_PIXEL_FORMAT_FORCE_I32 = 2147483647; //0x7fffffff
}

typedef enum _PVRSRV_PIXEL_FORMAT_ PVRSRV_PIXEL_FORMAT

enum _PVRSRV_ALPHA_FORMAT_ {
	PVRSRV_ALPHA_FORMAT_UNKNOWN = 0; //0x0
	PVRSRV_ALPHA_FORMAT_PRE = 1; //0x1
	PVRSRV_ALPHA_FORMAT_NONPRE = 2; //0x2
	PVRSRV_ALPHA_FORMAT_MASK = 15; //0xf
}

typedef enum _PVRSRV_ALPHA_FORMAT_ PVRSRV_ALPHA_FORMAT

enum _PVRSRV_COLOURSPACE_FORMAT_ {
	PVRSRV_COLOURSPACE_FORMAT_UNKNOWN = 0; //0x0
	PVRSRV_COLOURSPACE_FORMAT_LINEAR = 65536; //0x10000
	PVRSRV_COLOURSPACE_FORMAT_NONLINEAR = 131072; //0x20000
	PVRSRV_COLOURSPACE_FORMAT_MASK = 983040; //0xf0000
}

typedef enum _PVRSRV_COLOURSPACE_FORMAT_ PVRSRV_COLOURSPACE_FORMAT

struct _PVRSRV_SYNC_DATA_ {
	IMG_UINT32 ui32WriteOpsPending // @0
	volatile IMG_UINT32 ui32WriteOpsComplete // @4
	IMG_UINT32 ui32ReadOpsPending // @8
	volatile IMG_UINT32 ui32ReadOpsComplete // @c
	IMG_UINT32 ui32LastOpDumpVal // @10
	IMG_UINT32 ui32LastReadOpDumpVal // @14
}

typedef struct _PVRSRV_SYNC_DATA_ PVRSRV_SYNC_DATA

struct _PVRSRV_CLIENT_SYNC_INFO_ {
	PVRSRV_SYNC_DATA* psSyncData // @0
	IMG_DEV_VIRTADDR sWriteOpsCompleteDevVAddr // @4
	IMG_DEV_VIRTADDR sReadOpsCompleteDevVAddr // @8
	IMG_HANDLE hMappingInfo // @c
	IMG_HANDLE hKernelSyncInfo // @10
}

typedef struct _PVRSRV_CLIENT_SYNC_INFO_ PVRSRV_CLIENT_SYNC_INFO

struct PVRSRV_RESOURCE_TAG {
	volatile IMG_UINT32 ui32Lock // @0
	IMG_UINT32 ui32ID // @4
}

typedef struct PVRSRV_RESOURCE_TAG PVRSRV_RESOURCE

typedef PVRSRV_RESOURCE PVRSRV_RES_HANDLE

struct _PVRSRV_CONNECTION_ {
	IMG_HANDLE hServices // @0
	IMG_UINT32 ui32ProcessID // @4
}

typedef struct _PVRSRV_CONNECTION_ PVRSRV_CONNECTION

struct _PVRSRV_DEV_DATA_ {
	PVRSRV_CONNECTION sConnection // @0
	IMG_HANDLE hDevCookie // @8
}

typedef struct _PVRSRV_DEV_DATA_ PVRSRV_DEV_DATA

struct _PVRSRV_HWREG_ {
	IMG_UINT32 ui32RegAddr // @0
	IMG_UINT32 ui32RegVal // @4
}

typedef struct _PVRSRV_HWREG_ PVRSRV_HWREG

struct _PVRSRV_CLIENT_MEM_INFO_ {
	IMG_PVOID pvLinAddr // @0
	IMG_PVOID pvLinAddrKM // @4
	IMG_DEV_VIRTADDR sDevVAddr // @8
	IMG_CPU_PHYADDR sCpuPAddr // @c
	IMG_UINT32 ui32Flags // @10
	IMG_UINT32 ui32ClientFlags // @14
	IMG_UINT32 ui32AllocSize // @18
	struct _PVRSRV_CLIENT_SYNC_INFO_* psClientSyncInfo // @1c
	IMG_HANDLE hMappingInfo // @20
	IMG_HANDLE hKernelMemInfo // @24
	IMG_HANDLE hResItem // @28
	struct _PVRSRV_CLIENT_MEM_INFO_* psNext // @2c
}

typedef struct _PVRSRV_CLIENT_MEM_INFO_ PVRSRV_CLIENT_MEM_INFO

struct _PVRSRV_EVENTOBJECT_ {
	IMG_CHAR[50] szName // @0
	IMG_HANDLE hOSEventKM // @34
}

typedef struct _PVRSRV_EVENTOBJECT_ PVRSRV_EVENTOBJECT

struct _PVRSRV_MISC_INFO_ {
	IMG_UINT32 ui32StateRequest // @0
	IMG_UINT32 ui32StatePresent // @4
	IMG_VOID* pvSOCTimerRegisterKM // @8
	IMG_VOID* pvSOCTimerRegisterUM // @c
	IMG_VOID* pvSOCClockGateRegs // @10
	IMG_UINT32 ui32SOCClockGateRegsSize // @14
	IMG_CHAR* pszMemoryStr // @18
	IMG_UINT32 ui32MemoryStrLen // @1c
	PVRSRV_EVENTOBJECT sGlobalEventObject // @20
	IMG_HANDLE hOSGlobalEvent // @58
}

typedef struct _PVRSRV_MISC_INFO_ PVRSRV_MISC_INFO

struct CircularBuffer_TAG {
	PVRSRV_CLIENT_MEM_INFO* psMemInfo // @0
	IMG_UINT32* pui32BufferBase // @4
	IMG_UINT32 ui32BufferLimitInBytes // @8
	IMG_DEV_VIRTADDR uDevVirtBase // @c
	volatile IMG_UINT32* pui32ReadOffset // @10
	IMG_UINT32 ui32ReadOffsetCopy // @14
	IMG_UINT32 ui32CurrentWriteOffsetInBytes // @18
	IMG_UINT32 ui32CommittedPrimOffsetInBytes // @1c
	IMG_UINT32 ui32CommittedHWOffsetInBytes // @20
	IMG_UINT32 ui32SingleKickLimitInBytes // @24
	IMG_DEV_VIRTADDR uTACtrlKickDevAddr // @28
	IMG_BOOL bLocked // @2c
	IMG_UINT32 ui32LockCount // @30
	PVRSRV_DEV_DATA* psDevData // @34
	IMG_HANDLE hOSEvent // @38
}

typedef struct CircularBuffer_TAG CircularBuffer

typedef void* EGLClientBuffer

struct _PVRSRV_SGX_CLIENT_INFO_ {
	IMG_UINT32 ui32ProcessID // @0
	IMG_VOID* pvProcess // @4
	PVRSRV_MISC_INFO sMiscInfo // @8
	IMG_UINT32 ui32EVMConfig // @64
	IMG_UINT32 ui32ClientKickFlags // @68
	IMG_UINT32 ui32NumUSETemporaryRegisters // @6c
	IMG_UINT32 ui32NumUSEAttributeRegisters // @70
	IMG_DEV_VIRTADDR uPDSExecBase // @74
	IMG_DEV_VIRTADDR uUSEExecBase // @78
}

typedef struct _PVRSRV_SGX_CLIENT_INFO_ PVRSRV_SGX_CLIENT_INFO

struct _SGX_KICKTA_COMMON_ {
	IMG_UINT32 ui32Frame // @0
	IMG_UINT32 ui32KickFlags // @4
	IMG_BOOL bCheckZLSControl // @8
	IMG_UINT32 ui32StoreEnable // @c
	IMG_UINT32 ui32LastTLQOp // @10
	IMG_HANDLE hRenderContext // @14
	IMG_HANDLE hRTDataSet // @18
	IMG_DEV_VIRTADDR sVisTestResultMem // @1c
	IMG_UINT32 ui32VisTestFlags // @20
	IMG_UINT32 ui32VisBreakpointCount // @24
	IMG_DEV_VIRTADDR sTAStateShadowDevAddr // @28
	IMG_UINT32 ui32TAStateShadowSizeInDWORDs // @2c
	IMG_UINT32 ui32ISPBGObjDepth // @30
	IMG_UINT32 ui32ISPBGObj // @34
	IMG_UINT32 ui32ISPIPFMisc // @38
	IMG_UINT32 ui32ISPPerpendicular // @3c
	IMG_UINT32 ui32ISPCullValue // @40
	IMG_UINT32 ui323DAAMode // @44
	IMG_UINT32 ui32ISPZBase // @48
	IMG_UINT32 ui32ISPStencilBase // @4c
	IMG_UINT32 ui32ZLSCtl // @50
	IMG_UINT32 ui32ISPValidId // @54
	IMG_UINT32 ui32ISPDBias // @58
	IMG_UINT32 ui32ISPSceneBGObj // @5c
	IMG_UINT32 ui32EDMPixelPDSAddr // @60
	IMG_UINT32 ui32EDMPixelPDSDataSize // @64
	IMG_UINT32 ui32EDMPixelPDSInfo // @68
	IMG_UINT32 ui32PixelBE // @6c
	IMG_UINT32 ui32Filter0Left // @70
	IMG_UINT32 ui32Filter0Right // @74
	IMG_UINT32 ui32Filter0Extra // @78
	IMG_UINT32 ui32Filter1Left // @7c
	IMG_UINT32 ui32Filter1Right // @80
	IMG_UINT32 ui32Filter1Extra // @84
	IMG_UINT32 ui32Filter2Left // @88
	IMG_UINT32 ui32Filter2Right // @8c
	IMG_UINT32 ui32Filter2Extra // @90
	IMG_UINT32 ui32FilterTable // @94
	IMG_UINT32 ui32USEStoreRange // @98
	IMG_UINT32 ui32USELoadRedirect // @9c
	IMG_DEV_VIRTADDR sTABufferCtlStreamBase // @a0
	IMG_DEV_VIRTADDR sTABufferCtlStreamTerminate // @a4
	IMG_UINT32 ui32MTECtrl // @a8
	IMG_UINT32[3] aui32SpecObject // @ac
	IMG_UINT32 ui32NumTAStatusVals // @b8
	IMG_UINT32 ui32Num3DStatusVals // @bc
	IMG_UINT32 ui32NumSrcSyncs // @c0
}

typedef struct _SGX_KICKTA_COMMON_ SGX_KICKTA_COMMON

struct _SGX_KICKTA_ {
	SGX_KICKTA_COMMON sKickTACommon // @0
	PVRSRV_CLIENT_SYNC_INFO* psRenderSurfSyncInfo // @c4
	PVRSRV_CLIENT_SYNC_INFO*[4] apsSrcSurfSyncInfo // @c8
	PVRSRV_CLIENT_SYNC_INFO*[32] apsTAStatusInfo // @d8
	PVRSRV_CLIENT_SYNC_INFO*[2] aps3DStatusInfo // @158
	IMG_HANDLE hTQContext // @160
}

typedef struct _SGX_KICKTA_ SGX_KICKTA

struct SrvSysContext_TAG {
	PVRSRV_CONNECTION sConnection // @0
	PVRSRV_DEV_DATA s3D // @8
	PVRSRV_SGX_CLIENT_INFO sHWInfo // @14
	IMG_HANDLE hIMGEGLAppHints // @90
	IMG_HANDLE hDevMemContext // @94
	IMG_HANDLE hUSEFragmentHeap // @98
	IMG_HANDLE hUSEVertexHeap // @9c
	IMG_HANDLE hPDSFragmentHeap // @a0
	IMG_HANDLE hPDSVertexHeap // @a4
	IMG_HANDLE hGeneralHeap // @a8
	IMG_DEV_VIRTADDR uUSEFragmentHeapBase // @ac
	IMG_DEV_VIRTADDR uUSEVertexHeapBase // @b0
	IMG_HANDLE hRenderContext // @b4
	PVRSRV_CLIENT_MEM_INFO* psVisTestResults // @b8
	IMG_HANDLE hTransferContext // @bc
}

typedef struct SrvSysContext_TAG SrvSysContext

struct _PDS_PIXEL_SHADER_PROGRAM_ {
	IMG_UINT32* pui32DataSegment // @0
	IMG_UINT32 ui32DataSize // @4
	IMG_UINT32[3] aui32USETaskControl // @8
	IMG_UINT32 ui32NumFPUIterators // @14
	IMG_UINT32[128] aui32FPUIterators // @18
	IMG_UINT32[128] aui32TAGLayers // @218
}

typedef struct _PDS_PIXEL_SHADER_PROGRAM_ PDS_PIXEL_SHADER_PROGRAM

struct _PDS_TEXTURE_IMAGE_UNIT_ {
	IMG_UINT32 ui32TAGControlWord0 // @0
	IMG_UINT32 ui32TAGControlWord1 // @4
	IMG_UINT32 ui32TAGControlWord2 // @8
}

typedef struct _PDS_TEXTURE_IMAGE_UNIT_ PDS_TEXTURE_IMAGE_UNIT

typedef IMG_VOID* EGLDrawableHandle

enum undefined {
	ROTATE_0 = 0; //0x0
	ROTATE_90 = 1; //0x1
	ROTATE_180 = 2; //0x2
	ROTATE_270 = 3; //0x3
	FLIP_Y = 4; //0x4
}

typedef enum undefined EGLRotationAngle

struct EGLRect_TAG {
	IMG_INT32 i32X // @0
	IMG_INT32 i32Y // @4
	IMG_UINT32 ui32Width // @8
	IMG_UINT32 ui32Height // @c
}

typedef struct EGLRect_TAG EGLRect

enum undefined {
	EGL_DRAWABLETYPE_WINDOW = 0; //0x0
	EGL_DRAWABLETYPE_PIXMAP = 1; //0x1
	EGL_DRAWABLETYPE_PBUFFER = 2; //0x2
}

typedef enum undefined EGLDrawableType

struct EGLPixelBEState_TAG {
	IMG_UINT32 ui32SidebandWord // @0
	IMG_UINT32[4] aui32EmitWords // @4
	PVRSRV_HWREG sEventPixelExec // @14
	PVRSRV_HWREG sEventPixelData // @1c
	PVRSRV_HWREG sEventPixelInfo // @24
	IMG_BOOL bDither // @2c
	IMG_UINT32* pui32PixelEventPDS // @30
	IMG_UINT32* pui32PixelEventUSSE // @34
}

typedef struct EGLPixelBEState_TAG EGLPixelBEState

struct GLESTARegisters_TAG {
	PVRSRV_HWREG sMTEControl // @0
}

typedef struct GLESTARegisters_TAG GLESTARegisters

struct GLES3DRegisters_TAG {
	PVRSRV_HWREG sPixelBE // @0
	PVRSRV_HWREG sISPIPFMisc // @8
	PVRSRV_HWREG sISPPerpendicular // @10
	PVRSRV_HWREG sISPCullValue // @18
	PVRSRV_HWREG sISPDepthBias // @20
	PVRSRV_HWREG s3DAAMode // @28
	PVRSRV_HWREG sISPZLSControl // @30
	PVRSRV_HWREG sISPZLoadBase // @38
	PVRSRV_HWREG sISPZStoreBase // @40
	PVRSRV_HWREG sISPStencilLoadBase // @48
	PVRSRV_HWREG sISPStencilStoreBase // @50
	PVRSRV_HWREG sISPBackgroundObject // @58
	PVRSRV_HWREG sISPBackgroundObjectDepth // @60
	PVRSRV_HWREG sEDMPixelPDSExec // @68
	PVRSRV_HWREG sEDMPixelPDSData // @70
	PVRSRV_HWREG sEDMPixelPDSInfo // @78
}

typedef struct GLES3DRegisters_TAG GLES3DRegisters

struct EGLTerminateState_TAG {
	PVRSRV_CLIENT_MEM_INFO* psTerminateUSEMemInfo // @0
	PVRSRV_CLIENT_MEM_INFO* psTerminatePDSMemInfo // @4
	IMG_UINT32 ui32PDSDataSize // @8
	IMG_UINT32 ui32TerminateRegion // @c
	IMG_DEV_VIRTADDR uPDSCodeAddress // @10
}

typedef struct EGLTerminateState_TAG EGLTerminateState

struct EGLRenderSurfaceTAG {
	IMG_BOOL bFirstKick // @0
	IMG_HANDLE hRenderTarget // @4
	PVRSRV_CLIENT_SYNC_INFO* psSyncInfo // @8
	PVRSRV_CLIENT_MEM_INFO* psSyncMemInfo // @c
	PVRSRV_CLIENT_MEM_INFO* psZSBufferMemInfo // @10
	CircularBuffer sPDSBuffer // @14
	CircularBuffer sUSSEBuffer // @50
	IMG_BOOL bMultiSample // @8c
	IMG_BOOL bInFrame // @90
	IMG_BOOL bInExternalFrame // @94
	IMG_BOOL bPrimitivesSinceLastTA // @98
	IMG_BOOL bMultiAPISurface // @9c
	EGLPixelBEState sPixelBEState // @a0
	IMG_UINT32[3] aui32HWBGObjPDSState // @d8
	EGLTerminateState sTerm // @e4
	IMG_UINT32 ui32TerminateRegion // @f8
	IMG_BOOL bLastDrawMaskFullScreenEnable // @fc
	EGLRect sLastDrawMask // @100
	IMG_UINT32[2] aui32RegionClipWord // @110
	GLESTARegisters sTARegs // @118
	GLES3DRegisters s3DRegs // @120
	EGLDrawableHandle hEGLSurface // @1a0
	PVRSRV_ALPHA_FORMAT eAlphaFormat // @1a4
	PVRSRV_COLOURSPACE_FORMAT eColourSpace // @1a8
	EGLClientBuffer hVGClientBuffer // @1ac
}

typedef struct EGLRenderSurfaceTAG EGLRenderSurface

struct EGLDrawableParamsTAG {
	EGLRotationAngle eRotationAngle // @0
	IMG_UINT32 ui32Width // @4
	IMG_UINT32 ui32Height // @8
	PVRSRV_PIXEL_FORMAT ePixelFormat // @c
	PVRSRV_CLIENT_SYNC_INFO* psSyncInfo // @10
	IMG_UINT32 ui32Stride // @14
	IMG_VOID* pvLinSurfaceAddress // @18
	IMG_UINT32 ui32HWSurfaceAddress // @1c
	EGLRenderSurface* psRenderSurface // @20
	EGLDrawableType eDrawableType // @24
	IMG_UINT32 ui32AccumStride // @28
	IMG_UINT32 ui32AccumHWAddress // @2c
	PVRSRV_PIXEL_FORMAT eAccumPixelFormat // @30
	PVRSRV_CLIENT_SYNC_INFO* psAccumSyncInfo // @34
}

typedef struct EGLDrawableParamsTAG EGLDrawableParams

struct EGLcontextModeRec {
	IMG_UINT32 ui32AntiAliasMode // @0
	IMG_UINT32 ui32RedBits // @4
	IMG_UINT32 ui32GreenBits // @8
	IMG_UINT32 ui32BlueBits // @c
	IMG_UINT32 ui32AlphaBits // @10
	IMG_UINT32 ui32ColorBits // @14
	IMG_UINT32 ui32DepthBits // @18
	IMG_UINT32 ui32StencilBits // @1c
	IMG_UINT32 ui32MaxViewportX // @20
	IMG_UINT32 ui32MaxViewportY // @24
	PVRSRV_PIXEL_FORMAT ePixelFormat // @28
}

typedef struct EGLcontextModeRec EGLcontextMode

struct EGLImageRec {
	IMG_UINT32 ui32Width // @0
	IMG_UINT32 ui32Height // @4
	PVRSRV_PIXEL_FORMAT ePixelFormat // @8
	IMG_UINT32 ui32Stride // @c
	IMG_VOID* pvLinSurfaceAddress // @10
	IMG_UINT32 ui32HWSurfaceAddress // @14
	PVRSRV_CLIENT_MEM_INFO* psMemInfo // @18
	IMG_VOID* hImage // @1c
	IMG_UINT32 ui32Target // @20
	IMG_UINT32 ui32Buffer // @24
	IMG_UINT32 ui32Level // @28
	IMG_BOOL bTwiddled // @2c
}

typedef struct EGLImageRec EGLImage

struct FRMFrameResourceRec {
	IMG_UINT32 ui32FirstSurface // @0
	struct FRMFrameResourceRec* psPrev // @4
	struct FRMFrameResourceRec* psNext // @8
}

typedef struct FRMFrameResourceRec FRMFrameResource

struct FRMFrameListRec {
	const EGLRenderSurface* psSurface // @0
	IMG_UINT32 ui32Frame // @4
	PVRSRV_SYNC_DATA* psSyncData // @8
	IMG_UINT32 ui32Next // @c
}

typedef struct FRMFrameListRec FRMFrameList

struct FRMFrameResourceManagerRec {
	PVRSRV_RES_HANDLE* phSharedLock // @0
	IMG_VOID* pvContext // @4
	FRMFrameList* asAttachment // @8
	IMG_UINT32 ui32MaxAttachments // @c
	IMG_UINT32 ui32AttachmentFreeList // @10
	FRMFrameResource* psResourceList // @14
	void* pfnReclaimResourceMem // @18
	IMG_BOOL bRemoveResourceAfterRecoveringMem // @1c
	FRMFrameResource* psGhostList // @20
	void* pfnDestroyGhost // @24
	PVRSRV_CONNECTION* psConnection // @28
	IMG_HANDLE hOSEvent // @2c
	IMG_BOOL bInitialized // @30
	void* pfnSetError // @34
}

void

void

typedef struct FRMFrameResourceManagerRec FRMFrameResourceManager

typedef float VGfloat

typedef int VGint

typedef unsigned int VGuint

typedef unsigned int VGbitfield

enum undefined {
	VG_FALSE = 0; //0x0
	VG_TRUE = 1; //0x1
}

typedef VGuint VGHandle

enum undefined {
	VG_NO_ERROR = 0; //0x0
	VG_BAD_HANDLE_ERROR = 4096; //0x1000
	VG_ILLEGAL_ARGUMENT_ERROR = 4097; //0x1001
	VG_OUT_OF_MEMORY_ERROR = 4098; //0x1002
	VG_PATH_CAPABILITY_ERROR = 4099; //0x1003
	VG_UNSUPPORTED_IMAGE_FORMAT_ERROR = 4100; //0x1004
	VG_UNSUPPORTED_PATH_FORMAT_ERROR = 4101; //0x1005
	VG_IMAGE_IN_USE_ERROR = 4102; //0x1006
	VG_NO_CONTEXT_ERROR = 4103; //0x1007
}

typedef enum undefined VGErrorCode

enum undefined {
	VG_MATRIX_MODE = 4352; //0x1100
	VG_FILL_RULE = 4353; //0x1101
	VG_IMAGE_QUALITY = 4354; //0x1102
	VG_RENDERING_QUALITY = 4355; //0x1103
	VG_BLEND_MODE = 4356; //0x1104
	VG_IMAGE_MODE = 4357; //0x1105
	VG_SCISSOR_RECTS = 4358; //0x1106
	VG_COLOR_TRANSFORM = 4464; //0x1170
	VG_COLOR_TRANSFORM_VALUES = 4465; //0x1171
	VG_STROKE_LINE_WIDTH = 4368; //0x1110
	VG_STROKE_CAP_STYLE = 4369; //0x1111
	VG_STROKE_JOIN_STYLE = 4370; //0x1112
	VG_STROKE_MITER_LIMIT = 4371; //0x1113
	VG_STROKE_DASH_PATTERN = 4372; //0x1114
	VG_STROKE_DASH_PHASE = 4373; //0x1115
	VG_STROKE_DASH_PHASE_RESET = 4374; //0x1116
	VG_TILE_FILL_COLOR = 4384; //0x1120
	VG_CLEAR_COLOR = 4385; //0x1121
	VG_GLYPH_ORIGIN = 4386; //0x1122
	VG_MASKING = 4400; //0x1130
	VG_SCISSORING = 4401; //0x1131
	VG_PIXEL_LAYOUT = 4416; //0x1140
	VG_SCREEN_LAYOUT = 4417; //0x1141
	VG_FILTER_FORMAT_LINEAR = 4432; //0x1150
	VG_FILTER_FORMAT_PREMULTIPLIED = 4433; //0x1151
	VG_FILTER_CHANNEL_MASK = 4434; //0x1152
	VG_MAX_SCISSOR_RECTS = 4448; //0x1160
	VG_MAX_DASH_COUNT = 4449; //0x1161
	VG_MAX_KERNEL_SIZE = 4450; //0x1162
	VG_MAX_SEPARABLE_KERNEL_SIZE = 4451; //0x1163
	VG_MAX_COLOR_RAMP_STOPS = 4452; //0x1164
	VG_MAX_IMAGE_WIDTH = 4453; //0x1165
	VG_MAX_IMAGE_HEIGHT = 4454; //0x1166
	VG_MAX_IMAGE_PIXELS = 4455; //0x1167
	VG_MAX_IMAGE_BYTES = 4456; //0x1168
	VG_MAX_FLOAT = 4457; //0x1169
	VG_MAX_GAUSSIAN_STD_DEVIATION = 4458; //0x116a
}

typedef enum undefined VGParamType

enum undefined {
	VG_RENDERING_QUALITY_NONANTIALIASED = 4608; //0x1200
	VG_RENDERING_QUALITY_FASTER = 4609; //0x1201
	VG_RENDERING_QUALITY_BETTER = 4610; //0x1202
}

typedef enum undefined VGRenderingQuality

enum undefined {
	VG_PIXEL_LAYOUT_UNKNOWN = 4864; //0x1300
	VG_PIXEL_LAYOUT_RGB_VERTICAL = 4865; //0x1301
	VG_PIXEL_LAYOUT_BGR_VERTICAL = 4866; //0x1302
	VG_PIXEL_LAYOUT_RGB_HORIZONTAL = 4867; //0x1303
	VG_PIXEL_LAYOUT_BGR_HORIZONTAL = 4868; //0x1304
}

typedef enum undefined VGPixelLayout

enum undefined {
	VG_MATRIX_PATH_USER_TO_SURFACE = 5120; //0x1400
	VG_MATRIX_IMAGE_USER_TO_SURFACE = 5121; //0x1401
	VG_MATRIX_FILL_PAINT_TO_USER = 5122; //0x1402
	VG_MATRIX_STROKE_PAINT_TO_USER = 5123; //0x1403
	VG_MATRIX_GLYPH_USER_TO_SURFACE = 5124; //0x1404
}

typedef enum undefined VGMatrixMode

enum undefined {
	VG_CLEAR_MASK = 5376; //0x1500
	VG_FILL_MASK = 5377; //0x1501
	VG_SET_MASK = 5378; //0x1502
	VG_UNION_MASK = 5379; //0x1503
	VG_INTERSECT_MASK = 5380; //0x1504
	VG_SUBTRACT_MASK = 5381; //0x1505
}

typedef enum undefined VGMaskOperation

enum undefined {
	VG_PATH_DATATYPE_S_8 = 0; //0x0
	VG_PATH_DATATYPE_S_16 = 1; //0x1
	VG_PATH_DATATYPE_S_32 = 2; //0x2
	VG_PATH_DATATYPE_F = 3; //0x3
}

typedef enum undefined VGPathDatatype

enum undefined {
	VG_CAP_BUTT = 5888; //0x1700
	VG_CAP_ROUND = 5889; //0x1701
	VG_CAP_SQUARE = 5890; //0x1702
}

typedef enum undefined VGCapStyle

enum undefined {
	VG_JOIN_MITER = 6144; //0x1800
	VG_JOIN_ROUND = 6145; //0x1801
	VG_JOIN_BEVEL = 6146; //0x1802
}

typedef enum undefined VGJoinStyle

enum undefined {
	VG_EVEN_ODD = 6400; //0x1900
	VG_NON_ZERO = 6401; //0x1901
}

typedef enum undefined VGFillRule

enum undefined {
	VG_PAINT_TYPE = 6656; //0x1a00
	VG_PAINT_COLOR = 6657; //0x1a01
	VG_PAINT_COLOR_RAMP_SPREAD_MODE = 6658; //0x1a02
	VG_PAINT_COLOR_RAMP_PREMULTIPLIED = 6663; //0x1a07
	VG_PAINT_COLOR_RAMP_STOPS = 6659; //0x1a03
	VG_PAINT_LINEAR_GRADIENT = 6660; //0x1a04
	VG_PAINT_RADIAL_GRADIENT = 6661; //0x1a05
	VG_PAINT_PATTERN_TILING_MODE = 6662; //0x1a06
}

enum undefined {
	VG_PAINT_TYPE_COLOR = 6912; //0x1b00
	VG_PAINT_TYPE_LINEAR_GRADIENT = 6913; //0x1b01
	VG_PAINT_TYPE_RADIAL_GRADIENT = 6914; //0x1b02
	VG_PAINT_TYPE_PATTERN = 6915; //0x1b03
}

typedef enum undefined VGPaintType

enum undefined {
	VG_COLOR_RAMP_SPREAD_PAD = 7168; //0x1c00
	VG_COLOR_RAMP_SPREAD_REPEAT = 7169; //0x1c01
	VG_COLOR_RAMP_SPREAD_REFLECT = 7170; //0x1c02
}

typedef enum undefined VGColorRampSpreadMode

enum undefined {
	VG_TILE_FILL = 7424; //0x1d00
	VG_TILE_PAD = 7425; //0x1d01
	VG_TILE_REPEAT = 7426; //0x1d02
	VG_TILE_REFLECT = 7427; //0x1d03
}

typedef enum undefined VGTilingMode

enum undefined {
	VG_sRGBX_8888 = 0; //0x0
	VG_sRGBA_8888 = 1; //0x1
	VG_sRGBA_8888_PRE = 2; //0x2
	VG_sRGB_565 = 3; //0x3
	VG_sRGBA_5551 = 4; //0x4
	VG_sRGBA_4444 = 5; //0x5
	VG_sL_8 = 6; //0x6
	VG_lRGBX_8888 = 7; //0x7
	VG_lRGBA_8888 = 8; //0x8
	VG_lRGBA_8888_PRE = 9; //0x9
	VG_lL_8 = 10; //0xa
	VG_A_8 = 11; //0xb
	VG_BW_1 = 12; //0xc
	VG_A_1 = 13; //0xd
	VG_A_4 = 14; //0xe
	VG_sXRGB_8888 = 64; //0x40
	VG_sARGB_8888 = 65; //0x41
	VG_sARGB_8888_PRE = 66; //0x42
	VG_sARGB_1555 = 68; //0x44
	VG_sARGB_4444 = 69; //0x45
	VG_lXRGB_8888 = 71; //0x47
	VG_lARGB_8888 = 72; //0x48
	VG_lARGB_8888_PRE = 73; //0x49
	VG_sBGRX_8888 = 128; //0x80
	VG_sBGRA_8888 = 129; //0x81
	VG_sBGRA_8888_PRE = 130; //0x82
	VG_sBGR_565 = 131; //0x83
	VG_sBGRA_5551 = 132; //0x84
	VG_sBGRA_4444 = 133; //0x85
	VG_lBGRX_8888 = 135; //0x87
	VG_lBGRA_8888 = 136; //0x88
	VG_lBGRA_8888_PRE = 137; //0x89
	VG_sXBGR_8888 = 192; //0xc0
	VG_sABGR_8888 = 193; //0xc1
	VG_sABGR_8888_PRE = 194; //0xc2
	VG_sABGR_1555 = 196; //0xc4
	VG_sABGR_4444 = 197; //0xc5
	VG_lXBGR_8888 = 199; //0xc7
	VG_lABGR_8888 = 200; //0xc8
	VG_lABGR_8888_PRE = 201; //0xc9
}

typedef enum undefined VGImageFormat

enum undefined {
	VG_IMAGE_QUALITY_NONANTIALIASED = 1; //0x1
	VG_IMAGE_QUALITY_FASTER = 2; //0x2
	VG_IMAGE_QUALITY_BETTER = 4; //0x4
}

typedef enum undefined VGImageQuality

enum undefined {
	VG_DRAW_IMAGE_NORMAL = 7936; //0x1f00
	VG_DRAW_IMAGE_MULTIPLY = 7937; //0x1f01
	VG_DRAW_IMAGE_STENCIL = 7938; //0x1f02
}

typedef enum undefined VGImageMode

enum undefined {
	VG_BLEND_SRC = 8192; //0x2000
	VG_BLEND_SRC_OVER = 8193; //0x2001
	VG_BLEND_DST_OVER = 8194; //0x2002
	VG_BLEND_SRC_IN = 8195; //0x2003
	VG_BLEND_DST_IN = 8196; //0x2004
	VG_BLEND_MULTIPLY = 8197; //0x2005
	VG_BLEND_SCREEN = 8198; //0x2006
	VG_BLEND_DARKEN = 8199; //0x2007
	VG_BLEND_LIGHTEN = 8200; //0x2008
	VG_BLEND_ADDITIVE = 8201; //0x2009
}

typedef enum undefined VGBlendMode

typedef struct OVGContext_TAG OVGContext

struct OVGContext_TAG {
	IMG_UINT32 ui32Flags // @0
	IMG_HANDLE hServices // @4
	OVGHWContext sHWContext // @8
	IMG_UINT32 ui32BlendMode // @2a0
	OVGState sOVGState // @2a4
	EGLcontextMode* psMode // @508
	OVGFSClear sFullscreenClear // @50c
	IMG_BOOL bResubmitScissor // @514
	EGLDrawableParams sDrawableParams // @518
	EGLRenderSurface* psRenderSurface // @550
	IMG_BOOL bHasBeenCurrent // @554
	VGbitfield eCurrentDrawMode // @558
	OVGImage* psCurrentDrawImage // @55c
	OVGFRect* psCurrentPathBoundingRect // @560
	OVGPath* psCurrentPath // @564
	PVRSRV_ALPHA_FORMAT eLastRTAlphaFormat // @568
	PVRSRV_COLOURSPACE_FORMAT eLastRTColourSpace // @56c
	OVGTexture* psAlphaMaskTexture // @570
	OVGDirtyRect* psAlphaMaskDirtyRectList // @574
	IMG_BOOL bSharedContext // @578
	OVGContext* psNextContext // @57c
	IMG_BOOL bSPMOutOfMemEvent // @580
	IMG_CHAR* pszExtensions // @584
}

struct OVGRect_TAG {
	IMG_INT32 i32X // @0
	IMG_INT32 i32Y // @4
	IMG_INT32 i32Width // @8
	IMG_INT32 i32Height // @c
}

typedef struct OVGRect_TAG OVGRect

struct OVGDirtyRect_Tag {
	IMG_INT32 i32X // @0
	IMG_INT32 i32Y // @4
	IMG_INT32 i32Width // @8
	IMG_INT32 i32Height // @c
	struct OVGDirtyRect_Tag* psNext // @10
}

typedef struct OVGDirtyRect_Tag OVGDirtyRect

struct OVGFRect_TAG {
	IMG_FLOAT fX0 // @0
	IMG_FLOAT fY0 // @4
	IMG_FLOAT fX1 // @8
	IMG_FLOAT fY1 // @c
}

typedef struct OVGFRect_TAG OVGFRect

struct OVGTransMatrixRec {
	IMG_FLOAT[3] afMatrix // @0
}

typedef struct OVGTransMatrixRec OVGTransMatrix

struct OVGViewPort_TAG {
	IMG_FLOAT fXOffset // @0
	IMG_FLOAT fXScale // @4
	IMG_FLOAT fYOffset // @8
	IMG_FLOAT fYScale // @c
	IMG_FLOAT fZOffset // @10
	IMG_FLOAT fZScale // @14
}

typedef struct OVGViewPort_TAG OVGViewport

struct OVGColour_TAG {
	IMG_FLOAT fRed // @0
	IMG_FLOAT fGreen // @4
	IMG_FLOAT fBlue // @8
	IMG_FLOAT fAlpha // @c
}

typedef struct OVGColour_TAG OVGColour

struct OVGPixelImage_TAG {
	OVGRect sSrcRect // @0
	OVGRect sDstRect // @10
}

typedef struct OVGPixelImage_TAG OVGPixelImage

struct OVGDeviceAllocationRec {
	PVRSRV_CLIENT_MEM_INFO* psMemInfo // @0
}

typedef struct OVGDeviceAllocationRec OVGDeviceAllocation

struct OVGMemInstanceRec {
	FRMFrameResource sResource // @0
	FRMFrameResourceManager* psMgr // @c
	OVGDeviceAllocation sDeviceMem // @10
	IMG_UINT32 ui32AllocSize // @14
	IMG_UINT8* pui8SysMemBackup // @18
	struct OVGMemInstanceRec* psNext // @1c
	struct OVGMemInstanceRec* psLast // @20
	struct OVGMemInstanceRec* psLarger // @24
	struct OVGMemInstanceRec* psSmaller // @28
	struct OVGMemInstanceRec* psParent // @2c
	struct OVGMemInstanceRec** ppsParentsCurrentMem // @30
	EGLImage* psEGLImageSource // @34
	EGLImage* psEGLImageTarget // @38
}

typedef struct OVGMemInstanceRec OVGMemInstance

struct OVGGeometryBuffer_TAG {
	OVGMemInstance* psCurrentMem // @0
	IMG_UINT32 ui32SizeInDwords // @4
}

typedef struct OVGGeometryBuffer_TAG OVGGeometryBuffer

typedef struct UCH_UseCodeHeapTAG UCH_UseCodeHeap

struct UCH_UseCodeHeapTAG {
	UCH_CodeHeapType eType // @0
	PVRSRV_DEV_DATA* ps3DDevData // @4
	PVRSRV_CLIENT_MEM_INFO* psCodeMemory // @8
	UCH_UseCodeBlock* psFreeBlockList // @c
	IMG_INT32 i32AllocationsNotDeallocated // @10
	IMG_HANDLE hHeapAllocator // @14
	IMG_BOOL bDirtySinceLastTAKick // @18
}

struct UCH_UseCodeBlockTAG {
	UCH_UseCodeHeap* psHeap // @0
	PVRSRV_CLIENT_MEM_INFO* psCodeMemory // @4
	IMG_DEV_VIRTADDR sCodeAddress // @8
	IMG_UINT8* pui8LinAddress // @c
	IMG_UINT32 ui32Size // @10
	struct UCH_UseCodeBlockTAG* psNext // @14
	IMG_VOID* pvClientData // @18
}

typedef struct UCH_UseCodeBlockTAG UCH_UseCodeBlock

enum undefined {
	UCH_USE_CODE_HEAP_TYPE = 1; //0x1
	UCH_PDS_CODE_HEAP_TYPE = 2; //0x2
}

typedef enum undefined UCH_CodeHeapType

struct OVGIndexBatchRec {
	OVGGeometryBuffer* psIndexBuffer // @0
	IMG_UINT32 ui32GeometryType // @4
	IMG_UINT32 ui32NumIndices // @8
	IMG_UINT32 ui32FirstVertex // @c
	IMG_BOOL bUses16BitIndices // @10
}

typedef struct OVGIndexBatchRec OVGIndexBatch

struct OVGPrimitiveRec {
	OVGGeometryBuffer* psVertexBuffer // @0
	IMG_UINT32 ui32NumVertices // @4
	IMG_INT32 i32SizeOfVertex // @8
	IMG_INT32 i32NumBatches // @c
	IMG_INT32 i32FreeBatches // @10
	OVGIndexBatch* asIndexBatches // @14
	IMG_BOOL bUses32BitStaticIndices // @18
	IMG_DEV_VIRTADDR uiIdxAddr // @1c
}

typedef struct OVGPrimitiveRec OVGPrimitive

typedef struct OVGImage_TAG OVGImage

struct OVGImage_TAG {
	VGHandleType vgHandleType // @0
	VGImageFormat eRequestedFormat // @4
	IMG_UINT32 ui32AllowedQuality // @8
	IMG_UINT32 ui32BytesPerPixel // @c
	IMG_UINT32 ui32StrideInBytes // @10
	IMG_UINT32 ui32WidthInPixels // @14
	IMG_UINT32 ui32HeightInPixels // @18
	IMG_UINT32 ui32ImageFlags // @1c
	OVGImage* psParentImage // @20
	OVGImage* psFirstChild // @24
	OVGImage* psNextSibling // @28
	IMG_UINT32 ui32XOffsetInPixels // @2c
	IMG_UINT32 ui32YOffsetInPixels // @30
	OVGTexture* psTexture // @34
	OVGImage* psNextImage // @38
	OVGPixelImage* psPixelImage // @3c
	EGLClientBuffer* phClientBuffer // @40
	OVGPixelShader* psLastPixelShader // @44
	OVGVertexShader* psLastShader // @48
	OVGVertexShader* psLastSetPixelShader // @4c
	OVGFRect sImageBoundingRect // @50
	OVGRadialParameters* psCachedImageRadialParams // @60
	OVGVertexShader* psLastRadialPaintShader // @64
	IMG_UINT32 ui32RefCount // @68
}

struct OVGUSEPixelProgramTokens_TAG {
	IMG_UINT32 ui32PipelineControlToken // @0
	IMG_UINT32 ui32PixelFormatDataToken // @4
	IMG_UINT32 ui32PrimaryAttributesRequired // @8
	IMG_UINT32 ui32SecondaryAttributesRequired // @c
	IMG_UINT32 ui32TemporariesRequired // @10
	IMG_UINT32 ui32OutputsRequired // @14
	IMG_UINT32 ui32MaxPDSTaskSize // @18
	IMG_UINT32 ui32MaxUSETaskSize // @1c
	IMG_UINT32 ui32PixelSize // @20
}

typedef struct OVGUSEPixelProgramTokens_TAG OVGUSEPixelProgramTokens

struct OVGUSEVertexProgramTokens_TAG {
	IMG_UINT32 ui32VertexShaderTokens // @0
	IMG_UINT32 ui32PrimaryAttributesRequired // @4
	IMG_UINT32 ui32SecondaryAttributesRequired // @8
	IMG_UINT32 ui32TemporariesRequired // @c
	IMG_UINT32 ui32OutputsRequired // @10
	IMG_UINT32 ui32MaxInputInstances // @14
	IMG_UINT32 ui32MaxVerticesInOutputPartition // @18
}

typedef struct OVGUSEVertexProgramTokens_TAG OVGUSEVertexProgramTokens

struct OVGPixelShader_TAG {
	UCH_UseCodeBlock* psPhase0 // @0
	UCH_UseCodeBlock* psPhase1 // @4
	UCH_UseCodeBlock* psPhase2 // @8
	UCH_UseCodeBlock* psPrimaryPDS // @c
	PDS_PIXEL_SHADER_PROGRAM sPDSProgramDescriptor // @10
	PDS_TEXTURE_IMAGE_UNIT[21] asTextureImageUnits // @428
	OVGUSEPixelProgramTokens sTokens // @524
}

typedef struct OVGPixelShader_TAG OVGPixelShader

struct OVGVertexShader_TAG {
	UCH_UseCodeBlock* psPhase0 // @0
	UCH_UseCodeBlock* psPhase1 // @4
	UCH_UseCodeBlock* psPhase2 // @8
	IMG_DEV_VIRTADDR uVertexDataAddr // @c
	IMG_UINT32 ui32PaintColour // @10
	IMG_UINT32 ui32PDSProgIndex // @14
	IMG_UINT32[3] aui32USETaskControl // @18
	OVGUSEVertexProgramTokens sTokens // @24
}

typedef struct OVGVertexShader_TAG OVGVertexShader

struct OVGStaticProgramCache_TAG {
	UCH_UseCodeBlock*[26] apsMTEStateCopyUSECodeBlocks // @0
	UCH_UseCodeBlock* psDepthClearVertexUSECodeBlock // @68
	UCH_UseCodeBlock* psDepthClearPixelUSECodeBlock // @6c
	UCH_UseCodeBlock* psClearVertexUSECodeBlock // @70
	UCH_UseCodeBlock* psClearPixelUSECodeBlock // @74
	UCH_UseCodeBlock* psScissorVertexCodeBlock // @78
	UCH_UseCodeBlock* psAccumVertexCodeBlock // @7c
	UCH_UseCodeBlock* psLoadSACodeBlock // @80
	UCH_UseCodeBlock* psHWBGOPixelUSECodeBlock // @84
	UCH_UseCodeBlock* psPixelEventUSECodeBlock // @88
	UCH_UseCodeBlock* psPixelShaderDummySecondaryPDS // @8c
	UCH_UseCodeBlock*[4] psVertexShaderPrimaryPDS // @90
	UCH_UseCodeBlock*[4] apsCodeBlockHashTable // @a0
	OVGDeviceAllocation sDummyVertexUSECode // @10a0
	OVGDeviceAllocation sDummyFragmentUSECode // @10a4
	OVGVertexShader* psStencilShader // @10a8
	UCH_UseCodeBlock*[6] psMaskOpFragmentUSECode // @10ac
	UCH_UseCodeBlock*[5] psMaskOpFragmentPixLoadUSECode // @10c4
}

typedef struct OVGStaticProgramCache_TAG OVGStaticProgramCache

struct OVGHWCtrlWords_TAG {
		struct {
		IMG_UINT32 ui32StateChanged // @0
		IMG_UINT32[3] ui32ISPCtlFF // @4
		IMG_UINT32[3] ui32ISPCtlBF // @10
		IMG_UINT32[3] ui32PDSState // @1c
		IMG_UINT32[2] ui32RGNClip // @28
		IMG_UINT32[6] ui32Viewport // @30
		IMG_UINT32 ui32TAWrapCtl // @48
		IMG_UINT32 ui32USSEOutSelect // @4c
		IMG_UINT32 ui32TAWClamp // @50
		IMG_UINT32 ui32MTECtrl // @54
		IMG_UINT32 ui32TexSize // @58
		IMG_UINT32 ui32TexFloat // @5c
	} MTE // @0
		struct {
		IMG_UINT32 ui32DevAddr // @0
		IMG_UINT32 ui32DataSize // @4
	} SAVertexShader // @60
		struct {
		IMG_UINT32 ui32BlockHeader // @0
		IMG_UINT32 ui32VDMIndex1Base // @4
		IMG_UINT32 ui32VDMIndex2Offset // @8
		IMG_UINT32 ui32VDMIndex3WrapCount // @c
		IMG_UINT32 ui32VDMIndex4VTXBaseAddress // @10
		IMG_UINT32 ui32VDMIndex5VTXResourceReq // @14
		IMG_UINT32 ui32VDMIndex6Complex1 // @18
		IMG_UINT32 ui32VDMIndex7Complex2 // @1c
	} VDM // @68
}

typedef struct OVGHWCtrlWords_TAG OVGHWCtrlWords

struct OVGHWContext_TAG {
	PVRSRV_DEV_DATA* ps3DDevData // @0
	SrvSysContext* psSysContext // @4
	SGX_KICKTA sKickTA // @8
	OVGHWCtrlWords sCurState // @16c
	OVGHWCtrlWords sReqState // @1f4
	OVGViewport sViewport // @27c
	IMG_UINT32 ui32CurrentOutputStateBlockUSEPipe // @294
}

typedef struct OVGHWContext_TAG OVGHWContext

struct OVGTextureRec {
	IMG_UINT32 ui32Flags // @0
	IMG_UINT32 ui32OwnerUseCount // @4
	IMG_UINT32 ui32NumLevels // @8
	VGImageFormat eFormat // @c
	const struct OVGPixelFormatInfo_TAG* psInternalFormat // @10
	IMG_UINT32 ui32Width // @14
	IMG_UINT32 ui32Height // @18
	IMG_UINT32 ui32InternalStride // @1c
	IMG_UINT32[12] aui32MipLevelWidths // @20
	IMG_UINT32[12] aui32MipLevelHeights // @50
	IMG_UINT32[12] aui32MipLevelBytesOffsets // @80
	IMG_UINT32 ui32AllowedQuality // @b0
	IMG_UINT32 ui32InternalAllocSize // @b4
	IMG_UINT32 ui32TimeLastModified // @b8
	OVGMemInstance* psCurrentMem // @bc
	struct OVGTextureRec* psNext // @c0
	struct OVGTextureRec* psLast // @c4
	struct OVGTextureRec* psOVGTwiddleQueueNext // @c8
	void* pfnReadBackData // @cc
	void* pfnTextureTwiddle // @d0
}

struct OVGPixelFormatInfo_TAG {
	OVG_PIXELFORMAT eFormat // @0
	OVG_COLOUR_SPACE_TYPE eColourType // @4
	IMG_BOOL bPreMultiplied // @8
	IMG_BOOL bNoReplication // @c
	IMG_UINT32 ui32BytesPerPixel // @10
	IMG_UINT32 ui32RMask // @14
	IMG_UINT32 ui32GMask // @18
	IMG_UINT32 ui32BMask // @1c
	IMG_UINT32 ui32AMask // @20
	IMG_UINT32 ui32RShift // @24
	IMG_UINT32 ui32GShift // @28
	IMG_UINT32 ui32BShift // @2c
	IMG_UINT32 ui32AShift // @30
	IMG_FLOAT fMaxRedVal // @34
	IMG_FLOAT fMaxGreenVal // @38
	IMG_FLOAT fMaxBlueVal // @3c
	IMG_FLOAT fMaxAlphaVal // @40
	IMG_BOOL bForceAlphaToMax // @44
	IMG_BOOL bUseRedAsAlpha // @48
}

void

void

typedef struct OVGTextureRec OVGTexture

struct OVGRadialParametersRec {
	IMG_FLOAT fRadialCentreX // @0
	IMG_FLOAT fRadialCentreY // @4
	IMG_FLOAT fRadialFocusX // @8
	IMG_FLOAT fRadialFocusY // @c
	IMG_FLOAT fRadialRadius // @10
	IMG_FLOAT fRadialMinX // @14
	IMG_FLOAT fRadialMinY // @18
	IMG_FLOAT fRadialMaxX // @1c
	IMG_FLOAT fRadialMaxY // @20
	OVGTransMatrix sLastPaint2UserMatrix // @24
	OVGTransMatrix sFinalPaint2UserTransform // @48
	OVGPrimitive* psPrim // @6c
}

typedef struct OVGRadialParametersRec OVGRadialParameters

enum undefined {
	VG_IMPROPER_HANDLE = 0; //0x0
	VG_PATH_HANDLE = 1; //0x1
	VG_PAINT_HANDLE = 2; //0x2
	VG_IMAGE_HANDLE = 3; //0x3
	VG_FONT_HANDLE = 4; //0x4
	VG_MASKLAYER_HANDLE = 5; //0x5
}

typedef enum undefined VGHandleType

struct OVGStrokeParamsRec {
	IMG_FLOAT fStrokeLineWidth // @0
	VGCapStyle u32StrokeCapStyle // @4
	VGJoinStyle u32StrokeJoinStyle // @8
	IMG_FLOAT fStrokeMiterLimit // @c
	IMG_FLOAT* pfStrokeDashPattern // @10
	IMG_FLOAT fStrokeDashPatternLength // @14
	IMG_UINT u32StrokeDashPatternCount // @18
	IMG_FLOAT fStrokeDashPhase // @1c
	IMG_BOOL bAreStrokeParamsDirty // @20
	IMG_BOOL bStrokeDashPhaseReset // @24
}

typedef struct OVGStrokeParamsRec OVGStrokeParams

struct OVGPaintRec {
	VGHandleType vgHandleType // @0
	VGPaintType ePaintType // @4
	IMG_FLOAT fPaintColorRed // @8
	IMG_FLOAT fPaintColorGreen // @c
	IMG_FLOAT fPaintColorBlue // @10
	IMG_FLOAT fPaintColorAlpha // @14
	IMG_UINT32 ui32PaintColour // @18
	VGColorRampSpreadMode ePaintColourRampSpreadMode // @1c
	IMG_FLOAT* pfPaintColourRampStops // @20
	IMG_UINT32 ui32PaintColourRampStopCount // @24
	IMG_FLOAT[4] afPaintLinearGradient // @28
	IMG_FLOAT[5] afPaintRadialGradient // @38
	VGTilingMode ePaintPatternTillingMode // @4c
	IMG_BOOL bColourRampPreMultiplied // @50
	IMG_UINT32 ui32FinalSolidColour // @54
	OVGImage* psPatternImage // @58
	IMG_BOOL bIsRampDirty // @5c
	OVGTexture* psRampTexture // @60
	IMG_UINT32 ui32PaintUVTransformDirtyFlags // @64
	OVGTransMatrix* psMatrixUVTransformLinear // @68
	OVGTransMatrix* psMatrixUVTransformPattern // @6c
	OVGTransMatrix* psPathRadialTexturePositioningMatrix // @70
	OVGPixelShader* psPaintPixelShader // @74
	OVGPixelShader* psRadialGeomPixelShader // @78
	struct OVGPaintRec* psNextPaint // @7c
	IMG_UINT32 ui32RefCount // @80
}

typedef struct OVGPaintRec OVGPaint

struct OVGMaskDefRec {
	IMG_UINT u32DummyMask // @0
}

typedef struct OVGMaskDefRec OVGMaskDef

struct OVGSegmentBlockRec {
	IMG_UINT32 ui32TotalDataAllocationInBytes // @0
	IMG_UINT32 ui32NoOfSegmentCmd // @4
	struct OVGSegmentBlockRec* psNextSegmentBlock // @8
	IMG_UINT8[1] aui8SegmentData // @c
}

typedef struct OVGSegmentBlockRec OVGSegmentBlock

struct OVGPathRec {
	VGHandleType vgHandleType // @0
	IMG_INT vgPathFormat // @4
	VGPathDatatype vgPathDatatype // @8
	IMG_FLOAT vgPathScale // @c
	IMG_FLOAT vgPathBias // @10
	IMG_UINT vgPathCapabilities // @14
	OVGSegmentBlock* vgPathSegmentBlock // @18
	struct OVGPathRec* psNextPath // @1c
	IMG_UINT32 ui32PathDirtyFlags // @20
	OVGStrokeParams sLastStrokeParams // @24
	IMG_BOOL bIsConvex // @4c
	IMG_FLOAT fUsedFillPathTransformMetric // @50
	IMG_FLOAT fUsedStrokePathTransformMetric // @54
	OVGFRect sStrokeBoundingRect // @58
	OVGFRect sFillBoundingRect // @68
	OVGRadialParameters* psCachedFillRadialParams // @78
	OVGRadialParameters* psCachedStrokeRadialParams // @7c
	OVGPrimitive* psPathGeometry // @80
	VGFillRule eFillRuleUsed // @84
	IMG_FLOAT** pfSegmentStartVertex // @88
	IMG_UINT ui32SSVTableSegmentCount // @8c
	OVGPrimitive* psStrokedPathGeometry // @90
	OVGPrimitive* psStrokeCuspGeometry // @94
	OVGPrimitive*[2] psStrokeJoinGeometry // @98
	OVGPrimitive*[2] psStrokeCapsGeometry // @a0
	OVGPrimitive* psDashedPathGeometry // @a8
	OVGPrimitive* psDashedCuspGeometry // @ac
	OVGPrimitive*[2] psDashedJoinGeometry // @b0
	OVGPrimitive*[2] psDashedCapsGeometry // @b8
	OVGVertexShader* psLastStrokeShader // @c0
	OVGVertexShader* psLastFillShader // @c4
	OVGVertexShader* psLastRadialFillShader // @c8
	OVGVertexShader* psLastRadialStrokeShader // @cc
	IMG_UINT32 ui32RefCount // @d0
}

typedef struct OVGPathRec OVGPath

struct OVGFont_TAG {
	VGHandleType vgHandleType // @0
	IMG_UINT32 ui32NumGlyphs // @4
	IMG_UINT32[256] ui32GlyphIndexHashTable // @8
	struct OVGFont_TAG* psNextFont // @408
	IMG_UINT32 ui32RefCount // @40c
}

typedef struct OVGFont_TAG OVGFont

struct OVGMaskLayer_TAG {
	VGHandleType vgHandleType // @0
	OVGTexture* psMaskLayerTexture // @4
	IMG_UINT32 ui32RefCount // @8
	struct OVGMaskLayer_TAG* psNextMaskLayer // @c
}

typedef struct OVGMaskLayer_TAG OVGMaskLayer

struct OVGAppHintsRec {
	IMG_UINT32 ui32DefaultVDMBufferSize // @0
	IMG_UINT32 ui32DefaultPDSVertBufferSize // @4
	IMG_UINT32 ui32DefaultPDSFragBufferSize // @8
	IMG_UINT32 ui32DefaultSpecObjBufferSize // @c
}

typedef struct OVGAppHintsRec OVGAppHints

struct OVGClearRec {
	IMG_BOOL bClearValid // @0
	IMG_UINT32 ui32ClearColour // @4
}

typedef struct OVGClearRec OVGFSClear

struct OVGRootRec {
	OVGPath*[256] apsPathHashTable // @0
	OVGPaint*[256] apsPaintHashTable // @400
	OVGImage*[256] apsImageHashTable // @800
	OVGFont*[256] apsFontHashTable // @c00
	OVGMaskLayer*[256] apsMaskLayerHashTable // @1000
	OVGPaint* psDefaultPaint // @1400
	IMG_UINT32 ui32ReferenceCount // @1404
	PVRSRV_RES_HANDLE hStateRootResource // @1408
	FRMFrameResourceManager sTexHeapFRM // @1410
	PVRSRV_RES_HANDLE hTexFRMResource // @1448
	FRMFrameResourceManager sVtxHeapFRM // @1450
	PVRSRV_RES_HANDLE hVtxFRMResource // @1488
	OVGMemInstance* psRedundantMemList // @1490
	OVGAppHints sAppHints // @1494
	CircularBuffer*[7] apsBuffers // @14a4
	UCH_UseCodeHeap* psVertexCodeHeap // @14c0
	UCH_UseCodeHeap* psFragmentCodeHeap // @14c4
	UCH_UseCodeHeap* psPDSFragmentCodeHeap // @14c8
	UCH_UseCodeHeap* psPDSVertexCodeHeap // @14cc
	OVGContext* psContextChain // @14d0
	OVGDeviceAllocation s16BitIndexBuffer // @14d4
	OVGDeviceAllocation s32BitIndexBuffer // @14d8
	OVGDeviceAllocation sLinearToNonLinearTable // @14dc
	OVGDeviceAllocation sNonLinearToLinearTable // @14e0
	OVGStaticProgramCache sStaticProgramCache // @14e4
}

typedef struct OVGRootRec OVGRoot

struct OVGScratchRec {
	IMG_FLOAT* pfBezierAllocOnceScratch // @0
	IMG_UINT* pui32BezierLengthsScratch // @4
	VGfloat* pfRecTessFillScratch // @8
	IMG_BYTE* pubTwiddleScratch // @c
	IMG_UINT uiTwiddleScratchSize // @10
	IMG_FLOAT* pfSwTriWrapperInputScratch // @14
	IMG_FLOAT* pfRadialGradientGeometryScratch // @18
	IMG_FLOAT* pfFillGeometryScratch // @1c
}

typedef struct OVGScratchRec OVGScratch

struct OVGStateRec {
	OVGRoot* psCurrentRoot // @0
	VGMatrixMode eMatrixMode // @4
	OVGTransMatrix sMatrixPathUserToSurface // @8
	OVGTransMatrix sMatrixImageUserToSurface // @2c
	OVGTransMatrix sMatrixFillPaintToUser // @50
	OVGTransMatrix sMatrixStrokePaintToUser // @74
	OVGTransMatrix sMatrixGlyphUserToSurface // @98
	IMG_FLOAT[2] fGlyphOrigin // @bc
	IMG_BOOL bColorTransformEnable // @c4
	IMG_FLOAT[8] fColorTransform // @c8
	VGMaskOperation eMaskOpRTM // @e8
	OVGTransMatrix sMatrixInverseFillPaintToUser // @ec
	OVGTransMatrix sMatrixInverseStrokePaintToUser // @110
	IMG_BOOL bFillPaintToUserDirty // @134
	IMG_BOOL bStrokePaintToUserDirty // @138
	OVGTransMatrix* psMatrixGradientPaintToUser // @13c
	IMG_BOOL bRenderingRadialGeometry // @140
	VGFillRule eFillRule // @144
	VGImageQuality eImageQuality // @148
	VGRenderingQuality eRenderQuality // @14c
	VGBlendMode eBlendMode // @150
	VGImageMode eImageMode // @154
	IMG_UINT32 ui32ScissorRectCount // @158
	IMG_INT32* pi32ScissorRects // @15c
	OVGRect sScissorBoundingBox // @160
	OVGStrokeParams sStrokeParams // @170
	OVGColour sfTileFillColour // @198
	OVGColour sClearColour // @1a8
	IMG_BOOL bMaskEnable // @1b8
	IMG_BOOL bScissorEnable // @1bc
	VGPixelLayout ePixelLayout // @1c0
	VGPixelLayout eScreenLayout // @1c4
	IMG_BOOL bFilterFormatLinear // @1c8
	IMG_BOOL bfilterFormatPreMultiplied // @1cc
	OVGMaskDef sMaskDefs // @1d0
	IMG_UINT32 ui32FilterChannelMask // @1d4
	VGErrorCode uErrorCode // @1d8
	OVGScratch sOVGScratch // @1dc
	IMG_BOOL bOVGDriverCacheEnabled // @1fc
	OVGPaint* psFillPaint // @200
	OVGPaint* psDefaultPaint // @204
	OVGPaint* psStrokePaint // @208
	OVGPaint* psActivePaint // @20c
	IMG_BOOL bFillPaintIsValid // @210
	IMG_BOOL bStrokePaintIsValid // @214
	OVGPixelShader* psLastSetPixelShader // @218
	OVGPixelShader** ppsActivePixelShader // @21c
	IMG_FLOAT* pfGradientUnitCirclePositions // @220
	OVGUSEVertexProgramTokens sCurrentVertexTokens // @224
	OVGUSEPixelProgramTokens sCurrentPixelTokens // @240
}

typedef struct OVGStateRec OVGState

enum undefined {
	OVG_PIXEL_FORMAT_sRGBX_8888 = 300; //0x12c
	OVG_PIXEL_FORMAT_sRGBA_8888 = 301; //0x12d
	OVG_PIXEL_FORMAT_sRGBA_8888_PRE = 302; //0x12e
	OVG_PIXEL_FORMAT_sRGB_565 = 303; //0x12f
	OVG_PIXEL_FORMAT_sRGBA_5551 = 304; //0x130
	OVG_PIXEL_FORMAT_sRGBA_4444 = 305; //0x131
	OVG_PIXEL_FORMAT_sL_8 = 306; //0x132
	OVG_PIXEL_FORMAT_lRGBX_8888 = 307; //0x133
	OVG_PIXEL_FORMAT_lRGBA_8888 = 308; //0x134
	OVG_PIXEL_FORMAT_lRGBA_8888_PRE = 309; //0x135
	OVG_PIXEL_FORMAT_lL_8 = 310; //0x136
	OVG_PIXEL_FORMAT_INTERNAL_lL_8 = 311; //0x137
	OVG_PIXEL_FORMAT_INTERNAL_sL_8 = 312; //0x138
	OVG_PIXEL_FORMAT_A_8 = 313; //0x139
	OVG_PIXEL_FORMAT_INTERNAL_A_8_PRE = 314; //0x13a
	OVG_PIXEL_FORMAT_INTERNAL_A_8 = 315; //0x13b
	OVG_PIXEL_FORMAT_BW_1 = 316; //0x13c
	OVG_PIXEL_FORMAT_INTERNAL_BW_1 = 317; //0x13d
	OVG_PIXEL_FORMAT_lARGB_4444_PRE = 318; //0x13e
	OVG_PIXEL_FORMAT_lARGB_4444 = 319; //0x13f
	OVG_PIXEL_FORMAT_sARGB_4444_PRE = 320; //0x140
	OVG_PIXEL_FORMAT_sARGB_4444 = 321; //0x141
	OVG_PIXEL_FORMAT_lARGB_8888_PRE = 322; //0x142
	OVG_PIXEL_FORMAT_lARGB_8888 = 323; //0x143
	OVG_PIXEL_FORMAT_sARGB_8888_PRE = 324; //0x144
	OVG_PIXEL_FORMAT_sARGB_8888 = 325; //0x145
	OVG_PIXEL_FORMAT_lARGB_1555_PRE = 326; //0x146
	OVG_PIXEL_FORMAT_lARGB_1555 = 327; //0x147
	OVG_PIXEL_FORMAT_sARGB_1555_PRE = 328; //0x148
	OVG_PIXEL_FORMAT_sARGB_1555 = 329; //0x149
	OVG_PIXEL_FORMAT_lRGB_565 = 330; //0x14a
	OVG_PIXEL_FORMAT_lRGB_565_PRE = 331; //0x14b
	OVG_PIXEL_FORMAT_sRGB_565_PRE = 332; //0x14c
	OVG_PIXEL_FORMAT_sXRGB_8888 = 333; //0x14d
	OVG_PIXEL_FORMAT_lXRGB_8888 = 334; //0x14e
	OVG_PIXEL_FORMAT_sBGRX_8888 = 335; //0x14f
	OVG_PIXEL_FORMAT_lBGRX_8888 = 336; //0x150
	OVG_PIXEL_FORMAT_sXBGR_8888 = 337; //0x151
	OVG_PIXEL_FORMAT_lXBGR_8888 = 338; //0x152
	OVG_PIXEL_FORMAT_lABGR_8888 = 339; //0x153
	OVG_PIXEL_FORMAT_lABGR_8888_PRE = 340; //0x154
	OVG_PIXEL_FORMAT_sABGR_8888 = 341; //0x155
	OVG_PIXEL_FORMAT_sABGR_8888_PRE = 342; //0x156
	OVG_PIXEL_FORMAT_lBGRA_8888 = 343; //0x157
	OVG_PIXEL_FORMAT_lBGRA_8888_PRE = 344; //0x158
	OVG_PIXEL_FORMAT_sBGRA_8888 = 345; //0x159
	OVG_PIXEL_FORMAT_sBGRA_8888_PRE = 346; //0x15a
	OVG_PIXEL_FORMAT_sBGR_565 = 347; //0x15b
	OVG_PIXEL_FORMAT_sBGRA_5551 = 348; //0x15c
	OVG_PIXEL_FORMAT_sABGR_1555 = 349; //0x15d
	OVG_PIXEL_FORMAT_sABGR_4444 = 350; //0x15e
	OVG_PIXEL_FORMAT_sBGRA_4444 = 351; //0x15f
	OVG_PIXEL_FORMAT_A_1 = 352; //0x160
	OVG_PIXEL_FORMAT_INTERNAL_A_1 = 353; //0x161
	OVG_PIXEL_FORMAT_A_4 = 354; //0x162
	OVG_PIXEL_FORMAT_INTERNAL_A_4 = 355; //0x163
	OVG_PIXEL_FORMAT_INTERNAL_FLOAT = 400; //0x190
}

typedef enum undefined OVG_PIXELFORMAT

enum undefined {
	OVG_COLOUR_SPACE_RGB_LINEAR = 0; //0x0
	OVG_COLOUR_SPACE_RGB_NON_LINEAR = 1; //0x1
	OVG_COLOUR_SPACE_GREYSCALE_LINEAR = 2; //0x2
	OVG_COLOUR_SPACE_GREYSCALE_NON_LINEAR = 3; //0x3
	OVG_COLOUR_SPACE_ALPHA = 4; //0x4
}

typedef enum undefined OVG_COLOUR_SPACE_TYPE

// external function
void OVGSetError(
	OVGContext* pGC
	VGErrorCode code
	)
{
}


// external function
void OVGSetError(
	OVGContext* pGC
	VGErrorCode code
	)
{
}


// external function PC=<0x13124;0x13128>
void vgFlush(
	)
{
	OVGContext* pGC
}


// external function PC=<0x13128;0x13170>
void vgFinish(
	)
{
	OVGContext* pGC
	{
		IMG_UINT32 ui32Flags
	}
}


// external function PC=<0x13170;0x132d4>
void vgSetParameteri(
	VGHandle object
	VGint paramType
	VGint value
	)
{
	VGHandleType currentHandle
	OVGContext* pGC
	ErrorExit: \\ label @0x13274
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		OVGPaint* psPaint
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

		{
			VGColorRampSpreadMode eMode
		}
		{
			VGTilingMode eMode
		}
		{
			VGPaintType eType
		}
	}
}


// external function PC=<0x132d4;0x13458>
void vgSetParameterf(
	VGHandle object
	VGint paramType
	VGfloat value
	)
{
	VGHandleType currentHandle
	OVGContext* pGC
	ErrorExit: \\ label @0x133e0
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		OVGPaint* psPaint
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

		{
			VGColorRampSpreadMode eMode
		}
		{
			VGTilingMode eMode
		}
		{
			VGPaintType eType
		}
	}
}


// external function PC=<0x13458;0x138ec>
void vgSetf(
	VGParamType type
	VGfloat value
	)
{
	OVGContext* pGC
	ErrorExit: \\ label @0x13698
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		VGFillRule eNewRule
	}
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		VGMatrixMode eNewMode
	}
	{
		VGImageQuality eQuality
	}
	{
		VGRenderingQuality eQuality
	}
	{
		VGBlendMode eMode
	}
	{
		VGImageMode eMode
	}
	{
		VGCapStyle eStyle
	}
	{
		VGJoinStyle eStyle
	}
	{
		IMG_BOOL bSetScissorEnable
	}
	{
		VGPixelLayout eLayout
	}
	{
		VGPixelLayout eLayout
	}
}


// function
IMG_BOOL OVGCheckPtrAligned(
	const IMG_UINT32* ui32Address
	IMG_UINT32 ui32Alignment
	)
{
}


// external function PC=<0x138ec;0x13ee4>
void vgSetfv(
	VGParamType type
	VGint count
	const VGfloat* values
	)
{
	IMG_INT i
	OVGContext* pGC
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		IMG_FLOAT fPatternValue
	}
	{
		OVGRect* psBBRect
		{
			OVGRect sRect
		}
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

	}
}


// external function PC=<0x13ee4;0x1430c>
void vgSeti(
	VGParamType type
	VGint value
	)
{
	OVGContext* pGC
	ErrorExit: \\ label @0x1411c
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		VGFillRule eNewRule
	}
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		VGMatrixMode eNewMode
	}
	{
		VGImageQuality eQuality
	}
	{
		VGRenderingQuality eQuality
	}
	{
		VGBlendMode eMode
	}
	{
		VGImageMode eMode
	}
	{
		VGCapStyle eStyle
	}
	{
		VGJoinStyle eStyle
	}
	{
		VGPixelLayout eLayout
	}
	{
		VGPixelLayout eLayout
	}
}


// external function PC=<0x1430c;0x147c8>
void vgSetParameteriv(
	VGHandle object
	VGint paramType
	VGint count
	const VGint* values
	)
{
	IMG_INT i
	VGHandleType currentHandle
	OVGContext* pGC
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		OVGPaint* psPaint
		{
			IMG_FLOAT* pfValues
			// inlined
			// external function
			void OVGSetError(
				OVGContext* pGC
				VGErrorCode code
				)
			{
			}

		}
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

	}
}


// external function PC=<0x147c8;0x14c4c>
void vgSetParameterfv(
	VGHandle object
	VGint paramType
	VGint count
	const VGfloat* values
	)
{
	IMG_INT i
	VGHandleType currentHandle
	OVGContext* pGC
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		OVGPaint* psPaint
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

	}
}


// external function PC=<0x14c4c;0x151cc>
void vgSetiv(
	VGParamType type
	VGint count
	const VGint* values
	)
{
	IMG_INT i
	OVGContext* pGC
	// inlined
	// external function
	void OVGSetError(
		OVGContext* pGC
		VGErrorCode code
		)
	{
	}

	{
		IMG_FLOAT fPatternValue
	}
	{
		OVGRect* psBBRect
		{
			OVGRect* psRect
		}
		// inlined
		// external function
		void OVGSetError(
			OVGContext* pGC
			VGErrorCode code
			)
		{
		}

	}
}


const IMG_UINT32[19] g_pui32PDSXYPri

const IMG_UINT32[21] g_pui32PDSXYUVPri

const IMG_UINT32[26] g_pui32PDSXYUVCOLPri

const IMG_UINT32[20] g_pui32PDSXYCOLPri

const IMG_UINT32[35] g_pui32PDSVtxSec

struct _IO_FILE* stdin

struct _IO_FILE* stdout

