Zeit.h 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711
  1. #ifndef Zeit_H
  2. #define Zeit_H
  3. #include "Betriebssystem.h"
  4. #include <time.h>
  5. namespace Framework
  6. {
  7. class Text; // Text.h
  8. class Uhrzeit; // Aus dieser Datei
  9. class Datum; // Aus dieser Datei
  10. class Zeit; // Aus dieser Datei
  11. class ZeitMesser; // Aus dieser Datei
  12. // Diese Klasse speichert eine Uhrzeit in form von Stunden, Minuten und Sekunden
  13. class Uhrzeit
  14. {
  15. private:
  16. int stunde, minute, sekunde;
  17. int ref;
  18. int update();
  19. public:
  20. //Erzeugt ein neues Uhrzeit Zeichnung mit den Standartwerten 00:00:00
  21. __declspec( dllexport ) Uhrzeit();
  22. //Setzt die Uhrzeit durch kopieren.
  23. // zeit: Aus diesem Zeichnung werden die Werte für Stunde, Minute und Sekunde kopiert.
  24. __declspec( dllexport ) int setUhrzeit( Uhrzeit *zeit );
  25. //Setzt die Uhrzeit.
  26. // stunde: Die Stunde der neuen Uhrzeit.
  27. // minute: Die Minute der neuen Uhrzeit.
  28. // sekunde: Die Sekunde der neuen Uhrzeit.
  29. // return: Die Anzahl übriger Tage.
  30. // Beispiel: setUhrzeit( 30, 30, 30 ); return: 1, gespeichert: 6:30:30
  31. __declspec( dllexport ) int setUhrzeit( int stunde, int minute, int sekunde );
  32. //Setzt die Uhrzeit.
  33. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  34. // zeit: Eine Zeichenfolge die die neue Uhrzeit enthält.
  35. // return: Die Anzahl übriger Tage.
  36. // Beispiel: setUhrzeit( "h:i:s", "05:30:00" );
  37. // Beispiel: setUhrzeit( "h:i:s", "30:30:00" ); return: 1, gespeichert: 6:30:00
  38. __declspec( dllexport ) int setUhrzeit( const char *format, const char *zeit );
  39. //Setzt die Uhrzeit.
  40. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  41. // zeit: Ein Text Zeichnung, dass die neue Uhrzeit enthält.
  42. // return: Die Anzahl übriger Tage.
  43. // Beispiel: setUhrzeit( "h:i:s", new Text( "05:30:00" ) );
  44. // Beispiel: setUhrzeit( "h:i:s", new Text( "30:30:00" ) ); return: 1, gespeichert: 6:30:00
  45. __declspec( dllexport ) int setUhrzeit( const char *format, Text *zeit );
  46. // setzt die Stunde.
  47. // stunde: Die Stunde, die gespeichert werden soll.
  48. // return: Die Anzahl übriger Tage.
  49. // Beispiel: setStunde( 30 ); return: 1 Tag, gespeicherte Stunden: 6
  50. __declspec( dllexport ) int setStunde( int stunde );
  51. // setzt die Minute.
  52. // minute: Die Minute, die gespeichert werden soll.
  53. // return: Die Anzahl übriger Tage.
  54. // Beispiel: Alte Zeit: 23:50:10, setMinute( 80 ); return: 1, gespeicherte Zeit: 01:10:10
  55. __declspec( dllexport ) int setMinute( int minute );
  56. // setzt die Sekunde.
  57. // minute: Die Sekunde, die gespeichert werden soll.
  58. // return: Die Anzahl übriger Tage.
  59. // Beispiel: Alte Zeit: 23:59:10, setSekunde( 80 ); return: 1, gespeicherte Zeit: 00:00:30
  60. __declspec( dllexport ) int setSekunde( int sekunde );
  61. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  62. // zeit: Die Uhrzeit, deren Werte addiert werden sollen.
  63. // return: Die Anzahl übriger Tage.
  64. // Beispiel: Alte Zeit: 19:40:18, plusZeit( (10:05:30) ); return 1, gespeicherte Zeit: 05:45:48
  65. __declspec( dllexport ) int plusUhrzeit( Uhrzeit *zeit );
  66. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  67. // stunde: Die Stunden die Werte addiert werden sollen.
  68. // minute: Die Minute die Werte addiert werden sollen.
  69. // sekunde: Die Sekunde die Werte addiert werden sollen.
  70. // return: Die Anzahl übriger Tage.
  71. // Beispiel: Alte Zeit: 19:40:18, plusZeit( 10, 5, 30 ); return 1, gespeicherte Zeit: 05:45:48
  72. __declspec( dllexport ) int plusUhrzeit( int stunde, int minute, int sekunde );
  73. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  74. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  75. // zeit: Eine Zeichenfolge die die neue Uhrzeit enthält.
  76. // return: Die Anzahl übriger Tage.
  77. // Beispiel: plusUhrzeit( "h:i:s", "05:20:00" );
  78. // Beispiel: Alte Zeit: 19:40:18, plusZeit( "h:i:s", "10:05:30" ); return 1, gespeicherte Zeit: 05:45:48
  79. __declspec( dllexport ) int plusUhrzeit( const char *format, const char *zeit );
  80. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  81. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  82. // zeit: Ein Text Zeichnung, welches die neue Uhrzeit enthält.
  83. // return: Die Anzahl übriger Tage.
  84. // Beispiel: plusUhrzeit( "h:i:s", new Text( "05:20:00" ) );
  85. // Beispiel: Alte Zeit: 19:40:18, plusZeit( "h:i:s", new Text( "10:05:30" ) ); return 1, gespeicherte Zeit: 05:45:48
  86. __declspec( dllexport ) int plusUhrzeit( const char *format, Text *zeit );
  87. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  88. // stunde: die draufzurechnenden Stunden.
  89. // return: Die Anzahl übriger Tage.
  90. // Beispiel: Alte Zeit: 20:50:30, plusStunde( 10 ); return 1, gespeicherte Zeit: 6:50:30
  91. __declspec( dllexport ) int plusStunde( int stunde );
  92. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  93. // minute: die draufzurechnenden Minuten.
  94. // return: Die Anzahl übriger Tage.
  95. // Beispiel: Alte Zeit: 23:50:30, plusMinute( 11 ); return 1, gespeicherte Zeit: 00:01:30
  96. __declspec( dllexport ) int plusMinute( int minute );
  97. // errechnet die Summe von dieser und einer anderen Uhrzeit und speichert diese.
  98. // sekunde: die draufzurechnenden Sekunden.
  99. // return: Die Anzahl übriger Tage.
  100. // Beispiel: Alte Zeit: 23:59:30, plusSekunde( 40 ); return 1, gespeicherte Zeit: 00:00:10
  101. __declspec( dllexport ) int plusSekunde( int sekunde );
  102. // zieht eine gegebene Uhrzeit von dieser ab und speichert das Ergebnis.
  103. // zeit: Die Uhrzeit, die von dieser abgezogen werden soll.
  104. // return: Die Anzahl übriger Tage.
  105. // Beispiel Alte Zeit: 10:40:18, minusUhrzeit( (19:05:30) ); return -1, gespeicherte Zeit: 15:34:48
  106. __declspec( dllexport ) int minusUhrzeit( Uhrzeit *zeit );
  107. // zieht eine gegebene Uhrzeit von dieser ab und speichert das Ergebnis.
  108. // stunde: Die Stunden, die von dieser Uhrzeit abgezogen werden sollen.
  109. // minute: Die Minuten, die von dieser Uhrzeit abgezogen werden sollen.
  110. // sekunde: Die Sekunden, die von dieser Uhrzeit abgezogen werden sollen.
  111. // return: Die Anzahl übriger Tage.
  112. // Beispiel Alte Zeit: 10:40:18, minusUhrzeit( 19, 05, 30 ); return -1, gespeicherte Zeit: 15:34:48
  113. __declspec( dllexport ) int minusUhrzeit( int stunde, int minute, int sekunde );
  114. // zieht eine gegebene Uhrzeit von dieser ab und speichert das Ergebnis.
  115. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  116. // zeit: Eine Zeichenfolge die die neue Uhrzeit enthält.
  117. // return: Die Anzahl übriger Tage.
  118. // Beispiel Alte Zeit: 10:40:18, minusUhrzeit( "h:i:s", "19:05:30" ); return -1, gespeicherte Zeit: 15:34:48
  119. __declspec( dllexport ) int minusUhrzeit( const char *format, const char *zeit );
  120. // zieht eine gegebene Uhrzeit von dieser ab und speichert das Ergebnis.
  121. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  122. // zeit: Ein Text Zeichnung, welches die neue Uhrzeit enthält.
  123. // return: Die Anzahl übriger Tage.
  124. // Beispiel Alte Zeit: 10:40:18, minusUhrzeit( "h:i:s", new Text( "19:05:30" ) ); return -1, gespeicherte Zeit: 15:34:48
  125. __declspec( dllexport ) int minusUhrzeit( const char *format, Text *zeit );
  126. // zieht eine gegebene Zeit von dieser ab und speichert das Ergebnis.
  127. // stunde: Die abzuziehenden Stunden.
  128. // return: Die Anzahl übriger Tage.
  129. // Beispiel Alte Zeit: 10:40:18, minusStunde( 19 ); return -1, gespeicherte Zeit: 15:40:18
  130. __declspec( dllexport ) int minusStunde( int stunde );
  131. // zieht eine gegebene Zeit von dieser ab und speichert das Ergebnis.
  132. // minute: Die abzuziehenden Minuten.
  133. // return: Die Anzahl übriger Tage.
  134. // Beispiel Alte Zeit: 00:40:18, minusStunde( 50 ); return -1, gespeicherte Zeit: 23:50:18
  135. __declspec( dllexport ) int minusMinute( int minute );
  136. // zieht eine gegebene Zeit von dieser ab und speichert das Ergebnis.
  137. // sekunde: Die abzuziehenden Sekunden.
  138. // return: Die Anzahl übriger Tage.
  139. // Beispiel Alte Zeit: 00:00:20, minusStunde( 50 ); return -1, gespeicherte Zeit: 23:59:30
  140. __declspec( dllexport ) int minusSekunde( int sekunde );
  141. // gibt die Stunde zurück.
  142. __declspec( dllexport ) int getStunde() const;
  143. // gibt die Minute zurück.
  144. __declspec( dllexport ) int getMinute() const;
  145. // gibt die Sekunde zurück.
  146. __declspec( dllexport ) int getSekunde() const;
  147. // gibt die Uhrzeit als Text formatiert zurück.
  148. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit zurückgegeben werden soll. h=Stunde, i=Minute,s=Sekunde.
  149. // Beispiel: Zeit: 5:40:39, getUhrzeit( "h:i:s" ); return: "5:40:39"
  150. __declspec( dllexport ) Text *getUhrzeit( const char *format ) const;
  151. // prüft, ob die Uhrzeit gleich zeit ist.
  152. // zeit: Die Uhrzeit, mit der diese verglichen werden soll.
  153. // return: (true), wenn die beiden Zeiten geich sind. (false), wenn die Zeiten nicht gleich sind.
  154. __declspec( dllexport ) bool istGleich( Uhrzeit *zeit ) const;
  155. // prüft, ob die Uhrzeit gleich zeit ist.
  156. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  157. // zeit: Eine Zeichenfolge die die andere Uhrzeit enthält.
  158. // return: (true), wenn die beiden Zeiten geich sind. (false), wenn die Zeiten nicht gleich sind.
  159. __declspec( dllexport ) bool istGleich( const char *format, const char *zeit ) const;
  160. // prüft, ob die Uhrzeit gleich zeit ist.
  161. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  162. // zeit: Ein Text Zeichnung, welches die andere Uhrzeit enthält.
  163. // return: (true), wenn die beiden Zeiten geich sind. (false), wenn die Zeiten nicht gleich sind.
  164. __declspec( dllexport ) bool istGleich( const char *format, Text *zeit ) const;
  165. // prüft, ob die Uhrzeit gleich der übergebenen Zeit ist. Hier wird nicht beachtet, ob die gegebene Zeit eine gültige Uhrzeit ist.
  166. // stunde: Die Stunden der zu überprüfenden Uhrzeit
  167. // minute: Die Minuten der zu überprüfenden Uhrzeit
  168. // sekunde: Die Sekunden der zu überprüfenden Uhrzeit
  169. // return: (true), wenn die beiden Zeiten geich sind. (false), wenn die Zeiten nicht gleich sind.
  170. __declspec( dllexport ) bool istGleich( int stunde, int minute, int sekunde ) const;
  171. // prüft, ob die Stunde gleich der gegebenen Stunde ist.
  172. // stunde: die zu prüfende Stunde.
  173. // return: (true), wenn die Stunden gleich sind. (false), wenn sie nicht gleich sind.
  174. __declspec( dllexport ) bool stundeGleich( int stunde ) const;
  175. // prüft, ob die Minute gleich der gegebenen Minute ist.
  176. // minute: die zu prüfende Minute.
  177. // return: (true), wenn die Minuten gleich sind. (false), wenn sie nicht gleich sind.
  178. __declspec( dllexport ) bool minuteGleich( int minute ) const;
  179. // prüft, ob die Sekunde gleich der gegebenen Sekunde ist.
  180. // sekunde: die zu prüfende Sekunde.
  181. // return: (true), wenn die Sekunden gleich sind. (false), wenn sie nicht gleich sind.
  182. __declspec( dllexport ) bool sekundeGleich( int sekunde ) const;
  183. // prüft, ob die Uhrzeit kleiner als zeit ist.
  184. // zeit: Die zu prüfende Uhrzeit.
  185. // return: (true), wenn die gespeicherte Zeit kleiner als die übergebene Zeit ist. (false) sonst.
  186. // Beispiel: (5:30:00).istKleiner( (10:40:29) ); return true
  187. __declspec( dllexport ) bool istKleiner( Uhrzeit *zeit ) const;
  188. // prüft, ob die Uhrzeit kleiner als die übergebene Zeit ist.
  189. // stunde: Die Stunden der zu prüfenden Zeit.
  190. // minute: Die Minute der zu prüfenden Zeit.
  191. // sekunde: Die Sekunde der zu prüfenden Zeit.
  192. // return: (true), wenn die gespeicherte Zeit kleiner als die übergebene Zeit ist. (false) sonst.
  193. // Beispiel: (5:30:00).istKleiner( 10, 40, 29 ); return true
  194. __declspec( dllexport ) bool istKleiner( int stunde, int minute, int sekunde ) const;
  195. // prüft, ob die Uhrzeit kleiner als die übergebene Zeit ist.
  196. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  197. // zeit: Eine Zeichenfolge die die andere Uhrzeit enthält.
  198. // return: (true), wenn die gespeicherte Zeit kleiner als die übergebene Zeit ist. (false) sonst.
  199. // Beispiel: (5:30:00).istKleiner( "h:i:s", "10:40:29" ); return true
  200. __declspec( dllexport ) bool istKleiner( const char *format, const char *zeit ) const;
  201. // prüft, ob die Uhrzeit kleiner als die übergebene Zeit ist.
  202. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  203. // zeit: Ein Text Zeichnung, welches die andere Uhrzeit enthält.
  204. // return: (true), wenn die gespeicherte Zeit kleiner als die übergebene Zeit ist. (false) sonst.
  205. // Beispiel: (5:30:00).istKleiner( "h:i:s", "10:40:29" ); return true
  206. __declspec( dllexport ) bool istKleiner( const char *format, Text *zeit ) const;
  207. // prüft, ob die Uhrzeit größer als zeit ist.
  208. // zeit: Die zu prüfende Uhrzeit.
  209. // return: (true), wenn die gespeicherte Zeit größer als die übergebene Zeit ist. (false) sonst.
  210. // Beispiel: (5:30:00).istGrößer( (10:40:29) ); return false
  211. __declspec( dllexport ) bool istLater( Uhrzeit *zeit ) const;
  212. // prüft, ob die Uhrzeit größer als die übergebene Zeit ist.
  213. // stunde: Die Stunden der zu prüfenden Zeit.
  214. // minute: Die Minute der zu prüfenden Zeit.
  215. // sekunde: Die Sekunde der zu prüfenden Zeit.
  216. // return: (true), wenn die gespeicherte Zeit größer als die übergebene Zeit ist. (false) sonst.
  217. // Beispiel: (5:30:00).istGrößer( 10, 40, 29 ); return false
  218. __declspec( dllexport ) bool istLater( int stunde, int minute, int sekunde ) const;
  219. // prüft, ob die Uhrzeit größer als die übergebene Zeit ist.
  220. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  221. // zeit: Eine Zeichenfolge die die andere Uhrzeit enthält.
  222. // return: (true), wenn die gespeicherte Zeit größer als die übergebene Zeit ist. (false) sonst.
  223. // Beispiel: (5:30:00).istGrößer( "h:i:s", "10:40:29" ); return false
  224. __declspec( dllexport ) bool istLater( const char *format, const char *zeit ) const;
  225. // prüft, ob die Uhrzeit größer als die übergebene Zeit ist.
  226. // format: Eine Zeichenfolge, die bestimmt in welcher Form die Uhrzeit in (zeit) vorliegt. h=Stunde, i=Minute,s=Sekunde.
  227. // zeit: Ein Text Zeichnung, welches die andere Uhrzeit enthält.
  228. // return: (true), wenn die gespeicherte Zeit größer als die übergebene Zeit ist. (false) sonst.
  229. // Beispiel: (5:30:00).istGrößer( "h:i:s", "10:40:29" ); return false
  230. __declspec( dllexport ) bool istLater( const char *format, Text *zeit ) const;
  231. // Erhöht den Reference Counting Zähler
  232. // return: this
  233. __declspec( dllexport ) Uhrzeit *getThis();
  234. // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht
  235. // return: 0
  236. __declspec( dllexport ) Uhrzeit *release();
  237. };
  238. // Diese Klasse speichert ein Datum in Form von Jahr, Monat und Tagen
  239. class Datum
  240. {
  241. private:
  242. int jahr, monat, tag;
  243. int ref;
  244. int *maxTage;
  245. void update();
  246. public:
  247. // Erzeugt ein neues Datum Zeichnung mit den Standartwerten 0.0.0.
  248. __declspec( dllexport ) Datum();
  249. // Löscht das Datum.
  250. __declspec( dllexport ) ~Datum();
  251. // Setzt das Datum durch kopieren.
  252. // datum: Das zu speichernde Datum.
  253. __declspec( dllexport ) void setDatum( Datum *datum );
  254. // Setzt das Datum zu den übergebenen Werten.
  255. // jahr: Das Jahr des neuen Datums.
  256. // monat: Der Monat des neuen Datums.
  257. // tag: Der Tag des neuen Datums.
  258. __declspec( dllexport ) void setDatum( int jahr, int monat, int tag );
  259. // Setzt das Datum zu dem übergebenen Wert.
  260. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  261. // datum: Eine Zeichenkette, die das neue Datum enthält.
  262. // Beispiel: setDatum( "y-m-d", "2016-01-25" );
  263. __declspec( dllexport ) void setDatum( const char *format, const char *datum );
  264. // Setzt das Datum zu dem übergebenen Wert.
  265. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  266. // datum: Ein Text Zeichnung, welches das neue Datum enthält.
  267. // Beispiel: setDatum( "y-m-d", new Text( "2016-01-25" ) );
  268. __declspec( dllexport ) void setDatum( const char *format, Text *datum );
  269. // Ändert das Jahr des Datums.
  270. // jahr: Das neue Jahr.
  271. __declspec( dllexport ) void setJahr( int jahr );
  272. // Ändert den Monat des Datums.
  273. // monat: Der neue Monat.
  274. __declspec( dllexport ) void setMonat( int monat );
  275. // Ändert den Tag des Datums.
  276. // tag: Der neue Tag.
  277. __declspec( dllexport ) void setTag( int tag );
  278. // Addiert zum aktuellen Datum das übergebene Datum dazu und speichert das Ergebnis.
  279. // datum: Das zu addierende Datum.
  280. // Beispiel: ( 1.11.1995 ).plusDatum( ( 5.2.7 ) ); neues Datum: 6.1.2003
  281. __declspec( dllexport ) void plusDatum( Datum *datum );
  282. // Addiert zum aktuellen Datum das übergebene Datum dazu und speichert das Ergebnis.
  283. // jahr: Das zu addierende Jahr.
  284. // monat: Der zu addierende Monat.
  285. // tag: Der zu addierende Tag.
  286. // Beispiel: ( 1.11.1995 ).plusDatum( ( 7, 2, 5 ) ); neues Datum: 6.1.2003
  287. __declspec( dllexport ) void plusDatum( int jahr, int monat, int tag );
  288. // Addiert zum aktuellen Datum das übergebene Datum dazu und speichert das Ergebnis.
  289. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  290. // datum: Eine Zeichenkette, die das zu addierende Datum enthält.
  291. // Beispiel: ( 1.11.1995 ).plusDatum( "d.m.y", "5.2.7" ); neues Datum: 6.1.2003
  292. __declspec( dllexport ) void plusDatum( const char *format, const char *datum );
  293. // Addiert zum aktuellen Datum das übergebene Datum dazu und speichert das Ergebnis.
  294. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  295. // datum: Ein Text Zeichnung, welches das zu addierende Datum enthält.
  296. // Beispiel: ( 1.11.1995 ).plusDatum( "d.m.y", new Text( "5.2.7" ) ); neues Datum: 6.1.2003
  297. __declspec( dllexport ) void plusDatum( const char *format, Text *datum );
  298. // Addiert zum aktuellen Datum das übergebene Jahr dazu und speichert das Ergebnis.
  299. // jahr: Das zu addierende Jahr.
  300. // Beispiel: ( 1.11.1995 ).plusJahr( 21 ); neues Datum: 1.11.2016
  301. __declspec( dllexport ) void plusJahr( int jahr );
  302. // Addiert zum aktuellen Datum den übergebenen Monat dazu und speichert das Ergebnis.
  303. // monat: Der zu addierende Monat.
  304. // Beispiel: ( 1.11.1995 ).plusMonat( 13 ); neues Datum: 1.12.1996
  305. __declspec( dllexport ) void plusMonat( int monat );
  306. // Addiert zum aktuellen Datum den übergebenen Tag dazu und speichert das Ergebnis.
  307. // tag: Der zu addierende Tag.
  308. // Beispiel: ( 1.1.2000 ).plusTag( 32 ); neues Datum: 2.2.2000
  309. __declspec( dllexport ) void plusTag( int tag );
  310. // Zieht vom aktuellen Datum das übergebene Datum ab und speichert das Ergebnis.
  311. // datum: Das abzuzuehende Datum.
  312. // Beispiel: ( 2.12.1996 ).minusDatum( ( 1.1.1 ) ); neues Datum: 1.11.1995
  313. __declspec( dllexport ) void minusDatum( Datum *datum );
  314. // Zieht vom aktuellen Datum das übergebene Datum ab und speichert das Ergebnis.
  315. // jahr: Das abzuzuehende Jahr.
  316. // monat: Der abzuzuehende Monat.
  317. // tag: Der abzuzuehende Tag.
  318. // Beispiel: ( 2.12.1996 ).minusDatum( 1, 1, 1 ); neues Datum: 1.11.1995
  319. __declspec( dllexport ) void minusDatum( int jahr, int monat, int tag );
  320. // Zieht vom aktuellen Datum das übergebene Datum ab und speichert das Ergebnis.
  321. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  322. // datum: Eine Zeichenkette, die das abzuziehende Datum enthält.
  323. // Beispiel: ( 2.12.1996 ).minusDatum( "d.m.y", "1.1.1" ); neues Datum: 1.11.1995
  324. __declspec( dllexport ) void minusDatum( const char *format, const char *datum );
  325. // Zieht vom aktuellen Datum das übergebene Datum ab und speichert das Ergebnis.
  326. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  327. // datum: Ein Text Zeichnung, welches das abzuziehende Datum enthält.
  328. // Beispiel: ( 2.12.1996 ).minusDatum( "d.m.y", new Text( "1.1.1" ) ); neues Datum: 1.11.1995
  329. __declspec( dllexport ) void minusDatum( const char *format, Text *datum );
  330. // Zieht vom aktuellen Datum das übergebene Jahr ab und speichert das Ergebnis.
  331. // jahr: Das abzuzuehende Jahr.
  332. // Beispiel: ( 1.11.1996 ).minusJahr( 1 ); neues Datum: 1.11.1995
  333. __declspec( dllexport ) void minusJahr( int jahr );
  334. // Zieht vom aktuellen Datum den übergebenen Monat ab und speichert das Ergebnis.
  335. // monat: Der abzuzuehende Monat.
  336. // Beispiel: ( 1.12.1996 ).minusMonat( 13 ); neues Datum: 1.11.1995
  337. __declspec( dllexport ) void minusMonat( int monat );
  338. // Zieht vom aktuellen Datum den übergebenen Tag ab und speichert das Ergebnis.
  339. // monat: Der abzuzuehende Tag.
  340. // Beispiel: ( 5.2.2016 ).minusMonat( 11 ); neues Datum: 25.1.2016
  341. __declspec( dllexport ) void minusTag( int tag );
  342. // gibt das Jahr zurück.
  343. __declspec( dllexport ) int getJahr() const;
  344. // gibt der Monat zurück.
  345. __declspec( dllexport ) int getMonat() const;
  346. // gibt der Tag zurück.
  347. __declspec( dllexport ) int getTag() const;
  348. // Gibt das Datum als Text Zeichnung zurück.
  349. // format: Eine Zeichenkette, die angibt in welcher Form das Datum zurückgegeben werden soll. y=Jahr, m=Monat, d=Tag.
  350. // Beispiel: ( 1.11.1995 ).getDatum( "y-m-d" ); return: "1995-11-1"
  351. __declspec( dllexport ) Text *getDatum( const char *format ) const;
  352. // Prüft, ob das Datum gleich dem übergebenen Datum ist.
  353. // datum: das zu prüfende Datum.
  354. // return: (true), wenn das übergebene Datum dem gespeicherten entspricht. (false) sonnst.
  355. __declspec( dllexport ) bool istGleich( Datum *datum ) const;
  356. // Prüft, ob das Datum gleich dem übergebenen Datum ist.
  357. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  358. // datum: Eine Zeichenkette, die das zu überprüfende Datum enthält.
  359. // return: (true), wenn das übergebene Datum dem gespeicherten entspricht. (false) sonnst.
  360. // Beispiel: ( 1.11.1995 ).istGleich( "y-m-d", "1995-11-1" ); return: true
  361. __declspec( dllexport ) bool istGleich( const char *format, const char *datum ) const;
  362. // Prüft, ob das Datum gleich dem übergebenen Datum ist.
  363. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  364. // datum: Ein Text Zeichnung, welches das zu überprüfende Datum enthält.
  365. // return: (true), wenn das übergebene Datum dem gespeicherten entspricht. (false) sonnst.
  366. // Beispiel: ( 1.11.1995 ).istGleich( "y-m-d", new Text( "1995-11-1" ) ); return: true
  367. __declspec( dllexport ) bool istGleich( const char *format, Text *datum ) const;
  368. // Prüft, ob das Datum gleich dem übergebenen Datum ist.
  369. // jahr: Das Jahr des zu überprüfenden Datums.
  370. // monat: Der Monat des zu überprüfenden Datums.
  371. // tag: Der Tag des zu überprüfenden Datums.
  372. // return: (true), wenn das übergebene Datum dem gespeicherten entspricht. (false) sonnst.
  373. // Beispiel: ( 1.11.1995 ).istGleich( 1995, 11, 1 ); return: true
  374. __declspec( dllexport ) bool istGleich( int jahr, int monat, int tag ) const;
  375. // Prüft, ob das Jahr gleich dem übergebenen Jahr ist.
  376. // jahr: Das zu prüfende Jahr.
  377. // return: (true), wenn das übergebene Jahr dem gespeicherten entspricht. (false) sonnst.
  378. __declspec( dllexport ) bool jahrGleich( int jahr ) const;
  379. // Prüft, ob der Monat gleich dem übergebenen Monat ist.
  380. // monat: Der zu prüfende Monat.
  381. // return: (true), wenn der übergebene Monat dem gespeicherten entspricht. (false) sonnst.
  382. __declspec( dllexport ) bool monatGleich( int monat ) const;
  383. // Prüft, ob der Tag gleich dem übergebenen Tag ist.
  384. // tag: Der zu prüfende Tag.
  385. // return: (true), wenn der übergebene Tag dem gespeicherten entspricht. (false) sonnst.
  386. __declspec( dllexport ) bool tagGleich( int tag ) const;
  387. // Prüft, ob das gespeicherte Datum kleiner als das übergebene ist.
  388. // datum: Das zu prüfende Datum.
  389. // return: (true), wenn das gespeicherte Datum vor dem übergebenen liegt. (false) sonnst.
  390. // Beispiel: ( 1.11.1995 ).istKleiner( ( 23.1.2016 ) ); return true
  391. __declspec( dllexport ) bool istKleiner( Datum *datum ) const;
  392. // Prüft, ob das gespeicherte Datum kleiner als das übergebene ist.
  393. // jahr: Das Jahr des zu prüfenden Datums.
  394. // monat: Der Monat des zu prüfenden Datums.
  395. // tag: Der Tag des zu prüfenden Datums.
  396. // return: (true), wenn das gespeicherte Datum vor dem übergebenen liegt. (false) sonnst.
  397. // Beispiel: ( 1.11.1995 ).istKleiner( 2016, 1, 23 ); return true
  398. __declspec( dllexport ) bool istKleiner( int jahr, int monat, int tag ) const;
  399. // Prüft, ob das gespeicherte Datum kleiner als das übergebene ist.
  400. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  401. // datum: Eine Zeichenkette, die das zu überprüfende Datum enthält.
  402. // return: (true), wenn das gespeicherte Datum vor dem übergebenen liegt. (false) sonnst.
  403. // Beispiel: ( 1.11.1995 ).istKleiner( "y, m, d", "2016, 1, 23" ); return true
  404. __declspec( dllexport ) bool istKleiner( const char *format, const char *datum ) const;
  405. // Prüft, ob das gespeicherte Datum kleiner als das übergebene ist.
  406. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  407. // datum: Ein Text Zeichnung, welches das zu überprüfende Datum enthält.
  408. // return: (true), wenn das gespeicherte Datum vor dem übergebenen liegt. (false) sonnst.
  409. // Beispiel: ( 1.11.1995 ).istKleiner( "y, m, d", new Text( "2016, 1, 23" ) ); return true
  410. __declspec( dllexport ) bool istKleiner( const char *format, Text *datum ) const;
  411. // Prüft, ob das gespeicherte Datum größer als das übergebene ist.
  412. // datum: Das zu prüfende Datum.
  413. // return: (true), wenn das gespeicherte Datum hinter dem übergebenen liegt. (false) sonnst.
  414. // Beispiel: ( 1.11.1995 ).istGrößer( ( 23.1.2016 ) ); return false
  415. __declspec( dllexport ) bool istLater( Datum *datum ) const;
  416. // Prüft, ob das gespeicherte Datum größer als das übergebene ist.
  417. // jahr: Das Jahr des zu prüfenden Datums.
  418. // monat: Der Monat des zu prüfenden Datums.
  419. // tag: Der Tag des zu prüfenden Datums.
  420. // return: (true), wenn das gespeicherte Datum hinter dem übergebenen liegt. (false) sonnst.
  421. // Beispiel: ( 1.11.1995 ).istGrößer( 2016, 1, 23 ); return false
  422. __declspec( dllexport ) bool istLater( int jahr, int monat, int tag ) const;
  423. // Prüft, ob das gespeicherte Datum größer als das übergebene ist.
  424. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  425. // datum: Eine Zeichenkette, die das zu überprüfende Datum enthält.
  426. // return: (true), wenn das gespeicherte Datum hinter dem übergebenen liegt. (false) sonnst.
  427. // Beispiel: ( 1.11.1995 ).istGrößer( "y, m, d", "2016, 1, 23" ); return false
  428. __declspec( dllexport ) bool istLater( const char *format, const char *datum ) const;
  429. // Prüft, ob das gespeicherte Datum größer als das übergebene ist.
  430. // format: Eine Zeichenkette, die angibt in welcher Form das Datum in (datum) vorhanden ist. y=Jahr, m=Monat, d=Tag.
  431. // datum: Ein Text Zeichnung, welches das zu überprüfende Datum enthält.
  432. // return: (true), wenn das gespeicherte Datum hinter dem übergebenen liegt. (false) sonnst.
  433. // Beispiel: ( 1.11.1995 ).istGrößer( "y, m, d", new Text( "2016, 1, 23" ) ) ); return true
  434. __declspec( dllexport ) bool istLater( const char *format, Text *datum ) const;
  435. // Erhöht den Reference Counting Zähler
  436. // return: this
  437. __declspec( dllexport ) Datum *getThis();
  438. // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht
  439. // return: 0
  440. __declspec( dllexport ) Datum *release();
  441. };
  442. // Diese Klasse vereint die beiden Klassen Datum und Uhrzeit und speichert somit einen Zeitstempel mit Jahr, Monat, Tag, Stunde, Minute und Sekunde
  443. class Zeit
  444. {
  445. private:
  446. Datum *datum;
  447. Uhrzeit *uhrzeit;
  448. int ref;
  449. public:
  450. // Erzeugt ein neues Zeichnung mit den Standartwerten 0.0.0 0:0:0.
  451. __declspec( dllexport ) Zeit();
  452. // Löscht das aktuelle Zeichnung.
  453. __declspec( dllexport ) ~Zeit();
  454. // Ändert die gespeicherte Zeit durch kopieren der Werte aus (zeit).
  455. // zeit: Die neue Zeit.
  456. __declspec( dllexport ) void setZeit( Zeit *zeit );
  457. // Ändert die gespeicherte Zeit.
  458. // jahr: Das neue Jahr.
  459. // monat: Der neue Monat.
  460. // tag: Det neue Tag.
  461. // stunde: Die neue Stunde.
  462. // minute: Die neue Minute.
  463. // sekunde: Die neue Sekunde.
  464. __declspec( dllexport ) void setZeit( int jahr, int monat, int tag, int stunde, int minute, int sekunde );
  465. // Ändert die gespeicherte Zeit.
  466. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  467. // zeit: Eine Zeichenkette, die die neue Zeit enthält.
  468. // Beispiel: setZeit( "y-m-d h:i:s", "2016-1-25 21:59:30" );
  469. __declspec( dllexport ) void setZeit( const char *format, const char *zeit );
  470. // Ändert die gespeicherte Zeit.
  471. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  472. // zeit: Ein Text Zeichnung, welches die neue Zeit enthält.
  473. // Beispiel: setZeit( "y-m-d h:i:s", new Text( "2016-1-25 21:59:30" ) );
  474. __declspec( dllexport ) void setZeit( const char *format, Text *zeit );
  475. // Ändert das gespeicherte Jahr.
  476. // jahr: Das neue Jahr.
  477. __declspec( dllexport ) void setJahr( int jahr );
  478. // Ändert den gespeicherten Monat.
  479. // monat: Der neue Monat.
  480. __declspec( dllexport ) void setMonat( int monat );
  481. // Ändert den gespeicherten Tag.
  482. // tag: Der neue Tag.
  483. __declspec( dllexport ) void setTag( int tag );
  484. // Ändert die gespeicherte Stunde.
  485. // stunde: Die neue Stunde.
  486. __declspec( dllexport ) void setStunde( int stunde );
  487. // Ändert die gespeicherte Minute.
  488. // minute: Die neue Minute.
  489. __declspec( dllexport ) void setMinute( int minute );
  490. // Ändert die gespeicherte Sekunde.
  491. // sekunde: Die neue Sekunde.
  492. __declspec( dllexport ) void setSekunde( int sekunde );
  493. // Addiert die übergebene Zeit und speichert das Ergebnis.
  494. // zeit: Die zu Addierende Zeit.
  495. __declspec( dllexport ) void plusZeit( Zeit *zeit );
  496. // Addiert die übergebene Zeit und speichert das Ergebnis.
  497. // jahr: Das zu addierende Jahr.
  498. // monat: Der zu addierende Monat.
  499. // tag: Der zu addierende Tag.
  500. // stunde: Die zu addierende Stunde.
  501. // minute: Die zu addierende Minute.
  502. // sekunde: Die zu addierende Sekunde.
  503. __declspec( dllexport ) void plusZeit( int jahr, int monat, int tag, int stunde, int minute, int sekunde );
  504. // Addiert die übergebene Zeit und speichert das Ergebnis.
  505. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  506. // zeit: Eine Zeichenkette, die die zu addierende Zeit enthält.
  507. __declspec( dllexport ) void plusZeit( const char *format, const char *zeit );
  508. // Addiert die übergebene Zeit und speichert das Ergebnis.
  509. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  510. // zeit: Ein Text Zeichnung, welches die zu addierende Zeit enthält.
  511. __declspec( dllexport ) void plusZeit( const char *format, Text *zeit );
  512. // Addiert die übergebene Zeit und speichert das Ergebnis.
  513. // jahr: Das zu addierende Jahr.
  514. __declspec( dllexport ) void plusJahr( int jahr );
  515. // Addiert die übergebene Zeit und speichert das Ergebnis.
  516. // monat: Der zu addierende Monat.
  517. __declspec( dllexport ) void plusMonat( int monat );
  518. // Addiert die übergebene Zeit und speichert das Ergebnis.
  519. // tag: Der zu addierende Tag.
  520. __declspec( dllexport ) void plusTag( int tag );
  521. // Addiert die übergebene Zeit und speichert das Ergebnis.
  522. // stunde: Die zu addierende Stunde.
  523. __declspec( dllexport ) void plusStunde( int stunde );
  524. // Addiert die übergebene Zeit und speichert das Ergebnis.
  525. // minute: Die zu addierende Minute.
  526. __declspec( dllexport ) void plusMinute( int minute );
  527. // Addiert die übergebene Zeit und speichert das Ergebnis.
  528. // sekunde: Die zu addierende Sekunde.
  529. __declspec( dllexport ) void plusSekunde( int sekunde );
  530. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  531. // zeit: Die abzuziehende Zeit.
  532. __declspec( dllexport ) void minusZeit( Zeit *zeit );
  533. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  534. // jahr: Das abzuziehende Jahr.
  535. // monat: Der abzuziehende Monat.
  536. // tag: Der abzuziehende Tag.
  537. // stunde: Die abzuziehende Stunde.
  538. // minute: Die abzuziehende Minute.
  539. // sekunde: Die abzuziehende Sekunde.
  540. __declspec( dllexport ) void minusZeit( int jahr, int monat, int tag, int stunde, int minute, int sekunde );
  541. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  542. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  543. // zeit: Eine Zeichenkette, die die abzuziehende Zeit enthält.
  544. __declspec( dllexport ) void minusZeit( const char *format, const char *zeit );
  545. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  546. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  547. // zeit: Ein Text Zeichnung, welches die abzuziehende Zeit enthält.
  548. __declspec( dllexport ) void minusZeit( const char *format, Text *zeit );
  549. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  550. // jahr: Das abzuziehende Jahr.
  551. __declspec( dllexport ) void minusJahr( int jahr );
  552. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  553. // monat: Der abzuziehende Monat.
  554. __declspec( dllexport ) void minusMonat( int monat );
  555. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  556. // tag: Der abzuziehende Tag.
  557. __declspec( dllexport ) void minusTag( int tag );
  558. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  559. // stunde: Die abzuziehende Stunde.
  560. __declspec( dllexport ) void minusStunde( int stunde );
  561. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  562. // minute: Die abzuziehende Minute.
  563. __declspec( dllexport ) void minusMinute( int minute );
  564. // Zieht die übergebene Zeit ab und speichert das Ergebnis.
  565. // sekunde: Die abzuziehende Sekunde.
  566. __declspec( dllexport ) void minusSekunde( int sekunde );
  567. // Gibt die gespeicherte Zeit als Text zurück.
  568. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit zurückgegeben werden soll. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  569. __declspec( dllexport ) Text *getZeit( const char *format ) const;
  570. // Überprüft, ob die Zeit gleich der übergebenen Zeit ist.
  571. // zeit: die zu überprüfende Zeit.
  572. // return: (true), wenn die Zeiten gleich sind. (false) sonst.
  573. __declspec( dllexport ) bool istGleich( Zeit *zeit ) const;
  574. // Überprüft, ob die Zeit gleich der übergebenen Zeit ist.
  575. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  576. // zeit: Eine Zeichenkette, die die zu überprüfende Zeit enthält.
  577. // return: (true), wenn die Zeiten gleich sind. (false) sonst.
  578. __declspec( dllexport ) bool istGleich( const char *format, const char *zeit ) const;
  579. // Überprüft, ob die Zeit gleich der übergebenen Zeit ist.
  580. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  581. // zeit: Eine Text Zeichnung, welches die zu überprüfende Zeit enthält.
  582. // return: (true), wenn die Zeiten gleich sind. (false) sonst.
  583. __declspec( dllexport ) bool istGleich( const char *format, Text *zeit ) const;
  584. // Überprüft, ob die Zeit gleich der übergebenen Zeit ist.
  585. // jahr: Das zu überprüfende Jahr.
  586. // monat: Der zu überprüfende Monat.
  587. // tag: Der zu überprüfende Tag.
  588. // stunde: Die zu überprüfende Stunde.
  589. // minute: Die zu überprüfende Minute.
  590. // sekunde: Die zu überprüfende Sekunde.
  591. // return: (true), wenn die Zeiten gleich sind. (false) sonst.
  592. __declspec( dllexport ) bool istGleich( int jahr, int monat, int tag, int stunde, int minute, int sekunde ) const;
  593. // Gibt das Zeichnung zurück, in dem das Datum gespeichert wird mit erhöhtem Reference Counter.
  594. __declspec( dllexport ) Datum *getDatum() const;
  595. // Gibt das Zeichnung zurück, in dem das Datum gespeichert wird ohne erhöhten Reference Counter.
  596. __declspec( dllexport ) Datum *zDatum() const;
  597. // Gibt das Zeichnung zurück, in dem die Uhrzeit gespeichert wird mit erhöhtem Reference Counter.
  598. __declspec( dllexport ) Uhrzeit *getUhrzeit() const;
  599. // Gibt das Zeichnung zurück, in dem die uhrzeit gespeichert wird ohne erhöhten Reference Counter.
  600. __declspec( dllexport ) Uhrzeit *zUhrzeit() const;
  601. // Überprüft, ob die gespeicherte Zeit kleiner als die übergebene Zeit ist.
  602. // zeit: Die zu überprüfende Zeit.
  603. // return: (true) wenn die gespeicherte Zeit vor der übergebenen Zeit liegt. (false) sonnst.
  604. __declspec( dllexport ) bool istKleiner( Zeit *zeit ) const;
  605. // Überprüft, ob die gespeicherte Zeit kleiner als die übergebene Zeit ist.
  606. // jahr: Das zu überprüfende Jahr.
  607. // monat: Der zu überprüfende Monat.
  608. // tag: Der zu überprüfende Tag.
  609. // stunde: Die zu überprüfende Stunde.
  610. // minute: Die zu überprüfende Minute.
  611. // sekunde: Die zu überprüfende Sekunde.
  612. // return: (true) wenn die gespeicherte Zeit vor der übergebenen Zeit liegt. (false) sonnst.
  613. __declspec( dllexport ) bool istKleiner( int jahr, int monat, int tag, int stunde, int minute, int sekunde ) const;
  614. // Überprüft, ob die gespeicherte Zeit kleiner als die übergebene Zeit ist.
  615. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  616. // zeit: Eine Zeichenkette, die die zu überprüfende Zeit enthält.
  617. // return: (true) wenn die gespeicherte Zeit vor der übergebenen Zeit liegt. (false) sonnst.
  618. __declspec( dllexport ) bool istKleiner( const char *format, const char *zeit ) const;
  619. // Überprüft, ob die gespeicherte Zeit kleiner als die übergebene Zeit ist.
  620. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  621. // zeit: Eine Text Zeichnung, welches die zu überprüfende Zeit enthält.
  622. // return: (true) wenn die gespeicherte Zeit vor der übergebenen Zeit liegt. (false) sonnst.
  623. __declspec( dllexport ) bool istKleiner( const char *format, Text *zeit ) const;
  624. // Überprüft, ob die gespeicherte Zeit größer als die übergebene Zeit ist.
  625. // zeit: Die zu überprüfende Zeit.
  626. // return: (true) wenn die gespeicherte Zeit nach der übergebenen Zeit liegt. (false) sonnst.
  627. __declspec( dllexport ) bool istLater( Zeit *zeit ) const;
  628. // Überprüft, ob die gespeicherte Zeit größer als die übergebene Zeit ist.
  629. // jahr: Das zu überprüfende Jahr.
  630. // monat: Der zu überprüfende Monat.
  631. // tag: Der zu überprüfende Tag.
  632. // stunde: Die zu überprüfende Stunde.
  633. // minute: Die zu überprüfende Minute.
  634. // sekunde: Die zu überprüfende Sekunde.
  635. // return: (true) wenn die gespeicherte Zeit nach der übergebenen Zeit liegt. (false) sonnst.
  636. __declspec( dllexport ) bool istLater( int jahr, int monat, int tag, int stunde, int minute, int sekunde ) const;
  637. // Überprüft, ob die gespeicherte Zeit größer als die übergebene Zeit ist.
  638. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  639. // zeit: Eine Zeichenkette, die die zu überprüfende Zeit enthält.
  640. // return: (true) wenn die gespeicherte Zeit nach der übergebenen Zeit liegt. (false) sonnst.
  641. __declspec( dllexport ) bool istLater( const char *format, const char *zeit ) const;
  642. // Überprüft, ob die gespeicherte Zeit größer als die übergebene Zeit ist.
  643. // format: Eine Zeichenkette, die angibt in welcher Form die neue Zeit in (zeit) vorhanden ist. y=Jahr, m=Monat, d=Tag, h=Stunde, i=Minute, s=Sekunde.
  644. // zeit: Eine Text Zeichnung, welches die zu überprüfende Zeit enthält.
  645. // return: (true) wenn die gespeicherte Zeit nach der übergebenen Zeit liegt. (false) sonnst.
  646. __declspec( dllexport ) bool istLater( const char *format, Text *zeit ) const;
  647. // Erhöht den Reference Counting Zähler
  648. // return: this
  649. __declspec( dllexport ) Zeit *getThis();
  650. // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht
  651. // return: 0
  652. __declspec( dllexport ) Zeit *release();
  653. };
  654. // Diese Klasse kann messen, wie viel Zeit zwischen zwei Zeitpunkten verstrichen ist
  655. class ZeitMesser
  656. {
  657. private:
  658. double start;
  659. double ende;
  660. double messung;
  661. int ref;
  662. public:
  663. // Erzeugt ein neues ZeitMesser Zeichnung
  664. __declspec( dllexport ) ZeitMesser();
  665. // Löscht das aktuelle Zeichnung
  666. __declspec( dllexport ) ~ZeitMesser();
  667. // legt den Startpunkt des zeitstoppens fest
  668. __declspec( dllexport ) void messungStart();
  669. // legt des Endpunkt der Zeitmessung fest
  670. __declspec( dllexport ) void messungEnde();
  671. // gibt den Abstand zwischen start und ende der Messung in Sekunden zurück
  672. __declspec( dllexport ) double getSekunden() const;
  673. // gibt den Abstand zwischen start und ende der Messung in Minuten zurück
  674. __declspec( dllexport ) double getMinuten() const;
  675. // gibt den Abstand zwischen start und ende der Messung in Stunden zurück
  676. __declspec( dllexport ) double getStunden() const;
  677. // Erhöht den Reference Counting Zähler.
  678. // return: this.
  679. __declspec( dllexport ) ZeitMesser *getThis();
  680. // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht.
  681. // return: 0.
  682. __declspec( dllexport ) ZeitMesser *release();
  683. };
  684. // gibt die aktuelle Uhrzeit zurück.
  685. __declspec( dllexport ) Uhrzeit *getUhrzeit();
  686. // gibt das aktuelle Datum zurück.
  687. __declspec( dllexport ) Datum *getDatum();
  688. // gibt die aktuelle Zeit( Datum und Uhrzeit ) zurück.
  689. __declspec( dllexport ) Zeit *getZeit();
  690. // prüft, ob jahr ein Schaltjahr ist.
  691. // jahr: Das zu überprüfende Jahr.
  692. // return: (true), wenn das übergebene jahr ein Schaltjahr ist. (false) sonst.
  693. __declspec( dllexport ) bool istSchaltjahr( int jahr );
  694. }
  695. #endif