#pragma once #include #include namespace DB { /** Позволяет создать агрегатную функцию по её имени. */ class AggregateFunctionFactory { public: AggregateFunctionFactory(); AggregateFunctionPtr get(const String & name, const DataTypes & argument_types) const; AggregateFunctionPtr tryGet(const String & name, const DataTypes & argument_types) const; AggregateFunctionPtr getByTypeID(const String & type_id) const; }; using Poco::SharedPtr; typedef SharedPtr AggregateFunctionFactoryPtr; }