File indexing completed on 2024-04-21 14:46:56

0001 /*
0002     SPDX-FileCopyrightText: 2007 Jason Harris <kstars@30doradus.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "kstarsdatetime.h"
0010 #include "ui_modcalcvizequinox.h"
0011 
0012 class QTextStream;
0013 
0014 class KPlotObject;
0015 
0016 /**
0017  * @class modCalcEquinox
0018  *
0019  * @author Jason Harris
0020  */
0021 class modCalcEquinox : public QFrame, public Ui::modCalcEquinox
0022 {
0023     Q_OBJECT
0024 
0025   public:
0026     explicit modCalcEquinox(QWidget *p);
0027     virtual ~modCalcEquinox() override = default;
0028 
0029     double dmonth(int imonth);
0030 
0031   private slots:
0032     void slotCompute();
0033     void slotCheckFiles();
0034     void slotRunBatch();
0035     void slotViewBatch();
0036 
0037   private:
0038     void processLines(QTextStream &istream);
0039     void addDateAxes();
0040     void findSolsticeAndEquinox(uint32_t year);
0041     qreal FindCorrection(uint32_t year);
0042 
0043   public:
0044     KStarsDateTime dSpring, dSummer, dAutumn, dWinter;
0045   private:
0046     double DMonth[12];
0047 };