00001 //---------------------------------------------------------------------------// 00002 // BOOST --- BESIII Object_Oriented Simulation Tool // 00003 //---------------------------------------------------------------------------// 00004 //Description: Digitization of Muc Hits 00005 //Author: Youzy Peking University mail: youzy@hep.pku.cn 00006 //Created: Dec, 2003 00007 //Modified: 00008 //Comment: 00009 //---------------------------------------------------------------------------// 00010 00011 // 00012 // $Id: BesMucDigit.hh,v 1.2 2006/11/06 06:32:56 liangyt Exp $ 00013 // GEANT4 tag $Name: MucSim-00-01-03 $ 00014 00015 #ifndef BesMucDigit_h 00016 #define BesMucDigit_h 1 00017 00018 #include "BesMucHit.hh" 00019 #include "G4ThreeVector.hh" 00020 #include "G4VPhysicalVolume.hh" 00021 #include "G4LogicalVolume.hh" 00022 00023 class BesMucDigit 00024 { 00025 public: 00026 BesMucDigit(); 00027 ~BesMucDigit(); 00028 //BesMucDigit(const BesMucDigit&); 00029 //const BesMucDigit$ operator=(const BesMucDigit&); 00030 //int operator==(const BesMucDigit&) const; 00031 00032 //inline void* operator new(size_t); 00033 //inline void operator delete(void*); 00034 00035 void SetHit(BesMucHit* hit); 00036 00037 G4int GetTrackIndex() { return m_pHit->GetTrackIndex(); } 00038 G4int GetPart() { return m_pHit->GetPart(); } 00039 G4int GetSeg() { return m_pHit->GetSeg(); } 00040 G4int GetGap() { return m_pHit->GetGap(); } 00041 00042 G4VPhysicalVolume* GetNearestStrip(); 00043 G4int GetNearestStripNo(); 00044 G4VPhysicalVolume* GetStrip(G4int i); 00045 G4float GetStripPos(G4VPhysicalVolume* pvStrip); 00046 G4int IsNearest(G4int i); 00047 00048 private: 00049 BesMucHit* m_pHit; 00050 G4float m_Pos; 00051 G4float m_Pos2; //for barrel segment 2 00052 G4LogicalVolume* m_lvGap; 00053 G4String m_lvGapName; 00054 G4VPhysicalVolume* m_pvStripDigit; 00055 }; 00056 00057 #endif