Datenbank.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #ifndef Datenbank_H
  2. #define Datenbank_H
  3. #include <sql.h>
  4. #include <Text.h>
  5. #include <InitDatei.h>
  6. using namespace Framework;
  7. using namespace sql;
  8. namespace Admin_Recht
  9. {
  10. const int LSStarten = 0x0000000C;
  11. const int LSBeenden = 0x0000000D;
  12. const int LSPausieren = 0x0000000E;
  13. const int LSMCChange = 0x0000000F;
  14. }
  15. class LSDatenbank
  16. {
  17. private:
  18. Datenbank *datenbank;
  19. CRITICAL_SECTION cs;
  20. int ref;
  21. public:
  22. // Konstruktor
  23. LSDatenbank( InitDatei *zIni );
  24. // Destruktor
  25. ~LSDatenbank();
  26. // nicht constant
  27. void lock();
  28. void unlock();
  29. int istAdministrator( const char *name, const char *passwort );
  30. bool adminHatRecht( int id, int recht );
  31. bool proveKlient( int num, int sNum );
  32. Text *getKlientKey( int cId );
  33. void unregisterKlient( int num, int sNum );
  34. bool serverAnmelden( InitDatei *zIni );
  35. bool setServerStatus( int id, int status );
  36. bool setMaxClients( int id, int maxC );
  37. int getAdminPort( int id );
  38. bool serverIstNichtPausiert( int id );
  39. int getAccountId( char *name, char *pass );
  40. int loginKlient( int klientId, int accountId );
  41. bool accountGeheim( int accountId, char *geheim );
  42. int *kickKlient( int accountId );
  43. void accountOnline( int accountId, char *ip, unsigned char *locIp, char *pcName );
  44. int logoutKlient( int klientId, Array< int > *ret );
  45. Text **getChatServerIpPort( int id );
  46. bool getSpielServerPortIp( int spielErstelltId, unsigned short *port, Text *ip );
  47. int getSpielerAusGruppe( int gruppeId, Array< int > *accountId );
  48. int kickSpielerAusGruppe( int gruppeId, int accountId );
  49. bool getChatServerPortIp( int accountId, unsigned short *port, Text *ip );
  50. int getGruppeAdmin( int gruppeId );
  51. int getSpielerAusChatroom( int chatroomId, Array< int > *accountId );
  52. int getChatroomAdmin( int chatroomId );
  53. // constant
  54. Text *getLetzterFehler() const;
  55. // Reference Counting
  56. LSDatenbank *getThis();
  57. LSDatenbank *release();
  58. };
  59. #endif