Garfield++ 3.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
Garfield::GeometryBase Class Referenceabstract

Abstract base class for geometry classes. More...

#include <GeometryBase.hh>

+ Inheritance diagram for Garfield::GeometryBase:

Public Member Functions

 GeometryBase ()=default
 Constructor.
 
virtual ~GeometryBase ()
 Destructor.
 
virtual MediumGetMedium (const double x, const double y, const double z) const =0
 Retrieve the medium at a given point.
 
virtual unsigned int GetNumberOfSolids () const
 Return the number of solids in the geometry.
 
virtual SolidGetSolid (const unsigned int) const
 Get a solid from the list.
 
virtual SolidGetSolid (const unsigned int, Medium *&medium) const
 Get a solid from the list, together with the associated medium.
 
virtual bool IsInside (const double x, const double y, const double z) const =0
 Check if a point is inside the geometry.
 
virtual bool GetBoundingBox (double &xmin, double &ymin, double &zmin, double &xmax, double &ymax, double &zmax)=0
 Get the bounding box (envelope of the geometry).
 

Protected Attributes

std::string m_className = "GeometryBase"
 

Detailed Description

Abstract base class for geometry classes.

Definition at line 13 of file GeometryBase.hh.

Constructor & Destructor Documentation

◆ GeometryBase()

Garfield::GeometryBase::GeometryBase ( )
default

Constructor.

◆ ~GeometryBase()

virtual Garfield::GeometryBase::~GeometryBase ( )
inlinevirtual

Destructor.

Definition at line 18 of file GeometryBase.hh.

18{}

Member Function Documentation

◆ GetBoundingBox()

virtual bool Garfield::GeometryBase::GetBoundingBox ( double &  xmin,
double &  ymin,
double &  zmin,
double &  xmax,
double &  ymax,
double &  zmax 
)
pure virtual

◆ GetMedium()

virtual Medium * Garfield::GeometryBase::GetMedium ( const double  x,
const double  y,
const double  z 
) const
pure virtual

◆ GetNumberOfSolids()

virtual unsigned int Garfield::GeometryBase::GetNumberOfSolids ( ) const
inlinevirtual

Return the number of solids in the geometry.

Reimplemented in Garfield::GeometrySimple.

Definition at line 25 of file GeometryBase.hh.

25{ return 0; }

Referenced by Garfield::ComponentNeBem3d::Initialise().

◆ GetSolid() [1/2]

virtual Solid * Garfield::GeometryBase::GetSolid ( const unsigned int  ) const
inlinevirtual

Get a solid from the list.

Reimplemented in Garfield::GeometrySimple.

Definition at line 27 of file GeometryBase.hh.

27{ return nullptr; }

Referenced by Garfield::ComponentNeBem3d::Initialise().

◆ GetSolid() [2/2]

virtual Solid * Garfield::GeometryBase::GetSolid ( const unsigned int  ,
Medium *&  medium 
) const
inlinevirtual

Get a solid from the list, together with the associated medium.

Reimplemented in Garfield::GeometrySimple.

Definition at line 29 of file GeometryBase.hh.

29 {
30 medium = nullptr;
31 return nullptr;
32 }

◆ IsInside()

virtual bool Garfield::GeometryBase::IsInside ( const double  x,
const double  y,
const double  z 
) const
pure virtual

Check if a point is inside the geometry.

Implemented in Garfield::GeometryRoot, and Garfield::GeometrySimple.

Member Data Documentation

◆ m_className


The documentation for this class was generated from the following file: