CMS 3D CMS Logo

HtrXmlPatternSet.h
Go to the documentation of this file.
1 #ifndef HtrXmlPatternSet_h_included
2 #define HtrXmlPatternSet_h_included 1
3 
7 
9 public:
10  static const int SAMPLES = 512;
11  static const int NUM_CRATES = 18;
12  //this is one larger than it 'needs' to be so that the array index can match the physical slot number
13  static const int NUM_SLOTS = 22;
14 
16  void setLoc(int crate, int slot, int tb, int chan) {
17  m_crate = crate;
18  m_slot = slot;
19  m_tb = tb;
20  m_chan = chan;
21  }
22  int getCrate() const { return m_crate; }
23  int getSlot() const { return m_slot; }
24  int getTB() const { return m_tb; }
25  int getChan() const { return m_chan; }
26  double& operator[](int bc) { return fCReal[bc]; }
27  const double operator[](int bc) const { return fCReal[bc]; }
28  void encode();
29  int getCoded(int bc) const { return fCCoded[bc]; }
30  double getQuantized(int bc) const { return fCQuantized[bc]; }
34  void Fill_by_hand(const HcalElectronicsMap*, int);
35 
36 private:
37  double fCReal[SAMPLES];
42 };
43 
44 class HalfHtrData {
45 public:
46  HalfHtrData(int crate, int slot, int tb);
47  ChannelPattern* getPattern(int chan) { return (chan >= 1 && chan <= 24) ? (&m_patterns[chan - 1]) : (nullptr); }
48  int getCrate() const { return m_crate; }
49  int getSlot() const { return m_slot; }
50  int getTB() const { return m_tb; }
51  int getSpigot() const { return m_spigot; }
52  int getDCC() const { return m_dcc; }
53  void setSpigot(int spigot) { m_spigot = spigot; }
54  void setDCC(int dcc) { m_dcc = dcc; }
55 
56 private:
60 };
61 
62 class CrateData {
63 public:
64  CrateData(int crate, int slotsActive[ChannelPattern::NUM_SLOTS]);
65  ~CrateData();
66  HalfHtrData* getHalfHtrData(int slot, int one_two_tb);
67 
68 private:
70 };
71 
73 public:
74  HtrXmlPatternSet(int cratesActive[ChannelPattern::NUM_CRATES], int slotsActive[ChannelPattern::NUM_SLOTS]);
76  CrateData* getCrate(int crate);
77 
78 private:
80 };
81 
82 #endif
HcalElectronicsMap.h
ChannelPattern::operator[]
const double operator[](int bc) const
Definition: HtrXmlPatternSet.h:27
HalfHtrData::setDCC
void setDCC(int dcc)
Definition: HtrXmlPatternSet.h:54
HalfHtrData::getDCC
int getDCC() const
Definition: HtrXmlPatternSet.h:52
ChannelPattern::m_sample_pos
int m_sample_pos
Definition: HtrXmlPatternSet.h:41
ChannelPattern::getCrate
int getCrate() const
Definition: HtrXmlPatternSet.h:22
ChannelPattern::getSlot
int getSlot() const
Definition: HtrXmlPatternSet.h:23
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
ChannelPattern::fCReal
double fCReal[SAMPLES]
Definition: HtrXmlPatternSet.h:37
ChannelPattern::setLoc
void setLoc(int crate, int slot, int tb, int chan)
Definition: HtrXmlPatternSet.h:16
ChannelPattern
Definition: HtrXmlPatternSet.h:8
HalfHtrData::m_spigot
int m_spigot
Definition: HtrXmlPatternSet.h:59
ChannelPattern::m_crate
int m_crate
Definition: HtrXmlPatternSet.h:40
CalibrationSummaryClient_cfi.params
params
Definition: CalibrationSummaryClient_cfi.py:14
ChannelPattern::getQuantized
double getQuantized(int bc) const
Definition: HtrXmlPatternSet.h:30
HalfHtrData
Definition: HtrXmlPatternSet.h:44
ChannelPattern::encode
void encode()
HtrXmlPatternToolParameters.h
HalfHtrData::getSlot
int getSlot() const
Definition: HtrXmlPatternSet.h:49
CrateData::getHalfHtrData
HalfHtrData * getHalfHtrData(int slot, int one_two_tb)
Definition: HtrXmlPatternSet.cc:271
HalfHtrData::m_tb
int m_tb
Definition: HtrXmlPatternSet.h:58
HalfHtrData::getCrate
int getCrate() const
Definition: HtrXmlPatternSet.h:48
HalfHtrData::getPattern
ChannelPattern * getPattern(int chan)
Definition: HtrXmlPatternSet.h:47
HtrXmlPatternSet
Definition: HtrXmlPatternSet.h:72
HtrXmlPatternSet::~HtrXmlPatternSet
~HtrXmlPatternSet()
Definition: HtrXmlPatternSet.cc:288
HalfHtrData::getSpigot
int getSpigot() const
Definition: HtrXmlPatternSet.h:51
ChannelPattern::m_tb
int m_tb
Definition: HtrXmlPatternSet.h:40
ChannelPattern::SAMPLES
static const int SAMPLES
Definition: HtrXmlPatternSet.h:10
HtrXmlPatternSet::m_crates
CrateData * m_crates[ChannelPattern::NUM_CRATES]
Definition: HtrXmlPatternSet.h:79
CrateData
Definition: HtrXmlPatternSet.h:62
HcalDigiCollections.h
ChannelPattern::NUM_CRATES
static const int NUM_CRATES
Definition: HtrXmlPatternSet.h:11
ChannelPattern::Fill_by_hand
void Fill_by_hand(const HcalElectronicsMap *, int)
Definition: HtrXmlPatternSet.cc:14
HalfHtrData::m_dcc
int m_dcc
Definition: HtrXmlPatternSet.h:59
ChannelPattern::getChan
int getChan() const
Definition: HtrXmlPatternSet.h:25
ChannelPattern::Fill
void Fill(HtrXmlPatternToolParameters *params, HBHEDigiCollection::const_iterator data)
Definition: HtrXmlPatternSet.cc:168
ChannelPattern::operator[]
double & operator[](int bc)
Definition: HtrXmlPatternSet.h:26
ChannelPattern::ChannelPattern
ChannelPattern()
Definition: HtrXmlPatternSet.cc:5
ChannelPattern::m_chan
int m_chan
Definition: HtrXmlPatternSet.h:40
CrateData::CrateData
CrateData(int crate, int slotsActive[ChannelPattern::NUM_SLOTS])
Definition: HtrXmlPatternSet.cc:251
HalfHtrData::m_patterns
ChannelPattern m_patterns[24]
Definition: HtrXmlPatternSet.h:57
HalfHtrData::HalfHtrData
HalfHtrData(int crate, int slot, int tb)
Definition: HtrXmlPatternSet.cc:240
CrateData::m_slotsDoubled
HalfHtrData * m_slotsDoubled[ChannelPattern::NUM_SLOTS][2]
Definition: HtrXmlPatternSet.h:69
HcalElectronicsMap
Definition: HcalElectronicsMap.h:31
HalfHtrData::setSpigot
void setSpigot(int spigot)
Definition: HtrXmlPatternSet.h:53
HalfHtrData::getTB
int getTB() const
Definition: HtrXmlPatternSet.h:50
officialStyle.chan
chan
lumi = TPaveText(lowX+0.38, lowY+0.061, lowX+0.45, lowY+0.161, "NDC") lumi.SetBorderSize( 0 ) lumi....
Definition: officialStyle.py:106
ChannelPattern::fCCoded
int fCCoded[SAMPLES]
Definition: HtrXmlPatternSet.h:39
ChannelPattern::NUM_SLOTS
static const int NUM_SLOTS
Definition: HtrXmlPatternSet.h:13
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
ChannelPattern::m_slot
int m_slot
Definition: HtrXmlPatternSet.h:40
ChannelPattern::fCQuantized
double fCQuantized[SAMPLES]
Definition: HtrXmlPatternSet.h:38
HalfHtrData::m_crate
int m_crate
Definition: HtrXmlPatternSet.h:58
HtrXmlPatternSet::getCrate
CrateData * getCrate(int crate)
Definition: HtrXmlPatternSet.cc:295
ChannelPattern::getCoded
int getCoded(int bc) const
Definition: HtrXmlPatternSet.h:29
HtrXmlPatternSet::HtrXmlPatternSet
HtrXmlPatternSet(int cratesActive[ChannelPattern::NUM_CRATES], int slotsActive[ChannelPattern::NUM_SLOTS])
Definition: HtrXmlPatternSet.cc:278
ChannelPattern::getTB
int getTB() const
Definition: HtrXmlPatternSet.h:24
CrateData::~CrateData
~CrateData()
Definition: HtrXmlPatternSet.cc:262
HalfHtrData::m_slot
int m_slot
Definition: HtrXmlPatternSet.h:58
HtrXmlPatternToolParameters
Definition: HtrXmlPatternToolParameters.h:6