00001 #ifndef CondFormats_DQMObjects_DQMSummary_h 00002 #define CondFormats_DQMObjects_DQMSummary_h 00003 00004 #include <iostream> 00005 #include <string> 00006 #include <vector> 00007 00008 /* 00009 * \class DQMSummary 00010 * 00011 * hosting DQM information 00012 * 00013 * \author Salvatore Di Guida (diguida) - CERN (Mar-27-2009) 00014 * 00015 */ 00016 00017 class DQMSummary { 00018 public: 00019 long long m_run; 00020 struct RunItem { 00021 long long m_lumisec; 00022 struct LumiItem { 00023 std::string m_subsystem; 00024 std::string m_reportcontent; 00025 std::string m_type; 00026 double m_status; 00027 }; 00028 std::vector<LumiItem> m_lumisummary; 00029 }; 00030 DQMSummary(){} 00031 virtual ~DQMSummary(){} 00032 std::vector<RunItem> m_summary; 00033 void printAllValues() const { 00034 std::cout << "run number = " << m_run << std::endl; 00035 std::vector<RunItem>::const_iterator runIt; 00036 for(runIt = m_summary.begin(); runIt != m_summary.end(); ++runIt) { 00037 std::cout << "--- lumisection = " << runIt->m_lumisec << std::endl; 00038 std::vector<RunItem::LumiItem>::const_iterator lumiIt; 00039 for(lumiIt = runIt->m_lumisummary.begin(); lumiIt != runIt->m_lumisummary.end(); ++lumiIt) { 00040 std::cout << "------ subsystem: " << lumiIt->m_subsystem 00041 << ", report content: " << lumiIt->m_reportcontent 00042 << ", type: " << lumiIt->m_type 00043 << ", status = " << lumiIt->m_status 00044 << std::endl; 00045 } 00046 } 00047 } 00048 }; 00049 00050 #endif