00001 #ifndef DataFormats_Luminosity_LumiSummaryRunHeader_h 00002 #define DataFormats_Luminosity_LumiSummaryRunHeader_h 00003 00019 #include <vector> 00020 #include <string> 00021 00022 class LumiSummaryRunHeader 00023 { 00024 public: 00025 typedef std::vector<std::string> vstring_t; 00026 00027 //---------------------------------------------------------------- 00028 00030 LumiSummaryRunHeader() {} 00031 00034 LumiSummaryRunHeader(vstring_t& l1names, vstring_t& hltnames); 00035 00037 ~LumiSummaryRunHeader() {} 00038 00040 bool isProductEqual(LumiSummaryRunHeader const& o) const; 00041 00042 //---------------------------------------------------------------- 00043 00045 void setL1Names(const vstring_t& l1names); 00046 00048 void setHLTNames(const vstring_t& hltnames); 00049 00051 void swapL1Names(vstring_t& l1names); 00052 00054 void swapHLTNames(vstring_t& hltnames); 00055 00056 //---------------------------------------------------------------- 00057 00059 std::string getL1Name(unsigned int idx) const { return m_l1Names.at(idx); } 00060 00062 std::string getHLTName(unsigned int idx) const { return m_hltNames.at(idx); } 00063 00065 const vstring_t& getL1Names(vstring_t& l1names) const { return m_l1Names; } 00066 00068 const vstring_t& getHLTNames(vstring_t& hltnames) const { return m_hltNames; } 00069 00071 unsigned int getL1Index(const std::string& name) const; 00072 00074 unsigned int getHLTIndex(const std::string& name) const; 00075 00076 //---------------------------------------------------------------- 00077 00078 private: 00079 vstring_t m_l1Names; // L1 trigger-name vector. 00080 vstring_t m_hltNames; // HLT path-name vector. 00081 }; 00082 00083 #endif