1/* @title: HyperLogLog */
2#pragma once
3#include <stddef.h>
4#include <stdint.h>
5#include <types/types.h>
6
7struct hyperloglog;
8
9#define HYPERLOGLOG_REGISTER_WIDTH_DEFAULT 4
10
11struct hyperloglog *hyperloglog_create(uint8_t register_width);
12void hyperloglog_destroy(struct hyperloglog *hll);
13fx32_32_t hyperloglog_estimate(struct hyperloglog *hll);
14void hyperloglog_add(struct hyperloglog *hll, uint32_t hash);
15