i965: use pack/unpackDouble lowering
[mesa.git] / src / gallium / drivers / ilo / ilo_query.h
index e30f7e1f28369cf374b0dd1e8808072714007ff9..e451e4e13afecad6f8d6ea8ec4ae684f0a77ce84 100644 (file)
 
 #include "ilo_common.h"
 
+struct intel_bo;
 struct ilo_context;
 
+/**
+ * Queries can be bound to various places in the driver.  While bound, it tells
+ * the driver to collect the data indicated by the type of the query.
+ */
+struct ilo_query {
+   unsigned type;
+   unsigned index;
+
+   struct list_head list;
+
+   bool active;
+
+   /* for queries that need to read hardware statistics */
+   int cmd_len; /* in dwords, as expected by ilo_cp */
+   bool in_pairs;
+   struct intel_bo *bo;
+   int stride, count;
+   int used;
+
+   /* storage for the collected data */
+   union pipe_query_result result;
+};
+
 void
 ilo_init_query_functions(struct ilo_context *ilo);