/* */ #ifndef D_TIME_SEED_CRITERIA_H #define D_TIME_SEED_CRITERIA_H #include "SeedCriteria.h" #include #include "TimerA2.h" namespace aria2 { class TimeSeedCriteria : public SeedCriteria { private: // How much time the client does seeding in seconds. std::chrono::seconds duration_; Timer watch_; public: TimeSeedCriteria(std::chrono::seconds duration); virtual ~TimeSeedCriteria(); virtual void reset() CXX11_OVERRIDE; virtual bool evaluate() CXX11_OVERRIDE; void setDuration(std::chrono::seconds duration) { duration_ = std::move(duration); } const std::chrono::seconds& getDuration() const { return duration_; } }; } // namespace aria2 #endif // D_TIME_SEED_CRITERIA_H