Warning, file /utilities/telly-skout/src/program.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // SPDX-FileCopyrightText: 2022 Plata Hill <plata.hill@kdemail.net>
0002 // SPDX-License-Identifier: LGPL-2.1-or-later
0003 
0004 #pragma once
0005 
0006 #include <QObject>
0007 
0008 #include "programdata.h"
0009 
0010 #include <QDateTime>
0011 #include <QString>
0012 
0013 class Channel;
0014 
0015 class Program : public QObject
0016 {
0017     Q_OBJECT
0018 
0019     Q_PROPERTY(QString channelId READ channelId CONSTANT)
0020     Q_PROPERTY(QString id READ id CONSTANT)
0021     Q_PROPERTY(QString url READ url CONSTANT)
0022     Q_PROPERTY(QString title READ title CONSTANT)
0023     Q_PROPERTY(QString description READ description)
0024     Q_PROPERTY(bool descriptionFetched READ descriptionFetched)
0025     Q_PROPERTY(QDateTime start READ start CONSTANT)
0026     Q_PROPERTY(QDateTime stop READ stop CONSTANT)
0027     Q_PROPERTY(QString subtitle READ subtitle CONSTANT)
0028     Q_PROPERTY(QVector<QString> categories READ categories CONSTANT)
0029 
0030 public:
0031     explicit Program(const ProgramData &data);
0032     ~Program() = default;
0033 
0034     const QString &channelId() const;
0035     const QString &id() const;
0036     QString url() const;
0037     QString title() const;
0038     QString description() const;
0039     bool descriptionFetched() const;
0040     QDateTime start() const;
0041     void setStart(const QDateTime &start);
0042     QDateTime stop() const;
0043     QString subtitle() const;
0044     QVector<QString> categories() const;
0045 
0046 private:
0047     ProgramData m_data;
0048 };