ATLAS Offline Software
GeoBorderSurface.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GeoBorderSurface_h
6 #define GeoBorderSurface_h 1
7 
8 #include <string>
9 #include "GeoModelKernel/GeoIntrusivePtr.h"
12 
13 
14 class GeoOpticalPhysVol;
15 class GeoOpticalSurface;
16 
18 {
19  public:
20  GeoBorderSurface(const std::string& name,
21  GeoOpticalPhysVol* pv1,
22  GeoOpticalPhysVol* pv2,
23  GeoOpticalSurface* opticalSurface);
24  GeoBorderSurface(const GeoBorderSurface &right) = default;
25  ~GeoBorderSurface() = default;
26 
27  GeoBorderSurface& operator= (const GeoBorderSurface &right) = delete;
28 
29  const std::string& getName() const {return m_name;}
30  const GeoOpticalPhysVol* getPV1() const {return m_pv1;}
31  const GeoOpticalPhysVol* getPV2() const {return m_pv2;}
33 
34  private:
35  std::string m_name;
36  GeoIntrusivePtr<GeoOpticalPhysVol> m_pv1{};
37  GeoIntrusivePtr<GeoOpticalPhysVol> m_pv2{};
38  GeoIntrusivePtr<GeoOpticalSurface> m_opticalSurface{};
39 
40 };
41 
42 #endif
GeoOpticalPhysVol
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoOpticalPhysVol.h:14
GeoOpticalSurface.h
GeoBorderSurface::getOptSurface
const GeoOpticalSurface * getOptSurface() const
Definition: GeoBorderSurface.h:32
GeoOpticalPhysVol.h
GeoBorderSurface::getName
const std::string & getName() const
Definition: GeoBorderSurface.h:29
GeoBorderSurface::m_opticalSurface
GeoIntrusivePtr< GeoOpticalSurface > m_opticalSurface
Definition: GeoBorderSurface.h:38
GeoBorderSurface
Definition: GeoBorderSurface.h:18
GeoBorderSurface::m_pv2
GeoIntrusivePtr< GeoOpticalPhysVol > m_pv2
Definition: GeoBorderSurface.h:37
GeoBorderSurface::GeoBorderSurface
GeoBorderSurface(const GeoBorderSurface &right)=default
GeoBorderSurface::~GeoBorderSurface
~GeoBorderSurface()=default
GeoOpticalSurface
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoOpticalSurface.h:19
GeoBorderSurface::m_name
std::string m_name
Definition: GeoBorderSurface.h:35
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
GeoBorderSurface::getPV2
const GeoOpticalPhysVol * getPV2() const
Definition: GeoBorderSurface.h:31
GeoBorderSurface::operator=
GeoBorderSurface & operator=(const GeoBorderSurface &right)=delete
GeoBorderSurface::m_pv1
GeoIntrusivePtr< GeoOpticalPhysVol > m_pv1
Definition: GeoBorderSurface.h:36
GeoBorderSurface::getPV1
const GeoOpticalPhysVol * getPV1() const
Definition: GeoBorderSurface.h:30
GeoBorderSurface::GeoBorderSurface
GeoBorderSurface(const std::string &name, GeoOpticalPhysVol *pv1, GeoOpticalPhysVol *pv2, GeoOpticalSurface *opticalSurface)
Definition: GeoBorderSurface.cxx:9