File indexing completed on 2024-04-14 14:11:15

0001 /*
0002     SPDX-FileCopyrightText: 2011 Rafał Kułaga <rl.kulaga@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef FOVSNAPSHOT_H
0008 #define FOVSNAPSHOT_H
0009 
0010 #include "fov.h"
0011 #include "skypoint.h"
0012 #include "QPixmap"
0013 #include "QString"
0014 
0015 class FOV;
0016 
0017 /**
0018   * \class FovSnapshot
0019   * \brief Class that represents single field of view snapshot.
0020   * FovSnapshot class stores data of single FOV snapshot: image, description, FOV symbol at which it was
0021   * captured and its central point.
0022   * \author Rafał Kułaga
0023   */
0024 class FovSnapshot
0025 {
0026   public:
0027     /**
0028           * \brief Constructor.
0029           * \param pixmap Snapshot image.
0030           * \param description Snapshot description.
0031           * \param fov FOV symbol at which snapshot was captured.
0032           * \param center Central point of the snapshot.
0033           */
0034     FovSnapshot(const QPixmap &pixmap, const QString description, FOV *fov, const SkyPoint &center);
0035 
0036     /**
0037           * \brief Get snapshot image.
0038           * \return Image of the snapshot.
0039           */
0040     QPixmap getPixmap() { return m_Pixmap; }
0041 
0042     /**
0043           * \brief Get snapshot description.
0044           * \return Description of the snapshot.
0045           */
0046     QString getDescription() { return m_Description; }
0047 
0048     /**
0049           * \brief Get FOV symbol at which snapshot was captured.
0050           * \return FOV of the snapshot.
0051           */
0052     FOV *getFov() { return m_Fov; }
0053 
0054     /**
0055           * \brief Get central point of the snapshot.
0056           * \return Central point of the snapshot.
0057           */
0058     SkyPoint getCentralPoint() { return m_CentralPoint; }
0059 
0060     /**
0061           * \brief Set snapshot image.
0062           * \param pixmap Snapshot image.
0063           */
0064     void setPixmap(const QPixmap &pixmap) { m_Pixmap = pixmap; }
0065 
0066     /**
0067           * \brief Set snapshot description.
0068           * \param description Snapshot description.
0069           */
0070     void setDescription(const QString &description) { m_Description = description; }
0071 
0072     /**
0073           * \brief Set snapshot FOV symbol.
0074           * \param fov FOV symbol of the snapshot.
0075           */
0076     void setFov(FOV *fov) { m_Fov = fov; }
0077 
0078     /**
0079           * \brief Set central point of the snapshot.
0080           * \param point Central point of the snapshot.
0081           */
0082     void setCentralPoint(const SkyPoint &point) { m_CentralPoint = point; }
0083 
0084   private:
0085     QPixmap m_Pixmap;
0086     QString m_Description;
0087     FOV *m_Fov;
0088     SkyPoint m_CentralPoint;
0089 };
0090 
0091 #endif // FOVSNAPSHOT_H