CMS 3D CMS Logo

SiPixelFedCablingMap.h
Go to the documentation of this file.
1 #ifndef EventFilter_SiPixelRawToDigi_SiPixelFedCablingMap_H
2 #define EventFilter_SiPixelRawToDigi_SiPixelFedCablingMap_H
3 
5 
8 
9 #include <string>
10 #include <map>
11 #include<memory>
12 
14 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
15 #define NO_DICT
16 #endif
17 
18 
20 
21 
23 
24 public:
25 
27 
29 
30  void initializeRocs();
31 
32  ~SiPixelFedCablingMap() override {}
33 
34 #ifdef NO_DICT
35  std::unique_ptr<SiPixelFedCablingTree> cablingTree() const;
36 #endif
37 
38  std::string version() const override { return theVersion; }
39 
41  const sipixelobjects::CablingPathToDetUnit & path) const override;
42 
43  std::vector<sipixelobjects::CablingPathToDetUnit> pathToDetUnit(uint32_t rawDetId) const override;
44 
45  std::unordered_map<uint32_t, unsigned int> det2fedMap() const override;
46  std::map< uint32_t,std::vector<sipixelobjects::CablingPathToDetUnit> > det2PathMap() const override;
47 
48 
49  std::vector<unsigned int> fedIds() const;
50 
51  struct Key { unsigned int fed, link, roc; bool operator < (const Key & other) const;
53 };
54 
55 private:
57  typedef std::map<Key, sipixelobjects::PixelROC> Map;
58  Map theMap;
59 
61 };
62 
63 #endif
std::string version() const override
SiPixelFedCablingMap(const SiPixelFedCablingTree *cab)
bool operator<(const Key &other) const
std::map< Key, sipixelobjects::PixelROC > Map
SiPixelFedCablingMap(const std::string &version="")
std::map< uint32_t, std::vector< sipixelobjects::CablingPathToDetUnit > > det2PathMap() const override
std::unordered_map< uint32_t, unsigned int > det2fedMap() const override
std::unique_ptr< SiPixelFedCablingTree > cablingTree() const
#define COND_SERIALIZABLE
Definition: Serializable.h:38
std::vector< unsigned int > fedIds() const
std::vector< sipixelobjects::CablingPathToDetUnit > pathToDetUnit(uint32_t rawDetId) const override
const sipixelobjects::PixelROC * findItem(const sipixelobjects::CablingPathToDetUnit &path) const override