Datenbank.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #ifndef Datenbank_H
  2. #define Datenbank_H
  3. #include <sql.h>
  4. #include <Text.h>
  5. #include <Array.h>
  6. #include <InitDatei.h>
  7. using namespace Framework;
  8. using namespace sql;
  9. // Administratoren
  10. namespace Admin_Recht
  11. {
  12. const int LSStarten = 16;
  13. const int LSBeenden = 17;
  14. const int LSPausieren = 18;
  15. const int LSMCChange = 19;
  16. }
  17. class ESDatenbank
  18. {
  19. private:
  20. Datenbank *datenbank;
  21. CRITICAL_SECTION cs;
  22. int ref;
  23. public:
  24. // Konstruktor
  25. ESDatenbank( InitDatei *zIni );
  26. // Destruktor
  27. ~ESDatenbank();
  28. // nicht constant
  29. void lock();
  30. void unlock();
  31. int istAdministrator( const char *name, const char *passwort );
  32. bool adminHatRecht( int admin, int recht );
  33. bool proveKlient( int num, int sNum );
  34. Text *getKlientKey( int cId );
  35. void unregisterKlient( int num, int sNum );
  36. bool setServerStatus( int id, int status );
  37. bool setMaxClients( int id, int maxC );
  38. int getAdminPort( int id );
  39. bool serverIstNichtPausiert( int id );
  40. bool getPatchServer( int client, Text *ip, int *port );
  41. bool getRegisterServer( int client, Text *ip, int *port );
  42. bool getLoginServer( int client, Text *ip, int *port );
  43. bool getInformationServer( int client, Text *ip, int *port );
  44. bool getChatServer( int client, Text *ip, int *port );
  45. bool getAnmeldungServer( int client, Text *ip, int *port );
  46. bool getSpielServer( int client, Text *ip, int *port );
  47. bool getShopServer( int client, Text *ip, int *port );
  48. bool getNewsServer( int client, Text *ip, int *port );
  49. bool getHistorieServer( int client, Text *ip, int *port );
  50. bool getKartenServer( int client, Text *ip, int *port );
  51. bool getEditorServer( int client, Text *ip, int *port );
  52. void removeKlient( int klientId );
  53. int clientIstEingeloggt( int clientId );
  54. int logoutKlient( int klientId, Array< int > *ret );
  55. int getSpielerAusGruppe( int gruppeId, Array< int > *accountId );
  56. int kickSpielerAusGruppe( int gruppeId, int accountId );
  57. int getGruppeAdmin( int gruppeId );
  58. int getSpielerAusChatroom( int chatroomId, Array< int > *accountId );
  59. int getChatroomAdmin( int chatroomId );
  60. // constant
  61. Text *getLetzterFehler() const;
  62. // Reference Counting
  63. ESDatenbank *getThis();
  64. ESDatenbank *release();
  65. };
  66. #endif