[Mesa-dev] [PATCH 1/6] gallium/hud: dump hud_driver_query values to files
Edmondo Tommasina
edmondo.tommasina at gmail.com
Wed Dec 21 21:58:09 UTC 2016
Dump values for every selected data source in GALLIUM_HUD.
Every data source has its own file and the filename is
equal to the data source identifier.
---
src/gallium/auxiliary/hud/hud_context.c | 6 ++++++
src/gallium/auxiliary/hud/hud_driver_query.c | 2 ++
src/gallium/auxiliary/hud/hud_private.h | 1 +
3 files changed, 9 insertions(+)
diff --git a/src/gallium/auxiliary/hud/hud_context.c b/src/gallium/auxiliary/hud/hud_context.c
index ceb157a..edd831a 100644
--- a/src/gallium/auxiliary/hud/hud_context.c
+++ b/src/gallium/auxiliary/hud/hud_context.c
@@ -33,6 +33,7 @@
* Set GALLIUM_HUD=help for more info.
*/
+#include <inttypes.h>
#include <signal.h>
#include <stdio.h>
@@ -829,6 +830,9 @@ hud_graph_add_value(struct hud_graph *gr, uint64_t value)
gr->current_value = value;
value = value > gr->pane->ceiling ? gr->pane->ceiling : value;
+ if (gr->fd)
+ fprintf(gr->fd, "%" PRIu64 "\n", value);
+
if (gr->index == gr->pane->max_num_vertices) {
gr->vertices[0] = 0;
gr->vertices[1] = gr->vertices[(gr->index-1)*2+1];
@@ -856,6 +860,8 @@ hud_graph_destroy(struct hud_graph *graph)
FREE(graph->vertices);
if (graph->free_query_data)
graph->free_query_data(graph->query_data);
+ if (graph->fd)
+ fclose(graph->fd);
FREE(graph);
}
diff --git a/src/gallium/auxiliary/hud/hud_driver_query.c b/src/gallium/auxiliary/hud/hud_driver_query.c
index 40ea120..bfde16a 100644
--- a/src/gallium/auxiliary/hud/hud_driver_query.c
+++ b/src/gallium/auxiliary/hud/hud_driver_query.c
@@ -378,6 +378,8 @@ hud_pipe_query_install(struct hud_batch_query_context **pbq,
info->result_index = result_index;
}
+ gr->fd = fopen(gr->name, "w+");
+
hud_pane_add_graph(pane, gr);
pane->type = type; /* must be set before updating the max_value */
diff --git a/src/gallium/auxiliary/hud/hud_private.h b/src/gallium/auxiliary/hud/hud_private.h
index c6d0dbf..fa1cd8b 100644
--- a/src/gallium/auxiliary/hud/hud_private.h
+++ b/src/gallium/auxiliary/hud/hud_private.h
@@ -48,6 +48,7 @@ struct hud_graph {
unsigned num_vertices;
unsigned index; /* vertex index being updated */
uint64_t current_value;
+ FILE *fd;
};
struct hud_pane {
--
2.10.0
More information about the mesa-dev
mailing list