CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/CondFormats/SiStripObjects/interface/FedCablingAnalysis.h

Go to the documentation of this file.
00001 #ifndef CondFormats_SiStripObjects_FedCablingAnalysis_H
00002 #define CondFormats_SiStripObjects_FedCablingAnalysis_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 #include <map>
00010 
00016 class FedCablingAnalysis : public CommissioningAnalysis {
00017   
00018  public:
00019 
00020   // ---------- con(de)structors and typedefs ----------
00021 
00022   FedCablingAnalysis( const uint32_t& key );
00023 
00024   FedCablingAnalysis();
00025 
00026   virtual ~FedCablingAnalysis() {;}
00027   
00028   typedef std::map<uint32_t,uint16_t> Candidates;
00029 
00030   friend class FedCablingAlgorithm;
00031 
00032   // ---------- public interface ----------
00033 
00035   bool isValid() const;
00036 
00038   inline const uint16_t& fedId() const;
00039 
00041   inline const uint16_t& fedCh() const; 
00042 
00044   inline const float& adcLevel() const;
00045   
00047   inline const Candidates& candidates() const;
00048 
00049   // ---------- misc ----------
00050   
00052   void print( std::stringstream&, uint32_t not_used = 0 );
00053   
00055   void reset();
00056   
00057   // ---------- public static data ----------
00058 
00059  public:
00060   
00062   static const float threshold_;
00063 
00064   // ---------- private member data ----------
00065   
00066  private:
00067 
00069   uint16_t fedId_;
00070 
00072   uint16_t fedCh_;
00073 
00075   float adcLevel_;
00076 
00078   Candidates candidates_;
00079 
00080 };
00081 
00082 // ---------- Inline methods ----------
00083   
00084 const uint16_t& FedCablingAnalysis::fedId() const { return fedId_; }
00085 const uint16_t& FedCablingAnalysis::fedCh() const { return fedCh_; } 
00086 const float& FedCablingAnalysis::adcLevel() const { return adcLevel_; }
00087 const FedCablingAnalysis::Candidates& FedCablingAnalysis::candidates() const { return candidates_; } 
00088 
00089 #endif // CondFormats_SiStripObjects_FedCablingAnalysis_H
00090