// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #pragma once #include namespace search::tensor { class ITensorAttribute; /** * Attribute vector for imported tensor attributes. */ class ImportedTensorAttributeVector : public attribute::ImportedAttributeVector { using ReferenceAttribute = attribute::ReferenceAttribute; using BitVectorSearchCache = attribute::BitVectorSearchCache; public: ImportedTensorAttributeVector(vespalib::stringref name, std::shared_ptr reference_attribute, std::shared_ptr document_meta_store, std::shared_ptr target_attribute, std::shared_ptr target_document_meta_store, bool use_search_cache); ImportedTensorAttributeVector(vespalib::stringref name, std::shared_ptr reference_attribute, std::shared_ptr document_meta_store, std::shared_ptr target_attribute, std::shared_ptr target_document_meta_store, std::shared_ptr search_cache); ~ImportedTensorAttributeVector() override; std::unique_ptr makeReadGuard(bool stableEnumGuard) const override; }; }