#pragma once

#include <search/relevance/dynamic_custom_features.h>

struct TRTYRankingOpts;

namespace NRTYServer {
    //
    // TCreatorOfDynamicFeatures: an adapter that allows to reuse TWebBasesearchDynamicFeaturesCalcer in SaaS
    //
    class TCreatorOfDynamicFeatures: public ICreatorOfCustomDynamicFeaturesCalcer, TNonCopyable {
        THolder<ICreatorOfCustomDynamicFeaturesCalcer> WebCalcer;
        const TRTYRankingOpts& RankingOpts;

    public:
        TCreatorOfDynamicFeatures(const TRTYRankingOpts* rankingOpts);

        ICustomDynamicFeaturesCalcer* Create(TParamsToCustomDynamicFeaturesCalcer& params) override;
    };
}
