CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PixelFEDCabling.h
Go to the documentation of this file.
1 #ifndef PixelFEDCabling_H
2 #define PixelFEDCabling_H
3 
9 #include <vector>
10 
12 class PixelModuleName;
13 
14 namespace sipixelobjects {
15 
17 public:
18 
19  typedef std::vector<PixelFEDLink> Links;
20 
21  PixelFEDCabling(unsigned int id = 0) : theFedId(id) { }
22 
23  void setLinks(Links & links);
24 
25  void addLink(const PixelFEDLink & link);
26 
28  const PixelFEDLink * link(unsigned int id) const
29  { return (id > 0 && id <= theLinks.size()) ? &theLinks[id-1] : 0; }
30 
32  unsigned int numberOfLinks() const { return theLinks.size(); }
33 
34  unsigned int id() const { return theFedId; }
35 
36  std::string print(int depth = 0) const;
37 
38  void addItem(unsigned int linkId, const PixelROC & roc);
39 
43  bool checkLinkNumbering() const;
44 private:
45 
46 private:
47 
48  unsigned int theFedId;
50 
51 };
52 }
53 
54 #endif
unsigned int numberOfLinks() const
number of links in FED
void addItem(unsigned int linkId, const PixelROC &roc)
PixelFEDCabling(unsigned int id=0)
void addLink(const PixelFEDLink &link)
std::string print(int depth=0) const
const PixelFEDLink * link(unsigned int id) const
return link identified by id. Link id&#39;s are ranged [1, numberOfLinks]
std::vector< PixelFEDLink > Links