diff --git a/Detector/DetInterface/CMakeLists.txt b/Detector/DetInterface/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..0467315516667b8ae5ba630ab34301d072eeca84 --- /dev/null +++ b/Detector/DetInterface/CMakeLists.txt @@ -0,0 +1,8 @@ +################################################################################ +# Package: DetInterface +################################################################################ +gaudi_subdir(DetInterface v1r0) + +gaudi_depends_on_subdirs(GaudiKernel) + +gaudi_install_headers(DetInterface) diff --git a/Detector/DetInterface/DetInterface/IGeoSvc.h b/Detector/DetInterface/DetInterface/IGeoSvc.h new file mode 100644 index 0000000000000000000000000000000000000000..02db1bfae15a1b252f9c7439590ddbc24745de12 --- /dev/null +++ b/Detector/DetInterface/DetInterface/IGeoSvc.h @@ -0,0 +1,35 @@ +// +// IGeoSvc.h +// +// Based on FCCSW. +// Created by Julia Hrdinka on 30/03/15. +// +// + +#ifndef IGEOSVC_H +#define IGEOSVC_H + +#include "GaudiKernel/IService.h" + +namespace dd4hep { +class Detector; +class DetElement; +} + +class G4VUserDetectorConstruction; + +class GAUDI_API IGeoSvc : virtual public IService { + +public: + /// InterfaceID + DeclareInterfaceID(IGeoSvc, 1, 0); + // receive DD4hep Geometry + virtual dd4hep::DetElement getDD4HepGeo() = 0; + virtual dd4hep::Detector* lcdd() = 0; + // receive Geant4 Geometry + virtual G4VUserDetectorConstruction* getGeant4Geo() = 0; + + virtual ~IGeoSvc() {} +}; + +#endif // IGEOSVC_H