#ifndef DBIEPOCHROLLBACK_H #define DBIEPOCHROLLBACK_H /** * * $Id: IDbiEpochRollback.hxx,v 1.1 2011/01/18 05:49:19 finch Exp $ * * \class COMET::IDbiEpochRollback * * * \brief * Concept A register of rollback epochs organised by table name * * \brief * Purpose Simplify epoch rollback management by extracting info. * from DBI registry and serving by table name * * Contact: A.Finch@lancaster.ac.uk * * */ #include #include #ifndef ROOT_Rtypes #if !defined(__CINT__) || defined(__MAKECINT__) #include "Rtypes.h" #endif #endif namespace COMET{ class IDbiRegistry; } namespace COMET { class IDbiEpochRollback { public: typedef std::map name_map_t; // Constructors and destructors. IDbiEpochRollback(); virtual ~IDbiEpochRollback(); // State testing member functions const std::string& GetEpochCondition(const std::string& tableName) const; void Show() const; // State changing member functions void Clear() {fTableToEpoch.clear();} void Set(IDbiRegistry& reg); //Modifies IDbiRegistry private: // Data members /// Look-up table name -> maximum epoch number name_map_t fTableToEpoch; ClassDef(IDbiEpochRollback,0) // Rollback dates by table name. }; }; #endif // DBIEPOCHROLLBACK_H