// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. #pragma once #include #include #include #include #include "common.h" #include "index.h" namespace py = pybind11; namespace diskannpy { template class StaticMemoryIndex { public: StaticMemoryIndex(diskann::Metric m, const std::string &index_prefix, size_t num_points, size_t dimensions, uint32_t num_threads, uint32_t initial_search_complexity); NeighborsAndDistances search(py::array_t &query, uint64_t knn, uint64_t complexity); NeighborsAndDistances batch_search(py::array_t &queries, uint64_t num_queries, uint64_t knn, uint64_t complexity, uint32_t num_threads); private: diskann::Index _index; }; }