KHolidays 5.109.0
lunarphase.h
1/*
2 This file is part of the kholidays library.
3
4 SPDX-FileCopyrightText: 2004, 2007, 2009 Allen Winter <winter@kde.org>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8
9#ifndef KHOLIDAYS_LUNARPHASE_H
10#define KHOLIDAYS_LUNARPHASE_H
11
12#include "kholidays_export.h"
13
14#include <qobjectdefs.h>
15
16class QDate;
17class QString;
18
19namespace KHolidays
20{
45class KHOLIDAYS_EXPORT LunarPhase // krazy:exclude=dpointer
46{
47 Q_GADGET
48public:
54 enum Phase {
64 };
65 Q_ENUM(Phase)
66
67
74 static Phase phaseAtDate(const QDate &date);
75
83 static QString phaseNameAtDate(const QDate &date);
84
90 static QString phaseName(Phase phase);
91};
92
93}
94
95#endif
Represents and manages a Lunar Phase.
Definition lunarphase.h:46
Phase
Phases of the moon, in traditional English notation.
Definition lunarphase.h:54
@ FullMoon
Full moon phase.
Definition lunarphase.h:58
@ FirstQuarter
First quarter of moon phase.
Definition lunarphase.h:56
@ None
Indication for error.
Definition lunarphase.h:59
@ WaxingGibbous
Definition lunarphase.h:61
@ WaningCrescent
Definition lunarphase.h:63
@ LastQuarter
Last quarter of moon phase.
Definition lunarphase.h:57
@ WaxingCrescent
Definition lunarphase.h:60
@ WaningGibbous
Definition lunarphase.h:62
@ NewMoon
New moon phase.
Definition lunarphase.h:55