Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:01:58

0001 #ifndef Cond_IOVKeysDescription_h
0002 #define Cond_IOVKeysDescription_h
0003 
0004 #include "CondFormats/Common/interface/IOVDescription.h"
0005 #include "CondFormats/Common/interface/SmallWORMDict.h"
0006 #include <string>
0007 
0008 namespace cond {
0009 
0010   /*
0011    * Describe the fixed set of keys to be used in a keylist 
0012    */
0013   class IOVKeysDescription : public IOVDescription {
0014   public:
0015     IOVKeysDescription() {}
0016     explicit IOVKeysDescription(std::vector<std::string> const& idict, std::string const& itag)
0017         : dict_m(idict), m_tag(itag) {}
0018 
0019     ~IOVKeysDescription() override {}
0020     IOVKeysDescription* clone() const override { return new IOVKeysDescription(*this); }
0021 
0022     // the associated "tag"
0023     std::string const& tag() const { return m_tag; }
0024 
0025     // the list of keys
0026     SmallWORMDict const& dict() const { return dict_m; }
0027 
0028   private:
0029     SmallWORMDict dict_m;
0030     std::string m_tag;
0031 
0032     COND_SERIALIZABLE;
0033   };
0034 
0035 }  // namespace cond
0036 
0037 #endif