From: Michael Tremer Date: Fri, 3 Oct 2025 11:37:07 +0000 (+0000) Subject: graph: Move all stuff that is needed to draw graphs into a new header X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1c41f05368ff8c20741bdc3ab17c2669b54110ce;p=collecty.git graph: Move all stuff that is needed to draw graphs into a new header Signed-off-by: Michael Tremer --- diff --git a/Makefile.am b/Makefile.am index cb466c3..ef2e564 100644 --- a/Makefile.am +++ b/Makefile.am @@ -105,6 +105,7 @@ dist_collectyd_SOURCES = \ src/daemon/graph-bus.h \ src/daemon/graphs.c \ src/daemon/graphs.h \ + src/daemon/graphs/graph.h \ src/daemon/graphs/loadavg.c \ src/daemon/graphs/loadavg.h \ src/daemon/i18n.h \ diff --git a/src/daemon/graph.h b/src/daemon/graph.h index c51ea24..59a9abc 100644 --- a/src/daemon/graph.h +++ b/src/daemon/graph.h @@ -78,26 +78,4 @@ typedef struct collecty_graph_render_options { int collecty_graph_render(collecty_graph* self, const char* object, const collecty_graph_render_options* options, char** buffer, size_t* length); -/* - Helpers to write things faster... -*/ - -#define HEADER "COMMENT:" COLUMN -#define EMPTY_COLUMN "COMMENT: " -#define EMPTY_LINE "COMMENT: \\n" - -#define LABEL "%-30s" - -// A column is exactly 16 characters wide -#define COLUMN "%16s" -#define FLOAT "%%14.2lf" -#define EOL "\\j" - -// Draw a LINE, AREA, etc. -#define DRAW(what, field, color) what ":" field color -#define DRAW_WITH_LABEL(what, field, color) DRAW(what, field, color) ":" LABEL - -// Add something to the legend of the graph -#define PRINT_FLOAT(field) "GPRINT:" field ":" FLOAT - #endif /* COLLECTY_GRAPH_H */ diff --git a/src/daemon/graphs/graph.h b/src/daemon/graphs/graph.h new file mode 100644 index 0000000..ad299aa --- /dev/null +++ b/src/daemon/graphs/graph.h @@ -0,0 +1,59 @@ +/*############################################################################# +# # +# collecty - A system statistics collection daemon for IPFire # +# Copyright (C) 2025 IPFire Development Team # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +#############################################################################*/ + +#ifndef COLLECTY_GRAPHS_GRAPH_H +#define COLLECTY_GRAPHS_GRAPH_H + +/* + This is a convenience header that includes several things that we need + in all the graphs. +*/ + +// Include colors +#include "../colors.h" + +// Include translation +#include "../i18n.h" + +// Include utils +#include "../util.h" + +#define HEADER "COMMENT:" COLUMN +#define EMPTY_COLUMN "COMMENT: " +#define EMPTY_LINE "COMMENT: \\n" + +// Labels are 30 characters wide +#define LABEL "%-30s" + +// A column is exactly 16 characters wide +#define COLUMN "%16s" +#define FLOAT "%%14.2lf" + +// Macro to terminate a line +#define EOL "\\j" + +// Draw a LINE, AREA, etc. +#define DRAW(what, field, color) what ":" field color +#define DRAW_WITH_LABEL(what, field, color) DRAW(what, field, color) ":" LABEL + +// Add something to the legend of the graph +#define PRINT_FLOAT(field) "GPRINT:" field ":" FLOAT + +#endif /* COLLECTY_GRAPHS_GRAPH_H */ diff --git a/src/daemon/graphs/loadavg.c b/src/daemon/graphs/loadavg.c index 16c4782..3520f9c 100644 --- a/src/daemon/graphs/loadavg.c +++ b/src/daemon/graphs/loadavg.c @@ -20,10 +20,7 @@ #include -#include "../colors.h" -#include "../graph.h" -#include "../i18n.h" -#include "../util.h" +#include "graph.h" #include "loadavg.h" // Set some colors