BOSS 7.0.1
BESIII Offline Software System
Loading...
Searching...
No Matches
DetectorDescription/G4Geo/G4Geo-00-00-13/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 reconstruction.
5 *
6 */
7
8#ifndef SUBDETECTOR_G4_GEO_H
9#define SUBDETECTOR_G4_GEO_H
10
11#include <string>
12
13#include <G4LogicalVolume.hh>
14#include <G4VPhysicalVolume.hh>
15#include "G4VisAttributes.hh"
16#include "G4Color.hh"
17
18#include "Saxana/SAXProcessor.h"
19#include "Saxana/ProcessingConfigurator.h"
20#include "G4Processor/GDMLProcessor.h"
21
22/**
23 * Class SubDetectorG4Geo is a base class for the four subdetector
24 * G4 geometry class.
25 *
26 * @author Zhengyun You \URL{mailto:[email protected]}
27 *
28 */
29
31{
32 public:
33
34 /// Constructor.
36
37 /// Destructor.
38 virtual ~SubDetectorG4Geo();
39
40 /// Initialize the instance of G4Geo.
41 void ReadGdml( const char *gdmlFile, const char *setupName );
42
43 /// If the G4 geometry of this subdetctor is initialized;
44 int IsInitialized() { return m_G4GeoInit; }
45
46 /// Get a logical volume by name;
47 G4LogicalVolume* GetLogicalVolume( const std::string& vn );
48
49 /// Get the top(world) volume;
50 G4LogicalVolume* GetTopVolume() { return m_TopVolume; }
51
52 private:
53
54 SAXProcessor m_sxp;
55 ProcessingConfigurator m_config;
56
57 protected:
58 // Have we initialize the geometry.
60
61 G4LogicalVolume *m_TopVolume;
62};
63
64#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;.