CMS 3D CMS Logo

Public Member Functions | Private Attributes

HBHEHFLogicalMapEntry Class Reference

#include <HcalMappingEntry.h>

List of all members.

Public Member Functions

const DetId getDetId () const
const HcalElectronicsId getHcalElectronicsId () const
const HcalFrontEndId getHcalFrontEndId () const
uint32_t getLinearIndex () const
 HBHEHFLogicalMapEntry (int in_fi_ch, int in_htr_fi, int in_spig, int in_fed, int in_cr, int in_htr, std::string in_s_fpga, std::string in_s_det, int in_sid, int in_et, int in_ph, int in_dep, int in_dph, int in_wed, int in_rm, int in_rm_fi, int in_pix, int in_qie, int in_adc, int in_slb, int in_rctcra, int in_rctcar, int in_rctcon, std::string in_s_rbx, std::string in_s_slb, std::string in_s_slb2, std::string in_s_slnam, std::string in_s_rctnam)
 HBHEHFLogicalMapEntry ()
char * printLMapLine ()
 ~HBHEHFLogicalMapEntry ()

Private Attributes

uint32_t hcalDetID_
uint32_t hcalEID_
uint32_t hcalFrontEndID_
int mydphi_
int myrctcar_
int myrctcon_
int myrctcra_
std::string myrctnam_
int myslb_
std::string myslbin2_
std::string myslbin_
std::string myslnam_
int mywedge_

Detailed Description

Definition at line 15 of file HcalMappingEntry.h.


Constructor & Destructor Documentation

HBHEHFLogicalMapEntry::HBHEHFLogicalMapEntry ( ) [inline]

Definition at line 24 of file HcalMappingEntry.h.

{}
HBHEHFLogicalMapEntry::HBHEHFLogicalMapEntry ( int  in_fi_ch,
int  in_htr_fi,
int  in_spig,
int  in_fed,
int  in_cr,
int  in_htr,
std::string  in_s_fpga,
std::string  in_s_det,
int  in_sid,
int  in_et,
int  in_ph,
int  in_dep,
int  in_dph,
int  in_wed,
int  in_rm,
int  in_rm_fi,
int  in_pix,
int  in_qie,
int  in_adc,
int  in_slb,
int  in_rctcra,
int  in_rctcar,
int  in_rctcon,
std::string  in_s_rbx,
std::string  in_s_slb,
std::string  in_s_slb2,
std::string  in_s_slnam,
std::string  in_s_rctnam 
)

Definition at line 19 of file HcalMappingEntry.cc.

References HcalBarrel, HcalEmpty, HcalEndcap, HcalForward, HcalFrontEndId::rawId(), HcalElectronicsId::rawId(), DetId::rawId(), and HcalElectronicsId::setHTR().

{
  int mytopbot;
  (in_s_fpga=="bot") ? mytopbot = 0 : mytopbot = 1;

  mydphi_   = in_dph;
  mywedge_  = in_wed;
  myslb_    = in_slb;
  myrctcra_ = in_rctcra;
  myrctcar_ = in_rctcar;
  myrctcon_ = in_rctcon;

  // string data members
  myslbin_  = in_s_slb;
  myslbin2_ = in_s_slb2;
  myslnam_  = in_s_slnam;
  myrctnam_ = in_s_rctnam;

  // create the hcal electronics id
  HcalElectronicsId heid( in_fi_ch, in_htr_fi, in_spig, in_fed - 700 );
  heid.setHTR( in_cr, in_htr, mytopbot );
  // create the hcal detector id
  HcalSubdetector mysubdet          = HcalEmpty;
  if (in_s_det=="HB") mysubdet      = HcalBarrel;
  else if (in_s_det=="HE") mysubdet = HcalEndcap;
  else if (in_s_det=="HF") mysubdet = HcalForward;

  HcalDetId hdid( mysubdet, in_sid*in_et, in_ph, in_dep );

  HcalFrontEndId hrbx( in_s_rbx, in_rm, in_pix, in_rm_fi, in_fi_ch, in_qie, in_adc );

  // store the different ids
  hcalEID_        = heid.rawId();
  hcalDetID_      = hdid.rawId();
  hcalFrontEndID_ = hrbx.rawId();
}
HBHEHFLogicalMapEntry::~HBHEHFLogicalMapEntry ( ) [inline]

Definition at line 33 of file HcalMappingEntry.h.

{}

Member Function Documentation

const DetId HBHEHFLogicalMapEntry::getDetId ( ) const [inline]

Definition at line 38 of file HcalMappingEntry.h.

References hcalDetID_.

Referenced by HcalLogicalMapGenerator::buildHBEFTMap().

{return DetId(hcalDetID_);}
const HcalElectronicsId HBHEHFLogicalMapEntry::getHcalElectronicsId ( ) const [inline]

