File indexing completed on 2024-04-28 15:09:09

0001 /*  Ekos Dark View
0002     Child of FTISView with few additions necessary for Alignment functions
0003 
0004     SPDX-FileCopyrightText: 2021 Jasem Mutlaq <mutlaqja@ikarustech.com>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 #pragma once
0010 
0011 #include "fitsviewer/fitsview.h"
0012 
0013 #include <QVector3D>
0014 
0015 class QPainter;
0016 class DefectMap;
0017 
0018 class DarkView : public FITSView
0019 {
0020         Q_OBJECT
0021 
0022     public:
0023         explicit DarkView(QWidget *parent = nullptr, FITSMode mode = FITS_NORMAL, FITSScale filter = FITS_NONE);
0024 
0025         void drawOverlay(QPainter *, double scale) override;
0026 
0027         // Resets the marker and lines, celestial pole point and raAxis.
0028         void reset();
0029         void setDefectMap(const QSharedPointer<DefectMap> &defect);
0030         void setDefectMapEnabled(bool enabled);
0031 
0032     protected:
0033         void drawBadPixels(QPainter * painter, double scale);
0034 
0035     private:
0036         QSharedPointer<DefectMap> m_CurrentDefectMap;
0037         bool m_DefectMapEnabled {false};
0038 
0039 };