File indexing completed on 2024-04-14 03:42:57

0001 /*
0002     SPDX-FileCopyrightText: 2009 Prakash Mohan <prakash.mohan@kdemail.net>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 #pragma once
0007 
0008 #include "oal/oal.h"
0009 
0010 #include <QString>
0011 
0012 /**
0013  * @class OAL::Scope
0014  *
0015  * Information on telescope used in observation
0016  */
0017 class OAL::Scope
0018 {
0019     public:
0020         Scope(const QString &id, const QString &model, const QString &vendor, const QString &type, double focalLength,
0021               double aperture)
0022         {
0023             setScope(id, model, vendor, type, focalLength, aperture);
0024         }
0025         QString id() const
0026         {
0027             return m_Id;
0028         }
0029         QString model() const
0030         {
0031             return m_Model;
0032         }
0033         QString vendor() const
0034         {
0035             return m_Vendor;
0036         }
0037         QString type() const
0038         {
0039             return m_Type;
0040         }
0041         QString name() const
0042         {
0043             return m_Name;
0044         }
0045         QString driver() const
0046         {
0047             return m_INDIDriver;
0048         }
0049         double focalLength() const
0050         {
0051             return m_FocalLength;
0052         }
0053         double aperture() const
0054         {
0055             return m_Aperture;
0056         }
0057         void setScope(const QString &_id, const QString &_model, const QString &_vendor, const QString &_type,
0058                       double _focalLength, double _aperture);
0059         inline void setINDIDriver(const QString &driver)
0060         {
0061             m_INDIDriver = driver;
0062         }
0063 
0064         QJsonObject toJson() const;
0065 
0066     private:
0067         QString m_Id, m_Model, m_Vendor, m_Type, m_Name, m_INDIDriver;
0068         double m_FocalLength, m_Aperture;
0069 };