ATLAS Offline Software
IDetectorConstructionTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef G4AtlasInterfaces_IDetectorConstructionTool_H
6 #define G4AtlasInterfaces_IDetectorConstructionTool_H
7 
8 // Include files
9 #include <string>
10 #include <vector>
11 // from Gaudi
12 #include "GaudiKernel/IAlgTool.h"
13 
14 #include "G4VUserDetectorConstruction.hh"
15 
16 class G4VPhysicalVolume;
17 
26 class IDetectorConstructionTool : public G4VUserDetectorConstruction, virtual public IAlgTool {
27  public:
30 
31 // from G4VUserDetectorConstruction
32 
33  virtual G4VPhysicalVolume* Construct() = 0;
34 
35  virtual void ConstructSDandField() =0;
36 
37  virtual G4VUserDetectorConstruction* GetDetectorConstruction() = 0;
38 
39  virtual std::vector<std::string>& GetParallelWorldNames() = 0;
40 };
41 #endif
IDetectorConstructionTool
Definition: IDetectorConstructionTool.h:26
IDetectorConstructionTool::Construct
virtual G4VPhysicalVolume * Construct()=0
IDetectorConstructionTool::GetDetectorConstruction
virtual G4VUserDetectorConstruction * GetDetectorConstruction()=0
IDetectorConstructionTool::GetParallelWorldNames
virtual std::vector< std::string > & GetParallelWorldNames()=0
IDetectorConstructionTool::ConstructSDandField
virtual void ConstructSDandField()=0
IDetectorConstructionTool::DeclareInterfaceID
DeclareInterfaceID(IDetectorConstructionTool, 1, 0)
Creates the InterfaceID and interfaceID() method.