CMS 3D CMS Logo

Public Member Functions

HcalTB02XtalNumberingScheme Class Reference

#include <SimG4CMS/HcalTestBeam/interface/HcalTB02XtalNumberingScheme.h>

Inheritance diagram for HcalTB02XtalNumberingScheme:
HcalTB02NumberingScheme

List of all members.

Public Member Functions

virtual int getUnitID (const G4Step *aStep) const
 HcalTB02XtalNumberingScheme ()
virtual ~HcalTB02XtalNumberingScheme ()

Detailed Description

Description: Numbering scheme for the crystal calorimeter in 2002 test beam

Usage: Sets up unique identifier for crystals in 2002 test beam

Definition at line 25 of file HcalTB02XtalNumberingScheme.h.


Constructor & Destructor Documentation

HcalTB02XtalNumberingScheme::HcalTB02XtalNumberingScheme ( )

Definition at line 24 of file HcalTB02XtalNumberingScheme.cc.

                                                         : 
  HcalTB02NumberingScheme() {
  edm::LogInfo("HcalTBSim") << "Creating HcalTB02XtalNumberingScheme";
}
HcalTB02XtalNumberingScheme::~HcalTB02XtalNumberingScheme ( ) [virtual]

Definition at line 29 of file HcalTB02XtalNumberingScheme.cc.

                                                          {
  edm::LogInfo("HcalTBSim") << "Deleting HcalTB02XtalNumberingScheme";
}

Member Function Documentation

int HcalTB02XtalNumberingScheme::getUnitID ( const G4Step *  aStep) const [virtual]

Implements HcalTB02NumberingScheme.

Definition at line 37 of file HcalTB02XtalNumberingScheme.cc.

References LogDebug.

                                                                    {

  const G4VTouchable* touch = aStep->GetPreStepPoint()->GetTouchable();
  int idx=touch->GetReplicaNumber(0);
  int idl=0;
  if (touch->GetHistoryDepth() > 0) idl = touch->GetReplicaNumber(1);
  int idunit = idl*100 + idx;
  LogDebug("HcalTBSim") << "HcalTB02XtalNumberingScheme:: Row " << idl
                        << " Column " << idl << " idunit = " << idunit;
  return idunit;
}