Definition at line 37 of file HcalMappingEntry.h.

References hcalEID_.

const HcalFrontEndId HBHEHFLogicalMapEntry::getHcalFrontEndId ( ) const [inline]

Definition at line 39 of file HcalMappingEntry.h.

References hcalFrontEndID_.

uint32_t HBHEHFLogicalMapEntry::getLinearIndex ( ) const [inline]
char * HBHEHFLogicalMapEntry::printLMapLine ( )

Definition at line 62 of file HcalMappingEntry.cc.

References HcalFrontEndId::adc(), HcalElectronicsId::dccid(), HcalDetId::depth(), HcalElectronicsId::fiberChanId(), HcalElectronicsId::fiberIndex(), HcalElectronicsId::htrSlot(), HcalElectronicsId::htrTopBottom(), HcalDetId::ietaAbs(), HcalDetId::iphi(), HcalFrontEndId::pixel(), HcalFrontEndId::qieCard(), HcalFrontEndId::rbx(), HcalElectronicsId::readoutVMECrateId(), HcalFrontEndId::rm(), HcalFrontEndId::rmFiber(), HcalElectronicsId::spigot(), HcalDetId::subdet(), and HcalDetId::zside().

                                           {

  static char myline[512];

  HcalElectronicsId hcaleid(hcalEID_);
  HcalDetId         hcaldid(hcalDetID_);
  HcalGenericDetId  hcalgenid(hcalDetID_);
  HcalFrontEndId    rbxid(hcalFrontEndID_);

  int mydcc_sl = 0;
  int mydcc    = 0;
  if ((hcaleid.dccid()%2)==1) {
    mydcc_sl = 20;
    mydcc    = 2;
  } 
  else {
    mydcc_sl = 10;
    mydcc    = 1;
  } 

  string myfpga = "";
  string mydet  = "";
  HcalSubdetector mysubdet = hcaldid.subdet();
  (mysubdet==1) ? mydet = "HB" : 
              ((mysubdet==2) ? mydet = "HE" :
              ((mysubdet==3) ? mydet = "HO" : 
              ((mysubdet==4) ? mydet = "HF" : 
              mydet = "invalid")));

  ( hcaleid.htrTopBottom()==0 ) ? myfpga = "bot" : myfpga = "top";

  sprintf(myline,"%1d %6d %6d %6d %6d %6d %6s %7s %6d %6d %6d",0,hcaldid.zside(),hcaldid.ietaAbs(),hcaldid.iphi(),mydphi_,hcaldid.depth(),mydet.c_str(),rbxid.rbx().c_str(),mywedge_,rbxid.rm(),rbxid.pixel());
  sprintf(myline+strlen(myline),"%6d %6d %6d %6d %6d %6d %6s",rbxid.qieCard(),rbxid.adc(),rbxid.rmFiber(),hcaleid.fiberChanId(),hcaleid.readoutVMECrateId(),hcaleid.htrSlot(),myfpga.c_str());
  sprintf(myline+strlen(myline),"%8d %7d %6d %6d %6d %6s",hcaleid.fiberIndex(),mydcc_sl,hcaleid.spigot(),mydcc,myslb_,myslbin_.c_str());
  sprintf(myline+strlen(myline),"%8s %15s    %6d %6d %6d %20s    %6d\n",myslbin2_.c_str(),myslnam_.c_str(),myrctcra_,myrctcar_,myrctcon_,myrctnam_.c_str(),hcaleid.dccid()+700);

  return myline;
}

Member Data Documentation

Definition at line 44 of file HcalMappingEntry.h.

Referenced by getDetId().

uint32_t HBHEHFLogicalMapEntry::hcalEID_ [private]

Definition at line 43 of file HcalMappingEntry.h.

Referenced by getHcalElectronicsId(), and getLinearIndex().

Definition at line 45 of file HcalMappingEntry.h.

Referenced by getHcalFrontEndId().

Definition at line 48 of file HcalMappingEntry.h.

Definition at line 48 of file HcalMappingEntry.h.

Definition at line 48 of file HcalMappingEntry.h.

Definition at line 48 of file HcalMappingEntry.h.

std::string HBHEHFLogicalMapEntry::myrctnam_ [private]

Definition at line 50 of file HcalMappingEntry.h.

Definition at line 48 of file HcalMappingEntry.h.

std::string HBHEHFLogicalMapEntry::myslbin2_ [private]

Definition at line 50 of file HcalMappingEntry.h.

std::string HBHEHFLogicalMapEntry::myslbin_ [private]

Definition at line 50 of file HcalMappingEntry.h.

std::string HBHEHFLogicalMapEntry::myslnam_ [private]

Definition at line 50 of file HcalMappingEntry.h.

Definition at line 48 of file HcalMappingEntry.h.