Fixed nodes weight not modified in db when deleted

This commit is contained in:
matlabbe
2026-07-16 18:14:30 -07:00
parent 3fb5db620f
commit 0bdc365d6e
5 changed files with 26 additions and 6 deletions
-1
View File
@@ -280,7 +280,6 @@ private:
std::list<Signature *> getRemovableSignatures(int count,
const std::set<int> & ignoredIds = std::set<int>());
int getNextId();
void initCountId();
void rehearsal(Signature * signature, Statistics * stats = 0);
bool rehearsalMerge(int oldId, int newId);
bool canBeReduced(const Link & link, float maxDistance, int direction);
+3 -3
View File
@@ -62,7 +62,7 @@ public:
virtual ~Signature();
/**
* Must return a value between >=0 and <=1 (1 means 100% similarity).
* Must return a value between >=0 and <=1 (1 means 100% similarity).
*/
float compareTo(const Signature & signature) const;
bool isBadSignature() const;
@@ -70,10 +70,10 @@ public:
int id() const {return _id;}
int mapId() const {return _mapId;}
void setWeight(int weight) {_modified=_weight!=weight;_weight = weight;}
void setWeight(int weight) {_modified=_modified || _weight!=weight;_weight = weight;}
int getWeight() const {return _weight;}
void setLabel(const std::string & label) {_modified=_label.compare(label)!=0;_label = label;}
void setLabel(const std::string & label) {_modified=_modified || _label.compare(label)!=0;_label = label;}
const std::string & getLabel() const {return _label;}
double getStamp() const {return _stamp;}
+1 -1
View File
@@ -139,7 +139,6 @@ private:
bool _incrementalFlann;
float _rebalancingFactor;
bool _byteToFloat;
bool _autoUpdate;
float _nndrRatio;
std::string _dictionaryPath; // a pre-computed dictionary (.txt or .db)
std::string _newDictionaryPath; // a pre-computed dictionary (.txt or .db)
@@ -151,6 +150,7 @@ private:
cv::Mat _dataTree;
bool _modified;
NNStrategy _strategy;
bool _autoUpdate;
std::map<int ,int> _mapIndexId;
std::map<int ,int> _mapIdIndex;
std::map<int, VisualWord*> _unusedWords; //<id,VisualWord*>, note that these words stay in _visualWords