11 #include "IndexBinary.h"
12 #include "ThreadedIndex.h"
20 template <
typename IndexT>
23 using idx_t =
typename IndexT::idx_t;
24 using component_t =
typename IndexT::component_t;
25 using distance_t =
typename IndexT::distance_t;
50 void train(idx_t n,
const component_t* x)
override;
54 void add(idx_t n,
const component_t* x)
override;
62 distance_t* distances,
63 idx_t* labels)
const override;
66 void reconstruct(idx_t, component_t *v)
const override;
73 using IndexReplicas = IndexReplicasTemplate<Index>;
74 using IndexBinaryReplicas = IndexReplicasTemplate<IndexBinary>;
void removeIndex(IndexT *index)
void train(idx_t n, const component_t *x) override
IndexReplicasTemplate(bool threaded=true)
void remove_replica(IndexT *index)
Alias for removeIndex()
void onAfterAddIndex(IndexT *index) override
Called just after an index is added.
void addIndex(IndexT *index)
void search(idx_t n, const component_t *x, idx_t k, distance_t *distances, idx_t *labels) const override
void reconstruct(idx_t, component_t *v) const override
reconstructs from the first index
void add(idx_t n, const component_t *x) override
void add_replica(IndexT *index)
Alias for addIndex()