Zdrojový kód: INCLUDE\UTIL\CALENDAR.INC, UTIL\CALENDAR.ASM
CALENDAR - Kalendář
Základem časových údajů v systému Litos je časová jednotka 100 nanosekund uložená v 64-bitové celočíselné proměnné se znaménkem a vztažená k počátku našeho letopočtu (tj. 0:00:00 hodin dne 1. ledna roku 1 n.l., sobota, Juliánské datum 1721423,5 JD). V systému Litos se tento časový formát nazývá "absolutní čas". Tento formát časového údaje má mnoho předností:
rozsah časového údaje je téměř 60 tisíc let (od roku 29227 př.n.l. po rok 29227 n.l.),
dostatečná přesnost údaje i pro měření času v systému, není třeba používat "tiky" hodin,
snadné počítání časových intervalů a porovnání časů,
pro mnoho potřeb měření časových intervalů v systému postačí 32-bitová proměnná (tj. 214 sekund).
Při přepočtu absolutního času na kalendářní údaj (den, měsíc, rok) a zpět se používá Juliánský nebo Gregoriánský kalendář. Juliánský kalendář byl kalendářní systém používaný do 4. října 1582 (čtvrtek), kdy byl nahrazen Gregoriánským kalendářem. Byla provedena korekce data a vypuštěno 10 dnů z kalendáře, takže následující den (pátek) měl datum 15. října 1582 (Juliánské datum okamžiku přelomu bylo 2299160,5 JD). Rok v Juliánském kalendáři měl 365 dnů, přestupný rok byl rok dělitelný 4 a měl 366 dnů (přechodný den přidán na konec února). Gregoriánský kalendář zavedl upřesnění, že rok století je přestupný pouze tehdy, je-li dělitelný číslem 400.
Absolutní čas lze snadno přepočítat na jiné formy časového údaje. Převodem absolutního času na dny v desetinném vyjádření a přičtením hodnoty 1721423,5 obdržíme Juliánské datum. Odečtením 584390 dnů vyjádřených v násobcích 100 nanosekund (584390*24*60*60*10000000 = 504912960000000000) převedeme údaj na formát FILETIME používaný v systému Windows.
Juliánské datum (značka JD, nezaměňovat s Juliánským kalendářem) je používáno v astronomii při sledování dlouhých a periodických časových úseků. Zavedl ho na počátku 17. století francouzský matematik a astronom Joseph Justus Scaliger za účelem snadného počítání data a času tak, aby údaj mohlo být vždy kladné číslo (tedy bez nutnosti rozlišovat "př.n.l." a "n.l."). Juliánské datum je definováno jako počet dní, které uplynuly od poledne světového času dne 1. ledna roku 4713 př.n.l. proleptického Juliánského kalendáře (pondělí). Zapisuje se jako desetinné číslo, jehož desetinná část představuje poměrnou část dne. Juliánské datum má periodu 7980 let (až po poledne v neděli 1. ledna 3268 Gregoriánského kalendáře), tj. 2914673 dnů, poté začne opět dnem 0.
Inkrementace a dekrementace data
Konverze data na absolutní den
Konverze data a času na absolutní čas
Konverze absolutního času na datum a čas
Výpočet rozšířených položek kalendáře