00001 #ifndef DBITABLEROW_H 00002 #define DBITABLEROW_H 00003 00007 00037 #include "TObject.h" 00038 #include <string> 00039 #include <cassert> 00040 00041 class DbiOutRowStream; 00042 class DbiResult; 00043 class DbiResultSet; 00044 class DbiTableProxy; 00045 class DbiValidityRec; 00046 00047 class DbiTableRow : public TObject 00048 { 00049 00050 public: 00051 00052 // Constructors and destructors. 00053 DbiTableRow(); 00054 DbiTableRow(const DbiTableRow& from); 00055 virtual ~DbiTableRow(); 00056 00057 // State testing member functions 00058 virtual Bool_t CanL2Cache() const { return kFALSE; } 00059 virtual Int_t GetAggregateNo() const { return -1; } 00060 DbiResult* GetOwner() const { return fOwner; } 00061 virtual DbiTableRow* CreateTableRow() const =0; 00062 virtual UInt_t GetIndex(UInt_t defIndex) const {return defIndex;} 00063 00064 // State modifying member functions 00065 void SetOwner(DbiResult* owner) {fOwner = owner;} 00066 00067 // I/O member functions 00068 virtual void Fill(DbiResultSet& rs, 00069 const DbiValidityRec* vrec) =0; 00070 virtual void Store(DbiOutRowStream& /* ors */, 00071 const DbiValidityRec* /* vrec */) const { assert(0); } 00072 00073 private: 00074 00075 // Data members 00076 00078 DbiResult * fOwner; 00079 00080 ClassDef(DbiTableRow,0) // DbiTableRow for a specific database table. 00081 00082 }; 00083 00084 00085 #endif // DBITABLEROW_H
1.3.9.1