co-maps/libs/indexer/feature_processor.hpp
2025-11-22 13:58:55 +01:00

31 lines
655 B
C++

#pragma once
#include "indexer/features_vector.hpp"
#include "coding/file_reader.hpp"
#include "coding/files_container.hpp"
#include <memory>
#include <string>
namespace feature
{
template <class ToDo>
void ForEachFeature(FilesContainerR const & cont, ToDo && toDo)
{
FeaturesVectorTest features(cont);
features.GetVector().ForEach(toDo);
}
template <class ToDo>
void ForEachFeature(ModelReaderPtr reader, ToDo && toDo)
{
ForEachFeature(FilesContainerR(reader), toDo);
}
template <class ToDo>
void ForEachFeature(std::string const & fPath, ToDo && toDo)
{
ForEachFeature(std::make_unique<FileReader>(fPath), toDo);
}
} // namespace feature