#pragma once #include #include #include #include #include namespace DB { class IBlockOutputStream; using BlockOutputStreamPtr = std::shared_ptr; struct DictionaryStructure; class Context; /// Write keys to block output stream. /// For simple key void formatIDs(BlockOutputStreamPtr & out, const std::vector & ids); /// For composite key void formatKeys( const DictionaryStructure & dict_struct, BlockOutputStreamPtr & out, const Columns & key_columns, const std::vector & requested_rows); /// Used for applying settings to copied context in some register[...]Source functions Context copyContextAndApplySettings( const std::string & config_prefix, const Context & context, const Poco::Util::AbstractConfiguration & config); }