12 #ifndef ROOT_TSQLClassInfo 
   13 #define ROOT_TSQLClassInfo 
   21 class TSQLClassColumnInfo final : 
public TObject {
 
   24    TSQLClassColumnInfo() {} 
 
   25    TSQLClassColumnInfo(
const char *name, 
const char *sqlname, 
const char *sqltype);
 
   27    const char *GetName() const final { 
return fName.Data(); }
 
   28    const char *GetSQLName()
 const { 
return fSQLName.Data(); }
 
   29    const char *GetSQLType()
 const { 
return fSQLType.Data(); }
 
   36    ClassDefOverride(TSQLClassColumnInfo, 1); 
 
   41 class TSQLClassInfo final : 
public TObject {
 
   44    TSQLClassInfo(Long64_t classid, 
const char *classname, Int_t version);
 
   45    virtual ~TSQLClassInfo();
 
   47    Long64_t GetClassId()
 const { 
return fClassId; }
 
   49    const char *GetName() const final { 
return fClassName.Data(); }
 
   50    Int_t GetClassVersion()
 const { 
return fClassVersion; }
 
   52    void SetClassTableName(
const char *name) { fClassTable = name; }
 
   53    void SetRawTableName(
const char *name) { fRawTable = name; }
 
   55    const char *GetClassTableName()
 const { 
return fClassTable.Data(); }
 
   56    const char *GetRawTableName()
 const { 
return fRawTable.Data(); }
 
   58    void SetTableStatus(TObjArray *columns = 0, Bool_t israwtable = kFALSE);
 
   59    void SetColumns(TObjArray *columns);
 
   60    void SetRawExist(Bool_t on) { fRawtableExist = on; }
 
   62    Bool_t IsClassTableExist()
 const { 
return GetColumns() != 0; }
 
   63    Bool_t IsRawTableExist()
 const { 
return fRawtableExist; }
 
   65    TObjArray *GetColumns()
 const { 
return fColumns; }
 
   66    Int_t FindColumn(
const char *name, Bool_t sqlname = kFALSE);
 
   70    Int_t fClassVersion{0};         
 
   74    TObjArray *fColumns{
nullptr};   
 
   75    Bool_t fRawtableExist{kFALSE};  
 
   77    ClassDefOverride(TSQLClassInfo, 1);