/*****************************************************************************\ Snes9x - Portable Super Nintendo Entertainment System (TM) emulator. This file is licensed under the Snes9x License. For further information, consult the LICENSE file in the root directory. \*****************************************************************************/ #ifndef CGMINI_H #define CGMINI_H #include #include "gl_core_3_1.h" #define CGENTRY __cdecl #define CGD3D9ENTRY __cdecl #define CGGLENTRY __cdecl #define CGD3D9DLL_API __declspec(dllimport) #define CGGL_API #define CG_API typedef struct _CGprogram *CGprogram; typedef struct _CGcontext *CGcontext; typedef struct _CGparameter *CGparameter; typedef enum { CG_NO_ERROR = 0, CG_COMPILER_ERROR = 1, CG_INVALID_PARAMETER_ERROR = 2, CG_INVALID_PROFILE_ERROR = 3, CG_PROGRAM_LOAD_ERROR = 4, CG_PROGRAM_BIND_ERROR = 5, CG_PROGRAM_NOT_LOADED_ERROR = 6, CG_UNSUPPORTED_GL_EXTENSION_ERROR = 7, CG_INVALID_VALUE_TYPE_ERROR = 8, CG_NOT_MATRIX_PARAM_ERROR = 9, CG_INVALID_ENUMERANT_ERROR = 10, CG_NOT_4x4_MATRIX_ERROR = 11, CG_FILE_READ_ERROR = 12, CG_FILE_WRITE_ERROR = 13, CG_NVPARSE_ERROR = 14, CG_MEMORY_ALLOC_ERROR = 15, CG_INVALID_CONTEXT_HANDLE_ERROR = 16, CG_INVALID_PROGRAM_HANDLE_ERROR = 17, CG_INVALID_PARAM_HANDLE_ERROR = 18, CG_UNKNOWN_PROFILE_ERROR = 19, CG_VAR_ARG_ERROR = 20, CG_INVALID_DIMENSION_ERROR = 21, CG_ARRAY_PARAM_ERROR = 22, CG_OUT_OF_ARRAY_BOUNDS_ERROR = 23, CG_CONFLICTING_TYPES_ERROR = 24, CG_CONFLICTING_PARAMETER_TYPES_ERROR = 25, CG_PARAMETER_IS_NOT_SHARED_ERROR = 26, CG_INVALID_PARAMETER_VARIABILITY_ERROR = 27, CG_CANNOT_DESTROY_PARAMETER_ERROR = 28, CG_NOT_ROOT_PARAMETER_ERROR = 29, CG_PARAMETERS_DO_NOT_MATCH_ERROR = 30, CG_IS_NOT_PROGRAM_PARAMETER_ERROR = 31, CG_INVALID_PARAMETER_TYPE_ERROR = 32, CG_PARAMETER_IS_NOT_RESIZABLE_ARRAY_ERROR = 33, CG_INVALID_SIZE_ERROR = 34, CG_BIND_CREATES_CYCLE_ERROR = 35, CG_ARRAY_TYPES_DO_NOT_MATCH_ERROR = 36, CG_ARRAY_DIMENSIONS_DO_NOT_MATCH_ERROR = 37, CG_ARRAY_HAS_WRONG_DIMENSION_ERROR = 38, CG_TYPE_IS_NOT_DEFINED_IN_PROGRAM_ERROR = 39, CG_INVALID_EFFECT_HANDLE_ERROR = 40, CG_INVALID_STATE_HANDLE_ERROR = 41, CG_INVALID_STATE_ASSIGNMENT_HANDLE_ERROR = 42, CG_INVALID_PASS_HANDLE_ERROR = 43, CG_INVALID_ANNOTATION_HANDLE_ERROR = 44, CG_INVALID_TECHNIQUE_HANDLE_ERROR = 45, CG_INVALID_PARAMETER_HANDLE_ERROR = 46, CG_STATE_ASSIGNMENT_TYPE_MISMATCH_ERROR = 47, CG_INVALID_FUNCTION_HANDLE_ERROR = 48, CG_INVALID_TECHNIQUE_ERROR = 49, CG_INVALID_POINTER_ERROR = 50, CG_NOT_ENOUGH_DATA_ERROR = 51, CG_NON_NUMERIC_PARAMETER_ERROR = 52, CG_ARRAY_SIZE_MISMATCH_ERROR = 53, CG_CANNOT_SET_NON_UNIFORM_PARAMETER_ERROR = 54, CG_DUPLICATE_NAME_ERROR = 55, CG_INVALID_OBJ_HANDLE_ERROR = 56, CG_INVALID_BUFFER_HANDLE_ERROR = 57, CG_BUFFER_INDEX_OUT_OF_RANGE_ERROR = 58, CG_BUFFER_ALREADY_MAPPED_ERROR = 59, CG_BUFFER_UPDATE_NOT_ALLOWED_ERROR = 60, CG_GLSLG_UNCOMBINED_LOAD_ERROR = 61 } CGerror; typedef enum { CG_UNKNOWN = 4096, CG_IN = 4097, CG_OUT = 4098, CG_INOUT = 4099, CG_MIXED = 4100, CG_VARYING = 4101, CG_UNIFORM = 4102, CG_CONSTANT = 4103, CG_PROGRAM_SOURCE = 4104, /* cgGetProgramString */ CG_PROGRAM_ENTRY = 4105, /* cgGetProgramString */ CG_COMPILED_PROGRAM = 4106, /* cgGetProgramString */ CG_PROGRAM_PROFILE = 4107, /* cgGetProgramString */ CG_GLOBAL = 4108, CG_PROGRAM = 4109, CG_DEFAULT = 4110, CG_ERROR = 4111, CG_SOURCE = 4112, CG_OBJECT = 4113, CG_COMPILE_MANUAL = 4114, CG_COMPILE_IMMEDIATE = 4115, CG_COMPILE_LAZY = 4116, CG_CURRENT = 4117, CG_LITERAL = 4118, CG_VERSION = 4119, /* cgGetString */ CG_ROW_MAJOR = 4120, CG_COLUMN_MAJOR = 4121, CG_FRAGMENT = 4122, /* cgGetProgramInput and cgGetProgramOutput */ CG_VERTEX = 4123, /* cgGetProgramInput and cgGetProgramOutput */ CG_POINT = 4124, /* Geometry program cgGetProgramInput */ CG_LINE = 4125, /* Geometry program cgGetProgramInput */ CG_LINE_ADJ = 4126, /* Geometry program cgGetProgramInput */ CG_TRIANGLE = 4127, /* Geometry program cgGetProgramInput */ CG_TRIANGLE_ADJ = 4128, /* Geometry program cgGetProgramInput */ CG_POINT_OUT = 4129, /* Geometry program cgGetProgramOutput */ CG_LINE_OUT = 4130, /* Geometry program cgGetProgramOutput */ CG_TRIANGLE_OUT = 4131, /* Geometry program cgGetProgramOutput */ CG_IMMEDIATE_PARAMETER_SETTING = 4132, CG_DEFERRED_PARAMETER_SETTING = 4133, CG_NO_LOCKS_POLICY = 4134, CG_THREAD_SAFE_POLICY = 4135, CG_FORCE_UPPER_CASE_POLICY = 4136, CG_UNCHANGED_CASE_POLICY = 4137, CG_IS_OPENGL_PROFILE = 4138, CG_IS_DIRECT3D_PROFILE = 4139, CG_IS_DIRECT3D_8_PROFILE = 4140, CG_IS_DIRECT3D_9_PROFILE = 4141, CG_IS_DIRECT3D_10_PROFILE = 4142, CG_IS_VERTEX_PROFILE = 4143, CG_IS_FRAGMENT_PROFILE = 4144, CG_IS_GEOMETRY_PROFILE = 4145, CG_IS_TRANSLATION_PROFILE = 4146, CG_IS_HLSL_PROFILE = 4147, CG_IS_GLSL_PROFILE = 4148, CG_IS_TESSELLATION_CONTROL_PROFILE = 4149, CG_IS_TESSELLATION_EVALUATION_PROFILE = 4150, CG_PATCH = 4152, /* cgGetProgramInput and cgGetProgramOutput */ CG_IS_DIRECT3D_11_PROFILE = 4153 } CGenum; typedef enum {} CGprofile; typedef enum {} CGresource; typedef enum { CG_UNKNOWN_TYPE = 0, CG_ARRAY = 2, CG_STRING = 1135, CG_STRUCT = 1, CG_TYPELESS_STRUCT = 3, CG_TEXTURE = 1137, CG_BUFFER = 1319, CG_UNIFORMBUFFER = 1320, CG_ADDRESS = 1321, CG_PIXELSHADER_TYPE = 1142, CG_PROGRAM_TYPE = 1136, CG_VERTEXSHADER_TYPE = 1141, CG_SAMPLER = 1143, CG_SAMPLER1D = 1065, CG_SAMPLER1DARRAY = 1138, CG_SAMPLER1DSHADOW = 1313, CG_SAMPLER2D = 1066, CG_SAMPLER2DARRAY = 1139, CG_SAMPLER2DMS = 1317, /* ARB_texture_multisample */ CG_SAMPLER2DMSARRAY = 1318, /* ARB_texture_multisample */ CG_SAMPLER2DSHADOW = 1314, CG_SAMPLER3D = 1067, CG_SAMPLERBUF = 1144, CG_SAMPLERCUBE = 1069, CG_SAMPLERCUBEARRAY = 1140, CG_SAMPLERRBUF = 1316, /* NV_explicit_multisample */ CG_SAMPLERRECT = 1068, CG_SAMPLERRECTSHADOW = 1315, CG_TYPE_START_ENUM = 1024, CG_BOOL = 1114, CG_BOOL1 = 1115, CG_BOOL2 = 1116, CG_BOOL3 = 1117, CG_BOOL4 = 1118, CG_BOOL1x1 = 1119, CG_BOOL1x2 = 1120, CG_BOOL1x3 = 1121, CG_BOOL1x4 = 1122, CG_BOOL2x1 = 1123, CG_BOOL2x2 = 1124, CG_BOOL2x3 = 1125, CG_BOOL2x4 = 1126, CG_BOOL3x1 = 1127, CG_BOOL3x2 = 1128, CG_BOOL3x3 = 1129, CG_BOOL3x4 = 1130, CG_BOOL4x1 = 1131, CG_BOOL4x2 = 1132, CG_BOOL4x3 = 1133, CG_BOOL4x4 = 1134, CG_CHAR = 1166, CG_CHAR1 = 1167, CG_CHAR2 = 1168, CG_CHAR3 = 1169, CG_CHAR4 = 1170, CG_CHAR1x1 = 1171, CG_CHAR1x2 = 1172, CG_CHAR1x3 = 1173, CG_CHAR1x4 = 1174, CG_CHAR2x1 = 1175, CG_CHAR2x2 = 1176, CG_CHAR2x3 = 1177, CG_CHAR2x4 = 1178, CG_CHAR3x1 = 1179, CG_CHAR3x2 = 1180, CG_CHAR3x3 = 1181, CG_CHAR3x4 = 1182, CG_CHAR4x1 = 1183, CG_CHAR4x2 = 1184, CG_CHAR4x3 = 1185, CG_CHAR4x4 = 1186, CG_DOUBLE = 1145, CG_DOUBLE1 = 1146, CG_DOUBLE2 = 1147, CG_DOUBLE3 = 1148, CG_DOUBLE4 = 1149, CG_DOUBLE1x1 = 1150, CG_DOUBLE1x2 = 1151, CG_DOUBLE1x3 = 1152, CG_DOUBLE1x4 = 1153, CG_DOUBLE2x1 = 1154, CG_DOUBLE2x2 = 1155, CG_DOUBLE2x3 = 1156, CG_DOUBLE2x4 = 1157, CG_DOUBLE3x1 = 1158, CG_DOUBLE3x2 = 1159, CG_DOUBLE3x3 = 1160, CG_DOUBLE3x4 = 1161, CG_DOUBLE4x1 = 1162, CG_DOUBLE4x2 = 1163, CG_DOUBLE4x3 = 1164, CG_DOUBLE4x4 = 1165, CG_FIXED = 1070, CG_FIXED1 = 1092, CG_FIXED2 = 1071, CG_FIXED3 = 1072, CG_FIXED4 = 1073, CG_FIXED1x1 = 1074, CG_FIXED1x2 = 1075, CG_FIXED1x3 = 1076, CG_FIXED1x4 = 1077, CG_FIXED2x1 = 1078, CG_FIXED2x2 = 1079, CG_FIXED2x3 = 1080, CG_FIXED2x4 = 1081, CG_FIXED3x1 = 1082, CG_FIXED3x2 = 1083, CG_FIXED3x3 = 1084, CG_FIXED3x4 = 1085, CG_FIXED4x1 = 1086, CG_FIXED4x2 = 1087, CG_FIXED4x3 = 1088, CG_FIXED4x4 = 1089, CG_FLOAT = 1045, CG_FLOAT1 = 1091, CG_FLOAT2 = 1046, CG_FLOAT3 = 1047, CG_FLOAT4 = 1048, CG_FLOAT1x1 = 1049, CG_FLOAT1x2 = 1050, CG_FLOAT1x3 = 1051, CG_FLOAT1x4 = 1052, CG_FLOAT2x1 = 1053, CG_FLOAT2x2 = 1054, CG_FLOAT2x3 = 1055, CG_FLOAT2x4 = 1056, CG_FLOAT3x1 = 1057, CG_FLOAT3x2 = 1058, CG_FLOAT3x3 = 1059, CG_FLOAT3x4 = 1060, CG_FLOAT4x1 = 1061, CG_FLOAT4x2 = 1062, CG_FLOAT4x3 = 1063, CG_FLOAT4x4 = 1064, CG_HALF = 1025, CG_HALF1 = 1090, CG_HALF2 = 1026, CG_HALF3 = 1027, CG_HALF4 = 1028, CG_HALF1x1 = 1029, CG_HALF1x2 = 1030, CG_HALF1x3 = 1031, CG_HALF1x4 = 1032, CG_HALF2x1 = 1033, CG_HALF2x2 = 1034, CG_HALF2x3 = 1035, CG_HALF2x4 = 1036, CG_HALF3x1 = 1037, CG_HALF3x2 = 1038, CG_HALF3x3 = 1039, CG_HALF3x4 = 1040, CG_HALF4x1 = 1041, CG_HALF4x2 = 1042, CG_HALF4x3 = 1043, CG_HALF4x4 = 1044, CG_INT = 1093, CG_INT1 = 1094, CG_INT2 = 1095, CG_INT3 = 1096, CG_INT4 = 1097, CG_INT1x1 = 1098, CG_INT1x2 = 1099, CG_INT1x3 = 1100, CG_INT1x4 = 1101, CG_INT2x1 = 1102, CG_INT2x2 = 1103, CG_INT2x3 = 1104, CG_INT2x4 = 1105, CG_INT3x1 = 1106, CG_INT3x2 = 1107, CG_INT3x3 = 1108, CG_INT3x4 = 1109, CG_INT4x1 = 1110, CG_INT4x2 = 1111, CG_INT4x3 = 1112, CG_INT4x4 = 1113, CG_LONG = 1271, CG_LONG1 = 1272, CG_LONG2 = 1273, CG_LONG3 = 1274, CG_LONG4 = 1275, CG_LONG1x1 = 1276, CG_LONG1x2 = 1277, CG_LONG1x3 = 1278, CG_LONG1x4 = 1279, CG_LONG2x1 = 1280, CG_LONG2x2 = 1281, CG_LONG2x3 = 1282, CG_LONG2x4 = 1283, CG_LONG3x1 = 1284, CG_LONG3x2 = 1285, CG_LONG3x3 = 1286, CG_LONG3x4 = 1287, CG_LONG4x1 = 1288, CG_LONG4x2 = 1289, CG_LONG4x3 = 1290, CG_LONG4x4 = 1291, CG_SHORT = 1208, CG_SHORT1 = 1209, CG_SHORT2 = 1210, CG_SHORT3 = 1211, CG_SHORT4 = 1212, CG_SHORT1x1 = 1213, CG_SHORT1x2 = 1214, CG_SHORT1x3 = 1215, CG_SHORT1x4 = 1216, CG_SHORT2x1 = 1217, CG_SHORT2x2 = 1218, CG_SHORT2x3 = 1219, CG_SHORT2x4 = 1220, CG_SHORT3x1 = 1221, CG_SHORT3x2 = 1222, CG_SHORT3x3 = 1223, CG_SHORT3x4 = 1224, CG_SHORT4x1 = 1225, CG_SHORT4x2 = 1226, CG_SHORT4x3 = 1227, CG_SHORT4x4 = 1228, CG_UCHAR = 1187, CG_UCHAR1 = 1188, CG_UCHAR2 = 1189, CG_UCHAR3 = 1190, CG_UCHAR4 = 1191, CG_UCHAR1x1 = 1192, CG_UCHAR1x2 = 1193, CG_UCHAR1x3 = 1194, CG_UCHAR1x4 = 1195, CG_UCHAR2x1 = 1196, CG_UCHAR2x2 = 1197, CG_UCHAR2x3 = 1198, CG_UCHAR2x4 = 1199, CG_UCHAR3x1 = 1200, CG_UCHAR3x2 = 1201, CG_UCHAR3x3 = 1202, CG_UCHAR3x4 = 1203, CG_UCHAR4x1 = 1204, CG_UCHAR4x2 = 1205, CG_UCHAR4x3 = 1206, CG_UCHAR4x4 = 1207, CG_UINT = 1250, CG_UINT1 = 1251, CG_UINT2 = 1252, CG_UINT3 = 1253, CG_UINT4 = 1254, CG_UINT1x1 = 1255, CG_UINT1x2 = 1256, CG_UINT1x3 = 1257, CG_UINT1x4 = 1258, CG_UINT2x1 = 1259, CG_UINT2x2 = 1260, CG_UINT2x3 = 1261, CG_UINT2x4 = 1262, CG_UINT3x1 = 1263, CG_UINT3x2 = 1264, CG_UINT3x3 = 1265, CG_UINT3x4 = 1266, CG_UINT4x1 = 1267, CG_UINT4x2 = 1268, CG_UINT4x3 = 1269, CG_UINT4x4 = 1270, CG_ULONG = 1292, CG_ULONG1 = 1293, CG_ULONG2 = 1294, CG_ULONG3 = 1295, CG_ULONG4 = 1296, CG_ULONG1x1 = 1297, CG_ULONG1x2 = 1298, CG_ULONG1x3 = 1299, CG_ULONG1x4 = 1300, CG_ULONG2x1 = 1301, CG_ULONG2x2 = 1302, CG_ULONG2x3 = 1303, CG_ULONG2x4 = 1304, CG_ULONG3x1 = 1305, CG_ULONG3x2 = 1306, CG_ULONG3x3 = 1307, CG_ULONG3x4 = 1308, CG_ULONG4x1 = 1309, CG_ULONG4x2 = 1310, CG_ULONG4x3 = 1311, CG_ULONG4x4 = 1312, CG_USHORT = 1229, CG_USHORT1 = 1230, CG_USHORT2 = 1231, CG_USHORT3 = 1232, CG_USHORT4 = 1233, CG_USHORT1x1 = 1234, CG_USHORT1x2 = 1235, CG_USHORT1x3 = 1236, CG_USHORT1x4 = 1237, CG_USHORT2x1 = 1238, CG_USHORT2x2 = 1239, CG_USHORT2x3 = 1240, CG_USHORT2x4 = 1241, CG_USHORT3x1 = 1242, CG_USHORT3x2 = 1243, CG_USHORT3x3 = 1244, CG_USHORT3x4 = 1245, CG_USHORT4x1 = 1246, CG_USHORT4x2 = 1247, CG_USHORT4x3 = 1248, CG_USHORT4x4 = 1249 } CGtype; typedef int CGbool; typedef enum { CG_GL_MATRIX_IDENTITY = 0, CG_GL_MATRIX_TRANSPOSE = 1, CG_GL_MATRIX_INVERSE = 2, CG_GL_MATRIX_INVERSE_TRANSPOSE = 3, CG_GL_MODELVIEW_MATRIX = 4, CG_GL_PROJECTION_MATRIX = 5, CG_GL_TEXTURE_MATRIX = 6, CG_GL_MODELVIEW_PROJECTION_MATRIX = 7, CG_GL_VERTEX = 8, CG_GL_FRAGMENT = 9, CG_GL_GEOMETRY = 10, CG_GL_TESSELLATION_CONTROL = 11, CG_GL_TESSELLATION_EVALUATION = 12 } CGGLenum; #endif