CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1MuDTChambPhContainer.cc
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
3 // Class L1MuDTChambPhContainer
4 //
5 // Description: input data for PHTF trigger
6 //
7 //
8 // Author List: Jorge Troconiz UAM Madrid
9 //
10 //
11 //--------------------------------------------------
12 
13 //-----------------------
14 // This Class's Header --
15 //-----------------------
17 
18 //-------------------------------
19 // Collaborating Class Headers --
20 //-------------------------------
21 
22 
23 //---------------
24 // C++ Headers --
25 //---------------
26 using namespace std;
27 
28 //-------------------
29 // Initializations --
30 //-------------------
31 
32 
33 //----------------
34 // Constructors --
35 //----------------
37 
38 //--------------
39 // Destructor --
40 //--------------
42 
43 //--------------
44 // Operations --
45 //--------------
47 
48  phiSegments = inputSegments;
49 }
50 
52 
53  Phi_Container* rT=0;
54 
55  rT = const_cast<Phi_Container*>(&phiSegments);
56 
57  return(rT);
58 }
59 
61 
62  bool empty = true;
63 
64  for ( Phi_iterator i = phiSegments.begin();
65  i != phiSegments.end();
66  i++ ) {
67  if (step == i->bxNum()) empty = false;
68  }
69 
70  return(empty);
71 }
72 
74 
75  int size = 0;
76 
77  for ( Phi_iterator i = phiSegments.begin();
78  i != phiSegments.end();
79  i++ ) {
80  if (step1 <= i->bxNum() && step2 >= i->bxNum()
81  && i->Ts2Tag() == 0 && i->code() != 7) size++;
82  if (step1 <= i->bxNum()-1 && step2 >= i->bxNum()-1
83  && i->Ts2Tag() == 1 && i->code() != 7) size++;
84  }
85 
86  return(size);
87 }
88 
89 L1MuDTChambPhDigi* L1MuDTChambPhContainer::chPhiSegm1(int wheel, int stat, int sect, int step) const {
90 
91  L1MuDTChambPhDigi* rT=0;
92 
93  for ( Phi_iterator i = phiSegments.begin();
94  i != phiSegments.end();
95  i++ ) {
96  if (step == i->bxNum() && wheel == i->whNum() && sect == i->scNum()
97  && stat == i->stNum() && i->Ts2Tag() == 0)
98  rT = const_cast<L1MuDTChambPhDigi*>(&(*i));
99  }
100 
101  return(rT);
102 }
103 
104 L1MuDTChambPhDigi* L1MuDTChambPhContainer::chPhiSegm2(int wheel, int stat, int sect, int step) const {
105 
106  L1MuDTChambPhDigi* rT=0;
107 
108  for ( Phi_iterator i = phiSegments.begin();
109  i != phiSegments.end();
110  i++ ) {
111  if (step == i->bxNum()-1 && wheel == i->whNum() && sect == i->scNum()
112  && stat == i->stNum() && i->Ts2Tag() == 1)
113  rT = const_cast<L1MuDTChambPhDigi*>(&(*i));
114  }
115 
116  return(rT);
117 }
int i
Definition: DBlmapReader.cc:9
bool bxEmpty(int step) const
L1MuDTChambPhDigi * chPhiSegm2(int wheel, int stat, int sect, int bx) const
int bxSize(int step1, int step2) const
L1MuDTChambPhDigi * chPhiSegm1(int wheel, int stat, int sect, int bx) const
Phi_Container * getContainer() const
std::vector< L1MuDTChambPhDigi > Phi_Container
Phi_Container::const_iterator Phi_iterator
void setContainer(const Phi_Container &inputSegments)
tuple size
Write out results.