/* * Author: Pawel Jablonski * E-mail: pj@xirx.net * WWW: xirx.net * GIT: git.xirx.net * * License: You can use this code however you like * but leave information about the original author. * Code is free for non-commercial and commercial use. */ #ifndef RTC_H #define RTC_H #include #include //! This class contains Real Time Clock functions class RTC : public QObject { Q_OBJECT public: //! Fields used by RTC to describe date and time struct DateTime { unsigned char year; //!< year unsigned char month; //!< month unsigned char day; //!< day unsigned char hour; //!< hour unsigned char minute; //!< minute unsigned char second; //!< second }; RTC(QObject *parent = nullptr); void reset(); void setDateTime(const QDateTime &dateTime); void setDateTime(const RTC::DateTime &dateTime); RTC::DateTime getDateTime(); private: QDateTime dateTime; //!< Current date and time signals: void updateDateTimeSignal(QDateTime dateTime); }; #endif