CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
HcalInterpolatedPulseColl Class Reference

#include <HcalInterpolatedPulseColl.h>

Public Member Functions

const HcalInterpolatedPulsegetChannelPulse (const HcalDetId &id) const
 
const HcalInterpolatedPulsegetChannelPulse (const unsigned i) const
 
 HcalInterpolatedPulseColl ()
 
 HcalInterpolatedPulseColl (const std::vector< HcalInterpolatedPulse > &pulses, const HBHEChannelGroups &groups)
 
bool operator!= (const HcalInterpolatedPulseColl &r)
 
bool operator== (const HcalInterpolatedPulseColl &r)
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, unsigned)
 

Private Attributes

HBHEChannelGroups groups_
 
std::vector< HcalInterpolatedPulsepulses_
 

Friends

class boost::serialization::access
 

Detailed Description

Definition at line 8 of file HcalInterpolatedPulseColl.h.

Constructor & Destructor Documentation

◆ HcalInterpolatedPulseColl() [1/2]

HcalInterpolatedPulseColl::HcalInterpolatedPulseColl ( const std::vector< HcalInterpolatedPulse > &  pulses,
const HBHEChannelGroups groups 
)

Definition at line 4 of file HcalInterpolatedPulseColl.cc.

6  : pulses_(pulses), groups_(groups) {
7  if (!(pulses_.size() == groups_.largestGroupNumber() + 1U))
8  throw cms::Exception("Inconsistent arguments in HcalInterpolatedPulseColl constructor");
9 }

References Exception, groups_, HBHEChannelGroups::largestGroupNumber(), pulses_, and mitigatedMETSequence_cff::U.

◆ HcalInterpolatedPulseColl() [2/2]

HcalInterpolatedPulseColl::HcalInterpolatedPulseColl ( )
inline

Definition at line 29 of file HcalInterpolatedPulseColl.h.

29 {}

Member Function Documentation

◆ getChannelPulse() [1/2]

const HcalInterpolatedPulse & HcalInterpolatedPulseColl::getChannelPulse ( const HcalDetId id) const

Definition at line 11 of file HcalInterpolatedPulseColl.cc.

11  {
12  // Figure out the group number for this channel
13  const unsigned lindex = hbheChannelMap().linearIndex(id.depth(), id.ieta(), id.iphi());
14  const unsigned grN = groups_.getGroup(lindex);
15 
16  // Return the pulse for this group
17  return pulses_[grN];
18 }

References LEDCalibrationChannels::depth, HBHEChannelGroups::getGroup(), groups_, hbheChannelMap(), LEDCalibrationChannels::ieta, LEDCalibrationChannels::iphi, HBHELinearMap::linearIndex(), and pulses_.

◆ getChannelPulse() [2/2]

const HcalInterpolatedPulse& HcalInterpolatedPulseColl::getChannelPulse ( const unsigned  i) const
inline

Definition at line 16 of file HcalInterpolatedPulseColl.h.

16 { return pulses_[groups_.getGroup(i)]; }

References HBHEChannelGroups::getGroup(), groups_, mps_fire::i, and pulses_.

◆ operator!=()

bool HcalInterpolatedPulseColl::operator!= ( const HcalInterpolatedPulseColl r)
inline

Definition at line 20 of file HcalInterpolatedPulseColl.h.

20 { return !(*this == r); }

References alignCSCRings::r.

◆ operator==()

bool HcalInterpolatedPulseColl::operator== ( const HcalInterpolatedPulseColl r)
inline

Definition at line 18 of file HcalInterpolatedPulseColl.h.

18 { return pulses_ == r.pulses_ && groups_ == r.groups_; }

References groups_, pulses_, and alignCSCRings::r.

◆ serialize()

template<class Archive >
void HcalInterpolatedPulseColl::serialize ( Archive &  ar,
unsigned   
)
inlineprivate

Definition at line 35 of file HcalInterpolatedPulseColl.h.

35  {
36  ar& pulses_& groups_;
37  }

References groups_, and pulses_.

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 32 of file HcalInterpolatedPulseColl.h.

Member Data Documentation

◆ groups_

HBHEChannelGroups HcalInterpolatedPulseColl::groups_
private

◆ pulses_

std::vector<HcalInterpolatedPulse> HcalInterpolatedPulseColl::pulses_
private
mps_fire.i
i
Definition: mps_fire.py:428
HcalInterpolatedPulseColl::groups_
HBHEChannelGroups groups_
Definition: HcalInterpolatedPulseColl.h:24
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
mitigatedMETSequence_cff.U
U
Definition: mitigatedMETSequence_cff.py:36
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
HBHELinearMap::linearIndex
unsigned linearIndex(unsigned depth, int ieta, unsigned iphi) const
Definition: HBHELinearMap.cc:35
HBHEChannelGroups::getGroup
unsigned getGroup(const unsigned linearChannel) const
Definition: HBHEChannelGroups.h:37
alignCSCRings.r
r
Definition: alignCSCRings.py:93
hbheChannelMap
const HBHELinearMap & hbheChannelMap()
Definition: HBHELinearMap.cc:139
Exception
Definition: hltDiff.cc:246
HBHEChannelGroups::largestGroupNumber
unsigned largestGroupNumber() const
Definition: HBHEChannelGroups.h:39
HcalInterpolatedPulseColl::pulses_
std::vector< HcalInterpolatedPulse > pulses_
Definition: HcalInterpolatedPulseColl.h:23