## O programe | Niektoré použité štruktúry

<< O programe (podrobnejšie) | ^ O programe | ^^ Informácie

Tu sú niektoré dátové štruktúry, ktoré program využíva (výpis z C++ hlavičkových súborov):

#### Štruktúra pre jednotlivý deň

`struct dm{`

- `int den; /* cislo dna mesiaca (1--31) */`
  `int mesiac; /* cislo mesiaca (1--12) */`
  `int rok; /* rok */`
  `int denvt; /* cislo dna v tyzdni (0--6) DEN_... */ /* deň v roku */`
  `int denvr; /* cislo dna v roku (1--365/366) */`
  `/* toto boli "obcianske" zalezitosti */`
  `char litrok; /* liturgicky rok ('A'--'C') */`
  `int tyzden; /* tyzden v danom liturgickom obdobi */`
  `int tyzzal; /* tyzden v zaltari (vacsinou ((tyzden – 1) % 4) + 1) */`
  `int litobd; /* liturgicke obdobie, OBD_... */`
  `int typslav; /* typ slavenia (1--5): SLAV_... */`
  `int typslav_lokal; /* lokálny typ slavenia : LOKAL_SLAV_... */`
  `int smer; /* poradove cislo z c.59 Vseobecnych smernic`
  `* o liturgii hodin a kalendari */`
  `int prik; /* ci je to prikazany sviatok alebo nie:`
  `* PRIKAZANY_SVIATOK resp. NEPRIKAZANY_SVIATOK */`
  `int spolcast; /* spolocna cast,`
  `* zakodovane data pre svatych o tom, z akej spolocnej`
  `* casti sa ma modlit;`
  `* obsahuje max. 3 spolocne casti vo formate`
  `*`
  `* spolcast == a1 + a2 * MAX + a3 * MAX * MAX,`
  `*`
  `* kde`
  `* – MAX je MAX_MODL_SPOL_CAST,`
  `* – a1, a2, a3 su konstanty MODL_SPOL_CAST_...`
  `* (v poradi a1, ak druhe tak a2, ak tretie tak aj a3)`
  `*`
  `* _encode_..., _decode_spol_cast();`
  `*/`
  `char meno[MENO_SVIATKU]; /* nazov prip. sviatku */`

`};`
`typedef struct dm _struct_dm;`

#### Štruktúra pre časti modlitby

`struct tmodlitba1{`

- `_struct_anchor_and_file popis ;`
  `_struct_anchor_and_file hymnus ;`
  `_struct_anchor_and_file antifona1 ;`
  `_struct_anchor_and_file zalm1 ;`
  `_struct_anchor_and_file antifona2 ;`
  `_struct_anchor_and_file zalm2 ;`
  `_struct_anchor_and_file antifona3 ;`
  `_struct_anchor_and_file zalm3 ;`
  `_struct_anchor_and_file kcitanie ; /* 1. citanie pre posvatne citanie */`
  `_struct_anchor_and_file kresponz ;`
  `_struct_anchor_and_file benediktus; /* antifona na benediktus/magnifikat; 2. citanie pre posvatne citanie */`
  `_struct_anchor_and_file prosby ; /* pre posvatne citanie nedefinovane */`
  `_struct_anchor_and_file modlitba ;`

`};`
`typedef struct tmodlitba1 _type_ranne_chvaly;`
`typedef struct tmodlitba1 _type_vespery;`
`typedef struct tmodlitba1 _type_1vespery;`
`typedef struct tmodlitba1 _type_posv_citanie;`

#### Štruktúra pre (kalendárny) rok

`struct lrok{`

- `int prestupny; /* ci je rok prestupny (YES, NO) */`
  `char p1, p2; /* nedelne pismeno/pismena;`
  `* ak ma rok iba jedno,`
  `* druhe p2 == NIJAKE_NEDELNE_PISMENO */`
  `char litrok; /* pismeno liturgickeho roka,`
  `* ktory zacina prvou adventnou nedelou v roku */`
  `int tyzden_ocr_po_vn; /* cislo tyzdna obdobia "cez rok",`
  `* ktory nasleduje po nedeli zoslania`
  `* ducha svateho, teda po velkonocnom obdobi */`
  `int tyzden_ocr_pred_po; /* cislo tyzdna obdobia cez rok, v ktorom zacina post */`
  `struct dm _den[POCET_ALIASOV];`

`};`
`typedef struct lrok _struct_lrok;`

© 1999-2019 Juraj Vidéky