Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 13:11:39

0001 #ifndef DQM_SiStripCommissioningSummary_SummaryPlot_H
0002 #define DQM_SiStripCommissioningSummary_SummaryPlot_H
0003 
0004 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h"
0005 #include <iostream>
0006 #include <sstream>
0007 #include <string>
0008 
0009 class SummaryPlot;
0010 
0011 /** Provides debug information. */
0012 std::ostream& operator<<(std::ostream&, const SummaryPlot&);
0013 
0014 /** 
0015     @class SummaryPlot
0016     @author R.Bainbridge, P.Kalavase
0017     @brief Class holding info that defines a summary plot.
0018 */
0019 class SummaryPlot {
0020 public:
0021   // ---------- Con(de)structors ----------
0022 
0023   /** */
0024   SummaryPlot(const std::string& monitorable,
0025               const std::string& presentation,
0026               const std::string& granularity,
0027               const std::string& level);
0028 
0029   /** */
0030   SummaryPlot(const SummaryPlot&);
0031 
0032   /** */
0033   SummaryPlot();
0034 
0035   /** */
0036   ~SummaryPlot() { ; }
0037 
0038   // ---------- Access to member data ----------
0039 
0040   /** */
0041   inline const sistrip::Monitorable& monitorable() const;
0042 
0043   /** */
0044   inline const sistrip::Presentation& presentation() const;
0045 
0046   /** */
0047   inline const sistrip::View& view() const;
0048 
0049   /** */
0050   inline const sistrip::Granularity& granularity() const;
0051 
0052   /** */
0053   inline const std::string& level() const;
0054 
0055   // ---------- Utility methods ----------
0056 
0057   /** */
0058   inline const bool& isValid() const;
0059 
0060   /** */
0061   void reset();
0062 
0063   /** */
0064   void print(std::stringstream&) const;
0065 
0066 private:
0067   // ---------- Private methods ----------
0068 
0069   /** */
0070   void check();
0071 
0072   // ---------- Private member data ----------
0073 
0074   sistrip::Monitorable mon_;
0075 
0076   sistrip::Presentation pres_;
0077 
0078   sistrip::View view_;
0079 
0080   sistrip::Granularity gran_;
0081 
0082   std::string level_;
0083 
0084   bool isValid_;
0085 };
0086 
0087 // ---------- Inline methods ----------
0088 
0089 const sistrip::Monitorable& SummaryPlot::monitorable() const { return mon_; }
0090 const sistrip::Presentation& SummaryPlot::presentation() const { return pres_; }
0091 const sistrip::View& SummaryPlot::view() const { return view_; }
0092 const sistrip::Granularity& SummaryPlot::granularity() const { return gran_; }
0093 const std::string& SummaryPlot::level() const { return level_; }
0094 const bool& SummaryPlot::isValid() const { return isValid_; }
0095 
0096 #endif  // DQM_SiStripCommissioningSummary_SummaryPlot_H