#pragma once #include #include namespace DB { class Context; struct QuotaUsage; /** Implements the `quota_usage` system table, which allows you to get information about * how the current user uses the quota. */ class StorageSystemQuotaUsage final : public shared_ptr_helper, public IStorageSystemOneBlock { public: std::string getName() const override { return "SystemQuotaUsage"; } static NamesAndTypesList getNamesAndTypes(); static NamesAndTypesList getNamesAndTypesImpl(bool add_column_is_current); static void fillDataImpl(MutableColumns & res_columns, ContextPtr context, bool add_column_is_current, const std::vector & quotas_usage); protected: friend struct shared_ptr_helper; using IStorageSystemOneBlock::IStorageSystemOneBlock; void fillData(MutableColumns & res_columns, ContextPtr context, const SelectQueryInfo &) const override; }; }