CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
HcalTestNumberingScheme Class Reference

#include <HcalTestNumberingScheme.h>

Inheritance diagram for HcalTestNumberingScheme:
HcalNumberingScheme CaloNumberingScheme

Public Member Functions

virtual uint32_t getUnitID (const HcalNumberingFromDDD::HcalID id)
 
 HcalTestNumberingScheme (bool forTB)
 
virtual ~HcalTestNumberingScheme ()
 
- Public Member Functions inherited from HcalNumberingScheme
 HcalNumberingScheme ()
 
virtual ~HcalNumberingScheme ()
 
- Public Member Functions inherited from CaloNumberingScheme
 CaloNumberingScheme (int iv=0)
 Constructor with optional verbosity control. More...
 
void setVerbosity (const int)
 Verbosity setting. More...
 
virtual ~CaloNumberingScheme ()
 

Static Public Member Functions

static uint32_t packHcalIndex (int det, int z, int depth, int eta, int phi, int lay)
 
static void unpackHcalIndex (const uint32_t &idx, int &det, int &z, int &depth, int &eta, int &phi, int &lay)
 

Private Member Functions

 HcalTestNumberingScheme ()
 

Private Attributes

bool forTBH2
 

Additional Inherited Members

- Protected Attributes inherited from CaloNumberingScheme
int verbosity
 Verbosity field: Zero = quiet, increasing integers mean more output. More...
 

Detailed Description

Definition at line 11 of file HcalTestNumberingScheme.h.

Constructor & Destructor Documentation

HcalTestNumberingScheme::HcalTestNumberingScheme ( bool  forTB)

Definition at line 11 of file HcalTestNumberingScheme.cc.

References forTBH2.

11  :
12  HcalNumberingScheme(), forTBH2(forTB) {
13  edm::LogInfo("HcalSim") << "Creating HcalTestNumberingScheme with TB Flag "
14  << forTBH2;
15 }
HcalTestNumberingScheme::~HcalTestNumberingScheme ( )
virtual

Definition at line 17 of file HcalTestNumberingScheme.cc.

17  {
18  edm::LogInfo("HcalSim") << "Deleting HcalTestNumberingScheme";
19 }
HcalTestNumberingScheme::HcalTestNumberingScheme ( )
private

Member Function Documentation

uint32_t HcalTestNumberingScheme::getUnitID ( const HcalNumberingFromDDD::HcalID  id)
virtual

Reimplemented from HcalNumberingScheme.

Definition at line 21 of file HcalTestNumberingScheme.cc.

References forTBH2, HcalBarrel, getHLTprescales::index, LogDebug, HcalTestNumbering::packHcalIndex(), phi, and DetId::rawId().

Referenced by HcalTestAnalysis::fill(), SimG4HcalValidation::fill(), and HcalTestAnalysis::qieAnalysis().

22  {
23 
24  //pack it into an integer
25  uint32_t index = 0;
26  if (forTBH2) {
27  // TB H2 Case
28  int etaR = id.etaR;
29  int phi = id.phis;
30  HcalSubdetector subdet = (HcalSubdetector)(id.subdet);
31  if (subdet == HcalBarrel && phi > 4) { // HB2
32  if (etaR > 4 && etaR < 10)
33  index = HcalDetId(subdet,id.lay,id.phis,1).rawId();
34  } else { // HB1
35  index = HcalDetId(subdet,etaR,id.phis,id.depth).rawId();
36  }
37  } else {
38  // Test case
39  index = HcalTestNumbering::packHcalIndex(id.subdet, id.zside, id.depth,
40  id.etaR, id.phi, id.lay);
41  }
42 
43  LogDebug("HcalSim") << "HcalTestNumberingScheme det = " << id.subdet
44  << " depth/lay = " << id.depth << "/" << id.lay
45  << " zside = " << id.zside << " eta/R = " << id.etaR
46  << " phi = " << id.phi << " packed index = 0x"
47  << std::hex << index << std::dec;
48 
49  return index;
50 
51 }
#define LogDebug(id)
uint32_t rawId() const
get the raw id
Definition: DetId.h:45
static uint32_t packHcalIndex(int det, int z, int depth, int eta, int phi, int lay)
HcalSubdetector
Definition: HcalAssistant.h:32
Definition: DDAxes.h:10
uint32_t HcalTestNumberingScheme::packHcalIndex ( int  det,
int  z,
int  depth,
int  eta,
int  phi,
int  lay 
)
static

Definition at line 53 of file HcalTestNumberingScheme.cc.

References HcalTestNumbering::packHcalIndex().

Referenced by HcalTestAnalysis::fill(), and SimG4HcalValidation::fill().

54  {
55 
56  return HcalTestNumbering::packHcalIndex(det, z, depth, eta, phi, lay);
57 }
T eta() const
double double double z
static uint32_t packHcalIndex(int det, int z, int depth, int eta, int phi, int lay)
Definition: DDAxes.h:10
void HcalTestNumberingScheme::unpackHcalIndex ( const uint32_t &  idx,
int &  det,
int &  z,
int &  depth,
int &  eta,
int &  phi,
int &  lay 
)
static

Definition at line 59 of file HcalTestNumberingScheme.cc.

References HcalTestNumbering::unpackHcalIndex().

Referenced by HcalTestAnalysis::fill(), SimG4HcalValidation::fill(), and HcalTestAnalysis::qieAnalysis().

62  {
63 
64  HcalTestNumbering::unpackHcalIndex(idx, det, z, depth, eta, phi, lay);
65 }
T eta() const
double double double z
static void unpackHcalIndex(const uint32_t &idx, int &det, int &z, int &depth, int &eta, int &phi, int &lay)
Definition: DDAxes.h:10

Member Data Documentation

bool HcalTestNumberingScheme::forTBH2
private

Definition at line 25 of file HcalTestNumberingScheme.h.

Referenced by getUnitID(), and HcalTestNumberingScheme().