Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/src/gallium/drivers/nouveau/nv50/nv50_query.h
4574 views
1
#ifndef __NV50_QUERY_H__
2
#define __NV50_QUERY_H__
3
4
#include "pipe/p_context.h"
5
6
#include "nouveau_context.h"
7
8
struct nv50_context;
9
struct nv50_query;
10
11
struct nv50_query_funcs {
12
void (*destroy_query)(struct nv50_context *, struct nv50_query *);
13
bool (*begin_query)(struct nv50_context *, struct nv50_query *);
14
void (*end_query)(struct nv50_context *, struct nv50_query *);
15
bool (*get_query_result)(struct nv50_context *, struct nv50_query *,
16
bool, union pipe_query_result *);
17
};
18
19
struct nv50_query {
20
const struct nv50_query_funcs *funcs;
21
uint16_t type;
22
uint16_t index;
23
};
24
25
static inline struct nv50_query *
26
nv50_query(struct pipe_query *pipe)
27
{
28
return (struct nv50_query *)pipe;
29
}
30
31
/*
32
* Driver queries groups:
33
*/
34
#define NV50_HW_SM_QUERY_GROUP 0
35
#define NV50_HW_METRIC_QUERY_GROUP 1
36
37
void nv50_init_query_functions(struct nv50_context *);
38
39
#endif
40
41