Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:18

0001 
0002 #ifndef CalibFormats_SiStripObjects_SiStripCcu_H
0003 #define CalibFormats_SiStripObjects_SiStripCcu_H
0004 
0005 #include "CalibFormats/SiStripObjects/interface/SiStripModule.h"
0006 #include "CondFormats/SiStripObjects/interface/FedChannelConnection.h"
0007 #include <vector>
0008 #include <cstdint>
0009 
0010 /**
0011     \class SiStripCcu
0012     \author R.Bainbridge
0013 */
0014 class SiStripCcu {
0015 public:
0016   /** */
0017   SiStripCcu(const FedChannelConnection &conn);
0018 
0019   /** */
0020   ~SiStripCcu() { ; }
0021 
0022   /** */
0023   inline const std::vector<SiStripModule> &modules() const;
0024   inline std::vector<SiStripModule> &modules();
0025 
0026   /** */
0027   inline const uint16_t &ccuAddr() const;
0028 
0029   /** */
0030   void addDevices(const FedChannelConnection &conn);
0031 
0032 private:
0033   /** */
0034   SiStripCcu() { ; }
0035 
0036   /** */
0037   uint16_t ccuAddr_;
0038 
0039   /** */
0040   std::vector<SiStripModule> modules_;
0041 };
0042 
0043 // ---------- inline methods ----------
0044 
0045 const std::vector<SiStripModule> &SiStripCcu::modules() const { return modules_; }
0046 std::vector<SiStripModule> &SiStripCcu::modules() { return modules_; }
0047 const uint16_t &SiStripCcu::ccuAddr() const { return ccuAddr_; }
0048 
0049 #endif  // CalibTracker_SiStripObjects_SiStripCcu_H