Database.h
上传用户:jxpjxmjjw
上传日期:2009-12-07
资源大小:5877k
文件大小:2k
源码类别:

模拟服务器

开发平台:

Visual C++

  1. // Copyright (C) 2004 Team Python //   // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. //  // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the // GNU General Public License for more details. //  // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software  // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef WOWPYTHONSERVER_DATABASE_H #define WOWPYTHONSERVER_DATABASE_H #include "Common.h" #include "Singleton.h" #include "DatabaseInterface.h" class Database : public Singleton < Database > { public:   Database( );   ~Database( );   void Initialise( const char *host, const char *user, const char *password, const char *database, uint32 port = 3306 );   void removeDatabaseInterface( DatabaseInterface *db );   DatabaseInterface * createDatabaseInterface( );   inline void toggleAutoCreateAcct() { m_bAutoCreateAcct = !m_bAutoCreateAcct; };   inline bool isAutoCreateAccts() { return m_bAutoCreateAcct; };   //START OF LINA FIREWALL V3
  2.   inline void toggleFirewall() { m_bFirewall = !m_bFirewall; };
  3.   inline bool isFirewall() { return m_bFirewall; };
  4.   inline void toggleTestIP() { m_bTestIP = !m_bTestIP; };
  5.   inline bool isTestIP() { return m_bTestIP; };
  6.   //END OF LINA FIREWALL V3
  7. private:
  8.   std::string mHost,mUser,mPassword,mDatabase;
  9.   uint32 mPort;
  10.   std::set < DatabaseInterface * > mInterfaces;
  11.   bool m_bAutoCreateAcct;
  12.   //START OF LINA FIREWALL V3
  13.   bool m_bFirewall;
  14.   bool m_bTestIP;
  15.   //END OF LINA FIREWALL V3 }; #endif