1/* This file is auto-generated by the leap second code generator
2  (0.03).  This code generator comes with the DateTime.pm module
3  distribution in the tools/ directory
4
5  Generated by ./tools/leap_seconds_header.pl.
6
7  Do not edit this file directly.
8*/
9
10#define SET_LEAP_SECONDS(utc_rd, ls)  \
11{                                     \
12  {                                   \
13    if (utc_rd < 720075) {            \
14      ls = 0;           \
15    } else if (utc_rd >= 720075 && utc_rd < 720259) {  \
16      ls = 1;                      \
17    } else if (utc_rd >= 720259 && utc_rd < 720624) {  \
18      ls = 2;                      \
19    } else if (utc_rd >= 720624 && utc_rd < 720989) {  \
20      ls = 3;                      \
21    } else if (utc_rd >= 720989 && utc_rd < 721354) {  \
22      ls = 4;                      \
23    } else if (utc_rd >= 721354 && utc_rd < 721720) {  \
24      ls = 5;                      \
25    } else if (utc_rd >= 721720 && utc_rd < 722085) {  \
26      ls = 6;                      \
27    } else if (utc_rd >= 722085 && utc_rd < 722450) {  \
28      ls = 7;                      \
29    } else if (utc_rd >= 722450 && utc_rd < 722815) {  \
30      ls = 8;                      \
31    } else if (utc_rd >= 722815 && utc_rd < 723362) {  \
32      ls = 9;                      \
33    } else if (utc_rd >= 723362 && utc_rd < 723727) {  \
34      ls = 10;                      \
35    } else if (utc_rd >= 723727 && utc_rd < 724092) {  \
36      ls = 11;                      \
37    } else if (utc_rd >= 724092 && utc_rd < 724823) {  \
38      ls = 12;                      \
39    } else if (utc_rd >= 724823 && utc_rd < 725737) {  \
40      ls = 13;                      \
41    } else if (utc_rd >= 725737 && utc_rd < 726468) {  \
42      ls = 14;                      \
43    } else if (utc_rd >= 726468 && utc_rd < 726833) {  \
44      ls = 15;                      \
45    } else if (utc_rd >= 726833 && utc_rd < 727380) {  \
46      ls = 16;                      \
47    } else if (utc_rd >= 727380 && utc_rd < 727745) {  \
48      ls = 17;                      \
49    } else if (utc_rd >= 727745 && utc_rd < 728110) {  \
50      ls = 18;                      \
51    } else if (utc_rd >= 728110 && utc_rd < 728659) {  \
52      ls = 19;                      \
53    } else if (utc_rd >= 728659 && utc_rd < 729206) {  \
54      ls = 20;                      \
55    } else if (utc_rd >= 729206 && utc_rd < 729755) {  \
56      ls = 21;                      \
57    } else if (utc_rd >= 729755 && utc_rd < 732312) {  \
58      ls = 22;                      \
59    } else if (utc_rd >= 732312 && utc_rd < 733408) {  \
60      ls = 23;                      \
61    } else {                         \
62      ls = 24;       \
63    }                              \
64  }                                \
65}
66
67#define SET_EXTRA_SECONDS(utc_rd, es)  \
68{                                      \
69  {                                    \
70    es = 0;                            \
71    switch (utc_rd) {                  \
72      case 720074: es = 1; break;            \
73      case 720258: es = 1; break;            \
74      case 720623: es = 1; break;            \
75      case 720988: es = 1; break;            \
76      case 721353: es = 1; break;            \
77      case 721719: es = 1; break;            \
78      case 722084: es = 1; break;            \
79      case 722449: es = 1; break;            \
80      case 722814: es = 1; break;            \
81      case 723361: es = 1; break;            \
82      case 723726: es = 1; break;            \
83      case 724091: es = 1; break;            \
84      case 724822: es = 1; break;            \
85      case 725736: es = 1; break;            \
86      case 726467: es = 1; break;            \
87      case 726832: es = 1; break;            \
88      case 727379: es = 1; break;            \
89      case 727744: es = 1; break;            \
90      case 728109: es = 1; break;            \
91      case 728658: es = 1; break;            \
92      case 729205: es = 1; break;            \
93      case 729754: es = 1; break;            \
94      case 732311: es = 1; break;            \
95      case 733407: es = 1; break;            \
96    }                                  \
97  }                                    \
98}
99
100#define SET_DAY_LENGTH(utc_rd, dl)     \
101{                                      \
102  {                                    \
103    dl = 86400;                        \
104    switch (utc_rd) {                  \
105      case 720074: dl = 86400 + 1; break;    \
106      case 720258: dl = 86400 + 1; break;    \
107      case 720623: dl = 86400 + 1; break;    \
108      case 720988: dl = 86400 + 1; break;    \
109      case 721353: dl = 86400 + 1; break;    \
110      case 721719: dl = 86400 + 1; break;    \
111      case 722084: dl = 86400 + 1; break;    \
112      case 722449: dl = 86400 + 1; break;    \
113      case 722814: dl = 86400 + 1; break;    \
114      case 723361: dl = 86400 + 1; break;    \
115      case 723726: dl = 86400 + 1; break;    \
116      case 724091: dl = 86400 + 1; break;    \
117      case 724822: dl = 86400 + 1; break;    \
118      case 725736: dl = 86400 + 1; break;    \
119      case 726467: dl = 86400 + 1; break;    \
120      case 726832: dl = 86400 + 1; break;    \
121      case 727379: dl = 86400 + 1; break;    \
122      case 727744: dl = 86400 + 1; break;    \
123      case 728109: dl = 86400 + 1; break;    \
124      case 728658: dl = 86400 + 1; break;    \
125      case 729205: dl = 86400 + 1; break;    \
126      case 729754: dl = 86400 + 1; break;    \
127      case 732311: dl = 86400 + 1; break;    \
128      case 733407: dl = 86400 + 1; break;    \
129    }                                  \
130  }                                    \
131}
132