Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

LCDG4CalSDNonProj.hh

Go to the documentation of this file.
00001 #ifndef LCDG4CalSDNonProj_h
00002 #define LCDG4CalSDNonProj_h 1
00003 
00004 #include "LCDG4CalHit.hh"
00005 #include "LCDG4CalSD.hh"
00006 #include "G4LogicalVolume.hh"
00007 #include <map>
00008 
00009 // XML
00010 #include "xercesc/dom/deprecated/DOM_Element.hpp"
00011 
00012 class G4Step;
00013 class G4HCofThisEvent;
00014 class G4TouchableHistory;
00015 class NonProjCalGeomParams;
00016 class NonProjCalGeometry;
00017 
00018 /* SensitiveDetector for calorimeter-like subdetectors */
00019 
00020 class LCDG4CalSDNonProj : public LCDG4CalSD {
00021 
00022 public:
00023   // constructor
00024   LCDG4CalSDNonProj(G4String name,
00025                     const XERCES_CPP_NAMESPACE::DOM_Element& voldb);
00026   // destructor
00027   ~LCDG4CalSDNonProj();
00028 
00029   // Implementations of pure virtual methods in base class
00030   // find calorimeter cell from a given position
00031   unsigned int findCell(const G4ThreeVector& position);
00032   // get cell center
00033   G4ThreeVector getCellCenter(unsigned int cellIndex);
00034   // get cell indices which depend on virtual cells
00035   unsigned int getIndex1(unsigned int cellIndex) const;
00036   unsigned int getIndex2(unsigned int cellIndex) const;
00037   unsigned int getIndex3(unsigned int cellIndex) const;
00038 
00039 private:
00040   const NonProjCalGeomParams* hcalpar;
00041   const NonProjCalGeometry* hcal;
00042 
00043   // aggregated hits for barrel with combined energies
00044 //   std::map<unsigned int,LCDG4CalHit*> m_cellhitaggb;
00045 };
00046 
00047 #endif // LCDG4CalSDNonProj_h

Generated on Thu Oct 7 18:44:46 2004 for LCDG4 by doxygen 1.3.4