#pragma once #include "backend_creator.h" #include class TOwningThreadedLogBackendCreator: public ILogBackendCreator { public: TOwningThreadedLogBackendCreator(THolder&& slave); virtual bool Init(const IInitContext& ctx) override; virtual void ToJson(NJson::TJsonValue& value) const override; void SetQueueOverflowCallback(std::function callback); void SetQueueLen(size_t len); private: virtual THolder DoCreateLogBackend() const override; THolder Slave; std::function QueueOverflowCallback = {}; size_t QueueLen = 0; };