blob: da527aa685baebb831ef9549b5991e0c5db8c242 [file] [log] [blame]
syntax = "proto2";
package androidgamesdk_deviceinfo;
option java_package = "com.google.androidgamesdk";
message cpu_core {
optional int64 freq_max = 1;
}
message gl {
optional string renderer = 1;
optional string vendor = 2;
optional string version = 3;
optional int32 version_major = 4;
optional int32 version_minor = 5;
optional string shading_language_version = 6;
repeated string extension = 7;
// gles min: 2.0
optional float GL_ALIASED_LINE_WIDTH_RANGE = 2001;
optional float GL_ALIASED_POINT_SIZE_RANGE = 2002;
optional int32 GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 2003;
optional int32 GL_MAX_CUBE_MAP_TEXTURE_SIZE = 2005;
optional int32 GL_MAX_FRAGMENT_UNIFORM_VECTORS = 2006;
optional int32 GL_MAX_RENDERBUFFER_SIZE = 2007;
optional int32 GL_MAX_TEXTURE_IMAGE_UNITS = 2008;
optional int32 GL_MAX_TEXTURE_SIZE = 2009;
optional int32 GL_MAX_VARYING_VECTORS = 2010;
optional int32 GL_MAX_VERTEX_ATTRIBS = 2011;
optional int32 GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 2012;
optional int32 GL_MAX_VERTEX_UNIFORM_VECTORS = 2013;
optional int32 GL_MAX_VIEWPORT_DIMS = 2014;
optional bool GL_SHADER_COMPILER = 2015;
optional int32 GL_SUBPIXEL_BITS = 2016;
optional int32 GL_NUM_COMPRESSED_TEXTURE_FORMATS = 2021;
repeated int32 GL_COMPRESSED_TEXTURE_FORMATS = 2022;
optional int32 GL_NUM_SHADER_BINARY_FORMATS = 2023;
repeated int32 GL_SHADER_BINARY_FORMATS = 2024;
// glGetShaderPrecisionFormat
optional int32 SPF_VERTEX_FLOAT_LOW_RANGE = 2031;
optional int32 SPF_VERTEX_FLOAT_LOW_PREC = 2032;
optional int32 SPF_VERTEX_FLOAT_MED_RANGE = 2033;
optional int32 SPF_VERTEX_FLOAT_MED_PREC = 2034;
optional int32 SPF_VERTEX_FLOAT_HIG_RANGE = 2035;
optional int32 SPF_VERTEX_FLOAT_HIG_PREC = 2036;
optional int32 SPF_VERTEX_INT_LOW_RANGE = 2037;
optional int32 SPF_VERTEX_INT_LOW_PREC = 2038;
optional int32 SPF_VERTEX_INT_MED_RANGE = 2039;
optional int32 SPF_VERTEX_INT_MED_PREC = 2040;
optional int32 SPF_VERTEX_INT_HIG_RANGE = 2041;
optional int32 SPF_VERTEX_INT_HIG_PREC = 2042;
optional int32 SPF_FRAGMENT_FLOAT_LOW_RANGE = 2043;
optional int32 SPF_FRAGMENT_FLOAT_LOW_PREC = 2044;
optional int32 SPF_FRAGMENT_FLOAT_MED_RANGE = 2045;
optional int32 SPF_FRAGMENT_FLOAT_MED_PREC = 2046;
optional int32 SPF_FRAGMENT_FLOAT_HIG_RANGE = 2047;
optional int32 SPF_FRAGMENT_FLOAT_HIG_PREC = 2048;
optional int32 SPF_FRAGMENT_INT_LOW_RANGE = 2049;
optional int32 SPF_FRAGMENT_INT_LOW_PREC = 2050;
optional int32 SPF_FRAGMENT_INT_MED_RANGE = 2051;
optional int32 SPF_FRAGMENT_INT_MED_PREC = 2052;
optional int32 SPF_FRAGMENT_INT_HIG_RANGE = 2053;
optional int32 SPF_FRAGMENT_INT_HIG_PREC = 2054;
// gles min: 3.0
optional int32 GL_MAX_3D_TEXTURE_SIZE = 3001;
optional int32 GL_MAX_ARRAY_TEXTURE_LAYERS = 3002;
optional int32 GL_MAX_COLOR_ATTACHMENTS = 3003;
optional int64 GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 3004;
optional int32 GL_MAX_COMBINED_UNIFORM_BLOCKS = 3005;
optional int64 GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 3006;
optional int32 GL_MAX_DRAW_BUFFERS = 3007;
optional int32 GL_MAX_ELEMENTS_INDICES = 3008;
optional int32 GL_MAX_ELEMENTS_VERTICES = 3009;
optional int64 GL_MAX_ELEMENT_INDEX = 3010;
optional int32 GL_MAX_FRAGMENT_INPUT_COMPONENTS = 3011;
optional int32 GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 3012;
optional int32 GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 3013;
optional int32 GL_MAX_PROGRAM_TEXEL_OFFSET = 3014;
optional int64 GL_MAX_SERVER_WAIT_TIMEOUT = 3015;
optional float GL_MAX_TEXTURE_LOD_BIAS = 3016;
optional int32 GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 3017;
optional int32 GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 3018;
optional int32 GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 3019;
optional int64 GL_MAX_UNIFORM_BLOCK_SIZE = 3020;
optional int32 GL_MAX_UNIFORM_BUFFER_BINDINGS = 3021;
optional int32 GL_MAX_VARYING_COMPONENTS = 3022;
optional int32 GL_MAX_VERTEX_OUTPUT_COMPONENTS = 3023;
optional int32 GL_MAX_VERTEX_UNIFORM_BLOCKS = 3024;
optional int32 GL_MAX_VERTEX_UNIFORM_COMPONENTS = 3025;
optional int32 GL_MIN_PROGRAM_TEXEL_OFFSET = 3026;
optional int32 GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 3027;
optional int32 GL_MAX_SAMPLES = 3028;
optional int32 GL_NUM_PROGRAM_BINARY_FORMATS = 3031;
repeated int32 GL_PROGRAM_BINARY_FORMATS = 3032;
// gles min: 3.1
optional int32 GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 3101;
optional int32 GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 3102;
optional int32 GL_MAX_COLOR_TEXTURE_SAMPLES = 3103;
optional int32 GL_MAX_COMBINED_ATOMIC_COUNTERS = 3104;
optional int32 GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 3105;
optional int32 GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 3106;
optional int32 GL_MAX_COMBINED_IMAGE_UNIFORMS = 3107;
optional int32 GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 3108;
optional int32 GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 3109;
optional int32 GL_MAX_COMPUTE_ATOMIC_COUNTERS = 3110;
optional int32 GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 3111;
optional int32 GL_MAX_COMPUTE_IMAGE_UNIFORMS = 3112;
optional int32 GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 3113;
optional int32 GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 3114;
optional int32 GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 3115;
optional int32 GL_MAX_COMPUTE_UNIFORM_BLOCKS = 3116;
optional int32 GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 3117;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_COUNT_0 = 3118;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_COUNT_1 = 3119;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_COUNT_2 = 3120;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 3121;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_SIZE_0 = 3122;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_SIZE_1 = 3123;
optional int32 GL_MAX_COMPUTE_WORK_GROUP_SIZE_2 = 3124;
optional int32 GL_MAX_DEPTH_TEXTURE_SAMPLES = 3125;
optional int32 GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 3126;
optional int32 GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 3127;
optional int32 GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 3128;
optional int32 GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 3129;
optional int32 GL_MAX_FRAMEBUFFER_HEIGHT = 3130;
optional int32 GL_MAX_FRAMEBUFFER_SAMPLES = 3131;
optional int32 GL_MAX_FRAMEBUFFER_WIDTH = 3132;
optional int32 GL_MAX_IMAGE_UNITS = 3133;
optional int32 GL_MAX_INTEGER_SAMPLES = 3134;
optional int32 GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 3135;
optional int32 GL_MAX_SAMPLE_MASK_WORDS = 3136;
optional int64 GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 3137;
optional int32 GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 3138;
optional int32 GL_MAX_UNIFORM_LOCATIONS = 3139;
optional int32 GL_MAX_VERTEX_ATOMIC_COUNTERS = 3140;
optional int32 GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 3141;
optional int32 GL_MAX_VERTEX_ATTRIB_BINDINGS = 3142;
optional int32 GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 3143;
optional int32 GL_MAX_VERTEX_ATTRIB_STRIDE = 3144;
optional int32 GL_MAX_VERTEX_IMAGE_UNIFORMS = 3145;
optional int32 GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 3146;
optional int32 GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 3147;
optional int32 GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 3148;
// gles min: 3.2
optional int32 GL_CONTEXT_FLAGS = 3201;
optional int32 GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 3202;
optional int32 GL_LAYER_PROVOKING_VERTEX = 3203;
optional int32 GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 3204;
optional int32 GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 3205;
optional int32 GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 3206;
optional int32 GL_MAX_DEBUG_GROUP_STACK_DEPTH = 3207;
optional int32 GL_MAX_DEBUG_LOGGED_MESSAGES = 3208;
optional int32 GL_MAX_DEBUG_MESSAGE_LENGTH = 3209;
optional float GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 3210;
optional int32 GL_MAX_FRAMEBUFFER_LAYERS = 3211;
optional int32 GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 3212;
optional int32 GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 3213;
optional int32 GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 3214;
optional int32 GL_MAX_GEOMETRY_INPUT_COMPONENTS = 3215;
optional int32 GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 3216;
optional int32 GL_MAX_GEOMETRY_OUTPUT_VERTICES = 3217;
optional int32 GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 3218;
optional int32 GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 3219;
optional int32 GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 3220;
optional int32 GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 3221;
optional int32 GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 3222;
optional int32 GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 3223;
optional int32 GL_MAX_LABEL_LENGTH = 3224;
optional int32 GL_MAX_PATCH_VERTICES = 3225;
optional int32 GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 3226;
optional int32 GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 3227;
optional int32 GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 3228;
optional int32 GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 3229;
optional int32 GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 3230;
optional int32 GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 3231;
optional int32 GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 3232;
optional int32 GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 3233;
optional int32 GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 3234;
optional int32 GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 3235;
optional int32 GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 3236;
optional int32 GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 3237;
optional int32 GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 3238;
optional int32 GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 3239;
optional int32 GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 3240;
optional int32 GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 3241;
optional int32 GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 3242;
optional int32 GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 3243;
optional int32 GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 3244;
optional int32 GL_MAX_TESS_GEN_LEVEL = 3245;
optional int32 GL_MAX_TESS_PATCH_COMPONENTS = 3246;
optional int32 GL_MAX_TEXTURE_BUFFER_SIZE = 3247;
optional float GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 3248;
optional float GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY = 3249;
optional float GL_MULTISAMPLE_LINE_WIDTH_RANGE = 3250;
optional bool GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 3251;
optional int32 GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 3252;
optional int32 GL_RESET_NOTIFICATION_STRATEGY = 3254;
}
message data {
optional int32 version = 1;
optional int32 cpu_max_index = 11;
repeated cpu_core cpu_core = 12;
optional string cpu_present = 13;
optional string cpu_possible = 14;
repeated string cpu_extension = 15;
repeated string hardware = 16;
optional string ro_chipname = 21;
optional string ro_board_platform = 22;
optional string ro_product_board = 23;
optional string ro_mediatek_platform = 24;
optional string ro_arch = 25;
optional string ro_build_fingerprint = 26;
optional gl gl = 31;
}
message errors {
optional string hardware = 1;
optional string features = 2;
optional string egl = 3;
repeated string gl = 4;
}
message root {
optional data data = 1;
optional errors errors = 2;
}