Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:02:05

0001 #ifndef DTKeyedConfig_H
0002 #define DTKeyedConfig_H
0003 /** \class DTKeyedConfig
0004  *
0005  *  Description: 
0006  *
0007  *
0008  *  $Date: 2010/03/18 16:02:30 $
0009  *  $Revision: 1.1.2.1 $
0010  *  \author Paolo Ronchese INFN Padova
0011  *
0012  */
0013 
0014 //----------------------
0015 // Base Class Headers --
0016 //----------------------
0017 #include "CondFormats/Serialization/interface/Serializable.h"
0018 
0019 #include "CondFormats/Common/interface/BaseKeyed.h"
0020 
0021 //------------------------------------
0022 // Collaborating Class Declarations --
0023 //------------------------------------
0024 
0025 //---------------
0026 // C++ Headers --
0027 //---------------
0028 #include <string>
0029 #include <vector>
0030 
0031 //              ---------------------
0032 //              -- Class Interface --
0033 //              ---------------------
0034 
0035 class DTKeyedConfig : public cond::BaseKeyed {
0036 public:
0037   /** Constructor
0038    */
0039   DTKeyedConfig();
0040   DTKeyedConfig(const DTKeyedConfig& obj);
0041 
0042   /** Destructor
0043    */
0044   ~DTKeyedConfig() override;
0045 
0046   /** Operations
0047    */
0048   ///
0049   int getId() const;
0050   void setId(int id);
0051   void add(const std::string& data);
0052   void add(int id);
0053 
0054   typedef std::vector<std::string>::const_iterator data_iterator;
0055   typedef std::vector<int>::const_iterator link_iterator;
0056   data_iterator dataBegin() const;
0057   data_iterator dataEnd() const;
0058   link_iterator linkBegin() const;
0059   link_iterator linkEnd() const;
0060 
0061 private:
0062   int cfgId;
0063   std::vector<std::string> dataList;
0064   std::vector<int> linkList;
0065 
0066   COND_SERIALIZABLE;
0067 };
0068 
0069 #endif  // DTKeyedConfig_H