Skip to content

Commit 0f3f72a

Browse files
committed
The interface addPoint is changed from
addPoint(void*, args...) to addPoint(const void*, args...). The changes include the interface in bruteforce.h, and all interfaces related to addPoint in hnswlib. I test the code using 1 million sift data, the result is ok.
1 parent 0d97568 commit 0f3f72a

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

hnswlib/bruteforce.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ namespace hnswlib {
4040

4141
std::unordered_map<labeltype,size_t > dict_external_to_internal;
4242

43-
void addPoint(void *datapoint, labeltype label) {
43+
void addPoint(const void *datapoint, labeltype label) {
4444

4545
int idx;
4646
{

hnswlib/hnswalg.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ namespace hnswlib {
150150
}
151151

152152
std::priority_queue<std::pair<dist_t, tableint>, std::vector<std::pair<dist_t, tableint>>, CompareByFirst>
153-
searchBaseLayer(tableint ep_id, void *data_point, int layer) {
153+
searchBaseLayer(tableint ep_id, const void *data_point, int layer) {
154154
VisitedList *vl = visited_list_pool_->getFreeVisitedList();
155155
vl_type *visited_array = vl->mass;
156156
vl_type visited_array_tag = vl->curV;
@@ -371,7 +371,7 @@ namespace hnswlib {
371371
return (linklistsizeint *) (linkLists_[internal_id] + (level - 1) * size_links_per_element_);
372372
};
373373

374-
void mutuallyConnectNewElement(void *data_point, tableint cur_c,
374+
void mutuallyConnectNewElement(const void *data_point, tableint cur_c,
375375
std::priority_queue<std::pair<dist_t, tableint>, std::vector<std::pair<dist_t, tableint>>, CompareByFirst> top_candidates,
376376
int level) {
377377

@@ -779,11 +779,11 @@ namespace hnswlib {
779779
*((unsigned short int*)(ptr))=*((unsigned short int *)&size);
780780
}
781781

782-
void addPoint(void *data_point, labeltype label) {
782+
void addPoint(const void *data_point, labeltype label) {
783783
addPoint(data_point, label,-1);
784784
}
785785

786-
tableint addPoint(void *data_point, labeltype label, int level) {
786+
tableint addPoint(const void *data_point, labeltype label, int level) {
787787
tableint cur_c = 0;
788788
{
789789
std::unique_lock <std::mutex> lock(cur_element_count_guard_);

hnswlib/hnswlib.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ namespace hnswlib {
6060
template<typename dist_t>
6161
class AlgorithmInterface {
6262
public:
63-
virtual void addPoint(void *datapoint, labeltype label)=0;
63+
virtual void addPoint(const void *datapoint, labeltype label)=0;
6464
virtual std::priority_queue<std::pair<dist_t, labeltype >> searchKnn(const void *, size_t) const = 0;
6565
virtual void saveIndex(const std::string &location)=0;
6666
virtual ~AlgorithmInterface(){

0 commit comments

Comments
 (0)