1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- // SPDX-License-Identifier: GPL-3.0-or-later
- #ifndef NETDATA_RRDDIMVAR_H
- #define NETDATA_RRDDIMVAR_H 1
- #include "rrd.h"
- // variables linked to individual dimensions
- // We link variables to point the values that are already
- // calculated / processed by the normal data collection process
- // This means, there will be no speed penalty for using
- // these variables
- struct rrddimvar {
- char *prefix;
- char *suffix;
- char *key_id; // dimension id
- char *key_name; // dimension name
- char *key_contextid; // context + dimension id
- char *key_contextname; // context + dimension name
- char *key_fullidid; // chart type.chart id + dimension id
- char *key_fullidname; // chart type.chart id + dimension name
- char *key_fullnameid; // chart type.chart name + dimension id
- char *key_fullnamename; // chart type.chart name + dimension name
- RRDVAR_TYPE type;
- void *value;
- RRDVAR_OPTIONS options;
- RRDVAR *var_local_id;
- RRDVAR *var_local_name;
- RRDVAR *var_family_id;
- RRDVAR *var_family_name;
- RRDVAR *var_family_contextid;
- RRDVAR *var_family_contextname;
- RRDVAR *var_host_chartidid;
- RRDVAR *var_host_chartidname;
- RRDVAR *var_host_chartnameid;
- RRDVAR *var_host_chartnamename;
- struct rrddim *rrddim;
- struct rrddimvar *next;
- };
- extern void rrddimvar_rename_all(RRDDIM *rd);
- extern RRDDIMVAR *rrddimvar_create(RRDDIM *rd, RRDVAR_TYPE type, const char *prefix, const char *suffix, void *value, RRDVAR_OPTIONS options);
- extern void rrddimvar_free(RRDDIMVAR *rs);
- #endif //NETDATA_RRDDIMVAR_H
|