InitDatei.h 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. #ifndef InitDatei_H
  2. #define InitDatei_H
  3. #include "Array.h"
  4. namespace Framework
  5. {
  6. class Text; //! Text.h
  7. //! Verwaltet Initialisierungsdateien in denen Bestimmte Variablen im Format
  8. //! name=Wert gespeichert sind
  9. class InitDatei : public virtual ReferenceCounter
  10. {
  11. private:
  12. Text* pfad;
  13. RCArray<Text>* name;
  14. RCArray<Text>* wert;
  15. public:
  16. //! Konstruktor
  17. DLLEXPORT InitDatei();
  18. //! Konstruktor
  19. //! \param pfad Der Pfad zur Datei
  20. DLLEXPORT InitDatei(Text* pfad);
  21. //! Konstruktor
  22. //! \param pfad Der Pfad zur Datei
  23. DLLEXPORT InitDatei(const char* pfad);
  24. //! Destruktor
  25. DLLEXPORT ~InitDatei();
  26. //! Setzt den Pfad zur Datei
  27. //! \param pfad Der Pfad zur Datei
  28. DLLEXPORT void setPfad(Text* pfad);
  29. //! Setzt den Pfad zur Datei
  30. //! \param pfad Der Pfad zur Datei
  31. DLLEXPORT void setPfad(const char* pfad);
  32. //! Laehdt die Werte aus der Datei
  33. //! \return 1, falls das Laden erfolgreich war. 0, wenn ein fehler
  34. //! aufgetreten ist.
  35. DLLEXPORT bool laden();
  36. //! Fuegt der Datei einen Wert hinzu
  37. //! \param name Der Name des Wertes
  38. //! \param wert Der Wert, der gespeichert werden soll
  39. //! \return 1, falls der Wert erfolgreich hinzugefuegt wurde
  40. DLLEXPORT bool addWert(Text* name, Text* wert);
  41. //! Fuegt der Datei einen Wert hinzu
  42. //! \param name Der Name des Wertes
  43. //! \param wert Der Wert, der gespeichert werden soll
  44. //! \return 1, falls der Wert erfolgreich hinzugefuegt wurde
  45. DLLEXPORT bool addWert(const char* name, const char* wert);
  46. //! AEndert einen bestimmten Wert
  47. //! \param name Der Name des Wertes
  48. //! \param wert Der Wert, der gespeichert werden soll
  49. //! \return 1, falls der Wert vorhanden war und erfolgreich geaendert
  50. //! werden konnte
  51. DLLEXPORT bool setWert(Text* name, Text* wert);
  52. //! AEndert einen bestimmten Wert
  53. //! \param name Der Name des Wertes
  54. //! \param wert Der Wert, der gespeichert werden soll
  55. //! \return 1, falls der Wert vorhanden war und erfolgreich geaendert
  56. //! werden konnte
  57. DLLEXPORT bool setWert(const char* name, const char* wert);
  58. //! AEndert einen bestimmten Wert
  59. //! \param num Der Index des Wertes der geaendert werden soll
  60. //! \param wert Der Wert, der gespeichert werden soll
  61. //! \return 1, falls der Wert vorhanden war und erfolgreich geaendert
  62. //! werden konnte
  63. DLLEXPORT bool setWert(int num, Text* wert);
  64. //! AEndert einen bestimmten Wert
  65. //! \param num Der Index des Wertes der geaendert werden soll
  66. //! \param wert Der Wert, der gespeichert werden soll
  67. //! \return 1, falls der Wert vorhanden war und erfolgreich geaendert
  68. //! werden konnte
  69. DLLEXPORT bool setWert(int num, const char* wert);
  70. //! Loescht einen bestimmten Wert
  71. //! \param name Der Name des Wertes, der geloescht werden soll
  72. //! \return 1, falls der Wert vorhanden war und erfolgreich geloescht
  73. //! werden konnte
  74. DLLEXPORT bool removeWert(Text* name);
  75. //! Loescht einen bestimmten Wert
  76. //! \param name Der Name des Wertes, der geloescht werden soll
  77. //! \return 1, falls der Wert vorhanden war und erfolgreich geloescht
  78. //! werden konnte
  79. DLLEXPORT bool removeWert(const char* name);
  80. //! Loescht einen bestimmten Wert
  81. //! \param num Der Index des Wertes der geloescht werden soll
  82. //! \return 1, falls der Wert vorhanden war und erfolgreich geloescht
  83. //! werden konnte
  84. DLLEXPORT bool removeWert(int num);
  85. //! Loescht alle Werte aus der Datei
  86. DLLEXPORT void removeAlle();
  87. //! Speichert alle Werte in der Datei
  88. //! \return 1, falls das Speichern erfolgreich war
  89. DLLEXPORT bool speichern();
  90. //! Gibt die Anzahl der gespeicherten Werte zurueck
  91. DLLEXPORT int getWertAnzahl() const;
  92. //! UEberprueft, ob ein bestimmter Wert existiert
  93. //! \param name Der Name, nach dem gesucht werden soll
  94. //! \return 1, falls der Wert gefunden wurde
  95. DLLEXPORT bool wertExistiert(Text* name);
  96. //! UEberprueft, ob ein bestimmter Wert existiert
  97. //! \param name Der Name, nach dem gesucht werden soll
  98. //! \return 1, falls der Wert gefunden wurde
  99. DLLEXPORT bool wertExistiert(const char* name);
  100. //! Gibt den Index eines Bestimmten Wertes zurueck
  101. //! \param name Der Name des Wertes, nach dem gesucht werden soll
  102. //! \return -1, falls der Wert nicht gefunden wurde. Der Index des
  103. //! Wertes.
  104. DLLEXPORT int getWertNummer(Text* name);
  105. //! Gibt den Index eines Bestimmten Wertes zurueck
  106. //! \param name Der Name des Wertes, nach dem gesucht werden soll
  107. //! \return -1, falls der Wert nicht gefunden wurde. Der Index des
  108. //! Wertes.
  109. DLLEXPORT int getWertNummer(const char* name);
  110. //! Gibt einen bestimmten Wert zurueck
  111. //! \param name Der Name des Wertes, der zurueckgegeben werden soll
  112. //! \return 0, falls der Wert nicht gefunden wurde.
  113. DLLEXPORT Text* getWert(Text* name);
  114. //! Gibt einen bestimmten Wert zurueck
  115. //! \param name Der Name des Wertes, der zurueckgegeben werden soll
  116. //! \return 0, falls der Wert nicht gefunden wurde.
  117. DLLEXPORT Text* getWert(const char* name);
  118. //! Gibt einen bestimmten Wert zurueck
  119. //! \param num Der Index des Wertes, der zurueckgegeben werden soll
  120. //! \return 0, falls der Wert nicht gefunden wurde.
  121. DLLEXPORT Text* getWert(int num);
  122. //! Gibt einen bestimmten Wert zurueck
  123. //! \param name Der Name des Wertes, der zurueckgegeben werden soll
  124. //! \return 0, falls der Wert nicht gefunden wurde. Der Wert ohne
  125. //! erhoehten Reference Counter
  126. DLLEXPORT Text* zWert(Text* name);
  127. //! Gibt einen bestimmten Wert zurueck
  128. //! \param name Der Name des Wertes, der zurueckgegeben werden soll
  129. //! \return 0, falls der Wert nicht gefunden wurde. Der Wert ohne
  130. //! erhoehten Reference Counter
  131. DLLEXPORT Text* zWert(const char* name);
  132. //! Gibt einen bestimmten Wert zurueck
  133. //! \param num Der Index des Wertes, der zurueckgegeben werden soll
  134. //! \return 0, falls der Wert nicht gefunden wurde. Der Wert ohne
  135. //! erhoehten Reference Counter
  136. DLLEXPORT Text* zWert(int num);
  137. //! Gibt den Namen eines bestimmten Wertes zurueck
  138. //! \param num Der Index des Wertes, dessen Namen zurueckgegeben werden
  139. //! soll \return 0, falls der Wert nicht gefunden wurde.
  140. DLLEXPORT Text* getName(int num);
  141. //! Gibt den Namen eines bestimmten Wertes zurueck
  142. //! \param num Der Index des Wertes, dessen Namen zurueckgegeben werden
  143. //! soll \return 0, falls der Wert nicht gefunden wurde. Der Name ohne
  144. //! erhoehten Reference Counter
  145. DLLEXPORT Text* zName(int num);
  146. //! Gibt den Pfad zur Datei zurueck
  147. DLLEXPORT Text* getPfad() const;
  148. //! Gibt den Pfad zur Datei ohne erhoehten Reference Counter zurueck
  149. DLLEXPORT Text* zPfad() const;
  150. };
  151. } // namespace Framework
  152. #endif