#pragma once #include "data_header.hpp" #include "features_vector.hpp" #include "../defines.hpp" #include "../coding/file_reader.hpp" #include "../coding/file_container.hpp" #include "../std/bind.hpp" namespace feature { template void ForEachFromDat(ModelReaderPtr reader, ToDo & toDo) { FilesContainerR container(reader); DataHeader header; header.Load(container.GetReader(HEADER_FILE_TAG)); FeaturesVector featureSource(container, header); featureSource.ForEachOffset(bind(ref(toDo), _1, _2)); } template void ForEachFromDat(string const & fPath, ToDo & toDo) { ForEachFromDat(new FileReader(fPath), toDo); } }