#include <MucG4Geo.h>
Inheritance diagram for MucG4Geo:
Public Member Functions | |
MucG4Geo () | |
Constructor. | |
~MucG4Geo () | |
Destructor. | |
void | InitFromGdml (const char *gdmlFile, const char *setupName) |
Initialize the instance of G4Geo. | |
void | SetDefaultVis () |
Set default visual attributes;. | |
void | ReadGdml (const char *gdmlFile, const char *setupName) |
Initialize the instance of G4Geo. | |
int | IsInitialized () |
If the G4 geometry of this subdetctor is initialized;. | |
G4LogicalVolume * | GetLogicalVolume (const std::string &vn) |
Get a logical volume by name;. | |
G4LogicalVolume * | GetTopVolume () |
Get the top(world) volume;. | |
Static Public Member Functions | |
static MucG4Geo * | Instance () |
Get a pointer to the single instance of MucG4Geo. | |
Protected Attributes | |
int | m_G4GeoInit |
G4LogicalVolume * | m_TopVolume |
Static Private Attributes | |
static MucG4Geo * | m_pMucG4Geo = 0L |
Definition at line 21 of file MucG4Geo.h.
MucG4Geo::MucG4Geo | ( | ) |
Constructor.
Definition at line 24 of file MucG4Geo.cxx.
References InitFromGdml(), and deljobs::string.
00025 { 00026 string GdmlManagementPath = getenv("GDMLMANAGEMENTROOT"); 00027 if (GdmlManagementPath == "") cout << "MucG4Geo::GdmlManagementPath not set" << endl; 00028 string GdmlFile = GdmlManagementPath + string("/dat/Muc.gdml"); 00029 cout << "Construct Muc from GdmlFile " << GdmlFile << endl; 00030 InitFromGdml( GdmlFile.c_str(), "Muc" ); 00031 }
MucG4Geo::~MucG4Geo | ( | ) |
G4LogicalVolume * SubDetectorG4Geo::GetLogicalVolume | ( | const std::string & | vn | ) | [inherited] |
Get a logical volume by name;.
Definition at line 40 of file SubDetectorG4Geo.cxx.
Referenced by TofG4Geo::InitFromGdml(), InitFromGdml(), MRPCG4Geo::InitFromGdml(), MdcG4Geo::InitFromGdml(), EmcG4Geo::InitFromGdml(), and BesG4Geo::InitFromGdml().
00041 { 00042 G4LogicalVolume *lv = (G4LogicalVolume*)GDMLProcessor::GetInstance()->GetLogicalVolume(vn); 00043 //if (!lv) std::cout << "Logical Volume " << vn << " not found " << std::endl; 00044 return lv; 00045 }
G4LogicalVolume* SubDetectorG4Geo::GetTopVolume | ( | ) | [inline, inherited] |
Get the top(world) volume;.
Definition at line 50 of file SubDetectorG4Geo.h.
References SubDetectorG4Geo::m_TopVolume.
Referenced by BesTofConstruction::Construct(), BesMucConstruction::Construct(), BesMdcConstruction::Construct(), BesEmcConstruction::Construct(), ExtBesTofConstruction::Construct(), ExtBesMucConstruction::Construct(), ExtBesMdcConstruction::Construct(), ExtBesEmcConstruction::Construct(), ExtBesTofConstruction::ConstructETF(), TRungeFitter::setBesFromGdml(), and KalFitAlg::setBesFromGdml().
00050 { return m_TopVolume; }
void MucG4Geo::InitFromGdml | ( | const char * | gdmlFile, | |
const char * | setupName | |||
) |
Initialize the instance of G4Geo.
Definition at line 37 of file MucG4Geo.cxx.
References SubDetectorG4Geo::GetLogicalVolume(), SubDetectorG4Geo::m_G4GeoInit, SubDetectorG4Geo::m_TopVolume, SubDetectorG4Geo::ReadGdml(), and SetDefaultVis().
Referenced by MucG4Geo().
00038 { 00039 ReadGdml(gdmlFile, setupName); 00040 m_TopVolume = GetLogicalVolume("logicalMuc"); 00041 if (!m_TopVolume) cout << "MucG4Geo::InitFromGdml, m_TopVolume not found" << endl; 00042 else cout << "Muc TopVolume name " << m_TopVolume->GetName() << endl; 00043 SetDefaultVis(); 00044 00045 m_G4GeoInit = 1; 00046 }
MucG4Geo * MucG4Geo::Instance | ( | ) | [static] |
Get a pointer to the single instance of MucG4Geo.
Definition at line 57 of file MucG4Geo.cxx.
References m_pMucG4Geo.
Referenced by MucGeomSvc::Fill().
00058 { 00059 //Get a pointer to the single instance of MucG4Geo 00060 if(!m_pMucG4Geo){ 00061 m_pMucG4Geo = new MucG4Geo; 00062 //cout<<"in MucG4Geo:: no MucG4Geo now."<<m_pMucG4Geo<<endl; 00063 00064 } 00065 //cout<<"in MucG4Geo:: get MucG4Geo successfully."<<endl; 00066 return m_pMucG4Geo; 00067 }
int SubDetectorG4Geo::IsInitialized | ( | ) | [inline, inherited] |
If the G4 geometry of this subdetctor is initialized;.
Definition at line 44 of file SubDetectorG4Geo.h.
References SubDetectorG4Geo::m_G4GeoInit.
00044 { return m_G4GeoInit; }
void SubDetectorG4Geo::ReadGdml | ( | const char * | gdmlFile, | |
const char * | setupName | |||
) | [inherited] |
Initialize the instance of G4Geo.
Definition at line 28 of file SubDetectorG4Geo.cxx.
References SubDetectorG4Geo::m_config, and SubDetectorG4Geo::m_sxp.
Referenced by TofG4Geo::InitFromGdml(), InitFromGdml(), MRPCG4Geo::InitFromGdml(), MdcG4Geo::InitFromGdml(), EmcG4Geo::InitFromGdml(), and BesG4Geo::InitFromGdml().
00029 { 00030 m_config.SetURI( gdmlFile ); 00031 m_config.SetSetupName( setupName ); 00032 m_config.SetType ( "G4" ); 00033 00034 m_sxp.Configure( &m_config ); 00035 m_sxp.Initialize(); 00036 m_sxp.Run(); 00037 }
void MucG4Geo::SetDefaultVis | ( | ) |
Set default visual attributes;.
Definition at line 49 of file MucG4Geo.cxx.
Referenced by InitFromGdml().
00050 { 00051 //std::cout << "begin of set defaultvis" << std::endl; 00052 00053 //std::cout << "end of set defaultvis" << std::endl; 00054 }
int SubDetectorG4Geo::m_G4GeoInit [protected, inherited] |
Definition at line 59 of file SubDetectorG4Geo.h.
Referenced by TofG4Geo::InitFromGdml(), InitFromGdml(), MRPCG4Geo::InitFromGdml(), MdcG4Geo::InitFromGdml(), EmcG4Geo::InitFromGdml(), BesG4Geo::InitFromGdml(), and SubDetectorG4Geo::IsInitialized().
MucG4Geo * MucG4Geo::m_pMucG4Geo = 0L [static, private] |
G4LogicalVolume* SubDetectorG4Geo::m_TopVolume [protected, inherited] |
Definition at line 61 of file SubDetectorG4Geo.h.
Referenced by SubDetectorG4Geo::GetTopVolume(), TofG4Geo::InitFromGdml(), InitFromGdml(), MRPCG4Geo::InitFromGdml(), MdcG4Geo::InitFromGdml(), EmcG4Geo::InitFromGdml(), and BesG4Geo::InitFromGdml().