// -*- mode: c++ -*- // $Id: BrRdbmDb.h,v 1.1 2001/10/08 10:31:32 cholm Exp $ // $Author: cholm $ // $Date: 2001/10/08 10:31:32 $ // $Copyright: 2000 Brahms Collaboration // #ifndef BRAT_BrRdbmDb #define BRAT_BrRdbmDb #ifndef ROOT_TSQLServer #include "TSQLServer.h" #endif #ifndef ROOT_TSQLResult #include "TSQLResult.h" #endif #ifndef ROOT_TSQLRow #include "TSQLRow.h" #endif #ifndef BRAT_BrDbQuery #include "BrDbQuery.h" #endif #ifndef BRAT_BrDb #include "BrDb.h" #endif class BrRdbmDb : public BrVirtualDb { protected: TSQLServer* fConnection; // The actual connection Bool_t ReadUserPasswd(); // Read user and/or password Bool_t ReadBratDbRc(); // Read ~/.bratdbrc Bool_t PromptUser(); // Prompt for user name Bool_t PromptPasswd(); // Prompt for pasword TObject* GetConnection() { return fConnection; } public: BrRdbmDb(const Char_t* name, const Char_t* title=""); virtual ~BrRdbmDb(); virtual Bool_t Connect(Option_t* option=""); virtual void Close(Option_t* option=""); virtual TSQLResult* Query(BrDbQuery* query); virtual TSQLRow* GetSingle(const Char_t* table, const Char_t* condition); virtual TSQLResult* GetMultiple(const Char_t* table, const Char_t* condition); virtual Bool_t IsConnected() const; virtual void LockTables(const Char_t* writetables,int i=0); virtual void UnLockTables(); virtual Int_t Increment(); virtual void CreateSequence(); ClassDef(BrRdbmDb,0) // Rdbm DB interface implementation } ; #endif // _BrRdbmDb_HH