-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathSkycal.hh
40 lines (29 loc) · 1.35 KB
/
Skycal.hh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// $Id: Skycal.hh 2098 2007-02-25 22:51:38Z flaterco $
// Skycal.hh -- Functions for sun and moon events.
// Please see Skycal.cc for verbose commentary.
// Prediction of moon phases, sun and moon rises and sets has nothing
// to do with tide prediction. There is no overlap between this code
// and the tide prediction code.
namespace Skycal {
// eventTime and eventType are set to the next moon phase event
// following time t. Nothing else in tideEvent_out is changed.
void findNextMoonPhase (Timestamp t, TideEvent &tideEvent_out);
// eventTime and eventType are set to the next (sun/moon) rise or
// set event following time t. Nothing else in tideEvent_out is
// changed.
enum RiseSetType {solar, twilight, lunar};
// finds next sun (solar or twilight) event
void findNextSunEvent (Timestamp t,
const Coordinates &c,
TideEvent &tideEvent_out);
// finds next event of specific type
void findNextRiseOrSet (Timestamp t,
const Coordinates &c,
RiseSetType riseSetType,
TideEvent &tideEvent_out);
// Returns true if sun is up at time t.
const bool sunIsUp (Timestamp t, const Coordinates &c);
// Returns true if in twilight time
const bool isTwilight (Timestamp t, const Coordinates &c);
}
// Cleanup2006 Done