00001 #ifndef ORACLEDATABASE
00002 #define ORACLEDATABASE
00003
00004 #ifdef HAVE_ORACLE
00005 namespace oracle
00006 {
00007 namespace occi
00008 {
00009 class Environment;
00010 class ConnectionPool;
00011 class Connection;
00012 class Statement;
00013 class ResultSet;
00014 }
00015 }
00016 #endif
00017 #include <vector>
00018 #include "Database.hpp"
00019
00020
00021 namespace ztt {
00022 namespace dcs {
00023
00024 class DataAccess;
00025
00034 class OracleDB : public Database
00035 {
00036 public:
00041 OracleDB();
00045 virtual int createConnection();
00056 virtual int getDataFromDB(char* tablename,
00057 std::vector<char* >* collection,
00058 std::vector<int>*posX,
00059 std::vector<int>*posY,
00060 std::vector<int>*posZ );
00067 virtual int getDataFromDB(char* tablename,
00068 std::vector<char* >* collection );
00075 virtual int setData(char* tablename, char* data);
00079 virtual int killConnection();
00080 private:
00084 unsigned int maxCon;
00088 unsigned int minCon;
00093 unsigned int incCon;
00094 #ifdef HAVE_ORACLE
00095
00096
00097
00098 oracle::occi::Environment* env;
00099
00100
00101
00102 oracle::occi::ConnectionPool* conPl;
00103
00104
00105
00106 oracle::occi::Connection* con;
00107
00108
00109
00110 oracle::occi::Statement* stm;
00111
00112
00113
00114 oracle::occi::ResultSet* rs;
00115 #endif
00116
00120 ztt::dcs::DataAccess* dataAccess;
00121 };
00122 }}
00123 #endif
00124