BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
DetectorDescription/G4Geo/include/G4Geo/SubDetectorG4Geo.h
Go to the documentation of this file.
1//$id$
2/*
3 * 2005/10/31 Zhengyun You Peking University
4 * G4 Geometry for Bes sub-detector in simulation and track ext in
5 * reconstruction.
6 *
7 */
8
9#ifndef SUBDETECTOR_G4_GEO_H
10#define SUBDETECTOR_G4_GEO_H
11
12#include <string>
13
14#include "G4Color.hh"
15#include "G4LogicalVolume.hh"
16#include "G4VPhysicalVolume.hh"
17#include "G4VisAttributes.hh"
18
19#include "G4Processor/GDMLProcessor.h"
20#include "Saxana/ProcessingConfigurator.h"
21#include "Saxana/SAXProcessor.h"
22
23/**
24 * Class SubDetectorG4Geo is a base class for the four subdetector
25 * G4 geometry class.
26 *
27 * @author Zhengyun You \URL{mailto:youzy@hep.pku.cn}
28 *
29 */
30
32public:
33 /// Constructor.
35
36 /// Destructor.
37 virtual ~SubDetectorG4Geo();
38
39 /// Initialize the instance of G4Geo.
40 void ReadGdml( const char* gdmlFile, const char* setupName );
41
42 /// If the G4 geometry of this subdetctor is initialized;
43 int IsInitialized() { return m_G4GeoInit; }
44
45 /// Get a logical volume by name;
46 G4LogicalVolume* GetLogicalVolume( const std::string& vn );
47
48 /// Get the top(world) volume;
49 G4LogicalVolume* GetTopVolume() { return m_TopVolume; }
50
51private:
52 SAXProcessor m_sxp;
53 ProcessingConfigurator m_config;
54
55protected:
56 // Have we initialize the geometry.
58
59 G4LogicalVolume* m_TopVolume;
60};
61
62#endif /* SUBDETECTOR_G4_GEO_H */
G4LogicalVolume * GetTopVolume()
Get the top(world) volume;.
SubDetectorG4Geo()
Constructor.
virtual ~SubDetectorG4Geo()
Destructor.
void ReadGdml(const char *gdmlFile, const char *setupName)
Initialize the instance of G4Geo.
G4LogicalVolume * GetLogicalVolume(const std::string &vn)
Get a logical volume by name;.
int IsInitialized()
If the G4 geometry of this subdetctor is initialized;.