/* */ #ifndef _D_TIME_SEED_CRITERIA_H_ #define _D_TIME_SEED_CRITERIA_H_ #include "SeedCriteria.h" #include "TimeA2.h" namespace aria2 { class TimeSeedCriteria : public SeedCriteria { private: // How much time the client does seeding in seconds. time_t duration; Time watch; public: TimeSeedCriteria(time_t duration):duration(duration) {} virtual ~TimeSeedCriteria() {} virtual void reset() { watch.reset(); } virtual bool evaluate() { return watch.elapsed(duration); } void setDuration(time_t duration) { this->duration = duration; } time_t getDuration() const { return duration; } }; } // namespace aria2 #endif // _D_TIME_SEED_CRITERIA_H_