结构体 faiss::BufferList

struct BufferList

用于存储结果的临时缓冲区列表,这些结果在被复制到 RangeSearchResult 对象之前使用。

faiss::RangeSearchPartialResult 继承

公共函数

explicit BufferList(size_t buffer_size)
~BufferList()
void append_buffer()

创建一个新的缓冲区

void add(idx_t id, float dis)

添加一个结果,如果需要,可能会追加一个新的缓冲区

void copy_range(size_t ofs, size_t n, idx_t *dest_ids, float *dest_dis)

将 ofs:ofs+n-1 范围内的元素(视为缓冲区中的线性数据)复制到表 dest_ids, dest_dis

公共成员

size_t buffer_size
std::vector<Buffer> buffers
size_t wp

最后一个缓冲区中的写入指针。

struct Buffer

公共成员

idx_t *ids
float *dis