diff options
author | Costa Tsaousis <costa@netdata.cloud> | 2023-04-13 15:27:34 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-13 15:27:34 +0300 |
commit | 238cb29793398cb258efb9a56bf031e9c00a858e (patch) | |
tree | 508f01f973211b9861d5012f499be67466137793 /libnetdata | |
parent | b001e476523e2ab1f1b174ab61659e1b0e4ed410 (diff) |
/api/v2 part 10 (#14904)
/api/v2/weights nonzero output
Diffstat (limited to 'libnetdata')
-rw-r--r-- | libnetdata/libnetdata.h | 1 | ||||
-rw-r--r-- | libnetdata/storage_number/storage_number.h | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/libnetdata/libnetdata.h b/libnetdata/libnetdata.h index 1a2d7c5b96..c1246aafa9 100644 --- a/libnetdata/libnetdata.h +++ b/libnetdata/libnetdata.h @@ -405,6 +405,7 @@ typedef struct storage_point { #define storage_point_is_unset(x) (!(x).count) #define storage_point_is_gap(x) (!netdata_double_isnumber((x).sum)) +#define storage_point_is_zero(x) (!(x).count || (netdata_double_is_zero((x).min) && netdata_double_is_zero((x).max) && netdata_double_is_zero((x).sum) && (x).anomaly_count == 0)) #define storage_point_merge_to(dst, src) do { \ if(storage_point_is_unset(dst)) \ diff --git a/libnetdata/storage_number/storage_number.h b/libnetdata/storage_number/storage_number.h index da81639f29..82c870d690 100644 --- a/libnetdata/storage_number/storage_number.h +++ b/libnetdata/storage_number/storage_number.h @@ -70,6 +70,9 @@ typedef long long collected_number; #define netdata_double_isnumber(a) (fpclassify(a) != FP_NAN && fpclassify(a) != FP_INFINITE) #endif +#define netdata_double_is_zero(a) (!netdata_double_isnumber(a) || considered_equal_ndd(a, 0.0)) +#define netdata_double_is_nonzero(a) (!netdata_double_is_zero(a)) + typedef uint32_t storage_number; typedef struct storage_number_tier1 { |