00001 #ifndef CondFormats_SiStripObjects_VpspScanAnalysis_H 00002 #define CondFormats_SiStripObjects_VpspScanAnalysis_H 00003 00004 #include "CondFormats/SiStripObjects/interface/CommissioningAnalysis.h" 00005 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h" 00006 #include <boost/cstdint.hpp> 00007 #include <sstream> 00008 #include <vector> 00009 00015 class VpspScanAnalysis : public CommissioningAnalysis { 00016 00017 public: 00018 00019 // ---------- con(de)structors ---------- 00020 00021 VpspScanAnalysis( const uint32_t& key ); 00022 00023 VpspScanAnalysis(); 00024 00025 virtual ~VpspScanAnalysis() {;} 00026 00027 friend class VpspScanAlgorithm; 00028 00029 // ---------- public interface ---------- 00030 00032 bool isValid() const; 00033 00035 inline const VInt& vpsp() const; 00036 00038 inline const VInt& adcLevel() const; 00039 00041 inline const VInt& fraction() const; 00042 00044 inline const VInt& topEdge() const; 00045 00047 inline const VInt& bottomEdge() const; 00048 00050 inline const VInt& topLevel() const; 00051 00053 inline const VInt& bottomLevel() const; 00054 00055 // ---------- misc ---------- 00056 00058 void print( std::stringstream&, uint32_t not_used = 0 ); 00059 00061 void summary( std::stringstream& ) const; 00062 00064 void reset(); 00065 00066 // ---------- private member data ---------- 00067 00068 private: 00069 00071 VInt vpsp_; 00072 00073 VInt adcLevel_; 00074 00075 VInt fraction_; 00076 00077 VInt topEdge_; 00078 00079 VInt bottomEdge_; 00080 00081 VInt topLevel_; 00082 00083 VInt bottomLevel_; 00084 00085 }; 00086 00087 // ---------- Inline methods ---------- 00088 00089 const VpspScanAnalysis::VInt& VpspScanAnalysis::vpsp() const { return vpsp_; } 00090 const VpspScanAnalysis::VInt& VpspScanAnalysis::adcLevel() const { return adcLevel_; } 00091 const VpspScanAnalysis::VInt& VpspScanAnalysis::fraction() const { return fraction_; } 00092 const VpspScanAnalysis::VInt& VpspScanAnalysis::topEdge() const { return topEdge_; } 00093 const VpspScanAnalysis::VInt& VpspScanAnalysis::bottomEdge() const { return bottomEdge_; } 00094 const VpspScanAnalysis::VInt& VpspScanAnalysis::topLevel() const { return topLevel_; } 00095 const VpspScanAnalysis::VInt& VpspScanAnalysis::bottomLevel() const { return bottomLevel_; } 00096 00097 #endif // CondFormats_SiStripObjects_VpspScanAnalysis_H 00098