Back to home page

Project CMSSW displayed by LXR

 
 

    


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

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