Files

36 lines
1020 B
C++
Raw Permalink Normal View History

2026-07-12 14:34:52 +04:00
#ifndef DATE_TIME_GENERATOR_H
#define DATE_TIME_GENERATOR_H
#include "range_limiter.h"
#include <QDateTime>
class DateTimeGenerator : public virtual RangeLimiter {
private:
QPair<qint64, qint64> dayRange_;
QPair<QTime, QTime> timeRange_;
public:
DateTimeGenerator(const QPair<qint64, qint64> &dayRange,
const QPair<QTime, QTime> &timeRange);
QDateTime generate(const QDateTime &lowerBoundInclusive,
const QDateTime &upperBoundInclusive);
QDateTime generate(const QDateTime &upperBoundInclusive);
inline void setDayRange(const QPair<qint64, qint64> &dayRange);
inline void setTimeRange(const QPair<QTime, QTime> &timeRange);
inline void setUpperBoundInclusive(const QDateTime &upperBoundInclusive);
};
inline void
DateTimeGenerator::setDayRange(const QPair<qint64, qint64> &dayRange) {
dayRange_ = dayRange;
}
inline void
DateTimeGenerator::setTimeRange(const QPair<QTime, QTime> &timeRange) {
timeRange_ = timeRange;
}
#endif // DATE_TIME_GENERATOR_H