/* * AdaptivityMap.hpp * * Created on: Oct 20, 2011 * Author: heber */ #ifndef ADAPTIVITYMAP_HPP_ #define ADAPTIVITYMAP_HPP_ // include config.h #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include "Fragmentation/KeySet.hpp" class molecule; class AdaptivityMap : public std::map { public: AdaptivityMap(); ~AdaptivityMap(); void InsertIntoAdaptiveCriteriaList(int FragOrder, int No, double Value); void ScanAdaptiveFileIntoMap(std::string &path); void ReMapAdaptiveCriteriaListToValue(molecule *mol); int CountLinesinFile(std::ifstream &InputFile) const; bool MarkUpdateCandidates(bool *AtomMask, int Order, molecule *mol) const ; bool IsAdaptiveCriteriaListEmpty() const; private: typedef std::map > AdaptiveCriteriaValueMap; typedef std::map > AdaptiveCriteriaIndexMap; AdaptiveCriteriaIndexMap *AdaptiveCriteriaList; AdaptiveCriteriaValueMap *FinalRootCandidates; }; #endif /* ADAPTIVITYMAP_HPP_ */