X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Fdd.h;h=63fc62103a7fec5c510fca6f64e810eb01f5781c;hb=192de3f051c70ff1404369f88ae2d55f1ffcf806;hp=21e8260fc7842098e09aa4f1ae2ec752d615d006;hpb=194537ebe44cfcd6d72a98d0c2118f10a9e58deb;p=mesa.git diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index 21e8260fc78..63fc62103a7 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -474,7 +474,7 @@ struct dd_function_table { struct gl_program *prog); /** Allocate a new program */ struct gl_program * (*NewProgram)(struct gl_context *ctx, GLenum target, - GLuint id); + GLuint id, bool is_arb_asm); /** Delete a program */ void (*DeleteProgram)(struct gl_context *ctx, struct gl_program *prog); /** @@ -779,6 +779,47 @@ struct dd_function_table { GLint *bytesWritten); /*@}*/ + /** + * \name Performance Query objects + */ + /*@{*/ + unsigned (*InitPerfQueryInfo)(struct gl_context *ctx); + void (*GetPerfQueryInfo)(struct gl_context *ctx, + unsigned queryIndex, + const char **name, + GLuint *dataSize, + GLuint *numCounters, + GLuint *numActive); + void (*GetPerfCounterInfo)(struct gl_context *ctx, + unsigned queryIndex, + unsigned counterIndex, + const char **name, + const char **desc, + GLuint *offset, + GLuint *data_size, + GLuint *type_enum, + GLuint *data_type_enum, + GLuint64 *raw_max); + struct gl_perf_query_object * (*NewPerfQueryObject)(struct gl_context *ctx, + unsigned queryIndex); + void (*DeletePerfQuery)(struct gl_context *ctx, + struct gl_perf_query_object *obj); + bool (*BeginPerfQuery)(struct gl_context *ctx, + struct gl_perf_query_object *obj); + void (*EndPerfQuery)(struct gl_context *ctx, + struct gl_perf_query_object *obj); + void (*WaitPerfQuery)(struct gl_context *ctx, + struct gl_perf_query_object *obj); + bool (*IsPerfQueryReady)(struct gl_context *ctx, + struct gl_perf_query_object *obj); + void (*GetPerfQueryData)(struct gl_context *ctx, + struct gl_perf_query_object *obj, + GLsizei dataSize, + GLuint *data, + GLuint *bytesWritten); + /*@}*/ + + /** * \name GREMEDY debug/marker functions */