Garfield++ 3.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
Abstract base class for geometry classes. More...
#include <GeometryBase.hh>
Public Member Functions | |
GeometryBase ()=default | |
Constructor. | |
virtual | ~GeometryBase () |
Destructor. | |
virtual Medium * | GetMedium (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 Solid * | GetSolid (const unsigned int) const |
Get a solid from the list. | |
virtual Solid * | GetSolid (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" |
Abstract base class for geometry classes.
Definition at line 13 of file GeometryBase.hh.
|
default |
Constructor.
|
inlinevirtual |
|
pure virtual |
Get the bounding box (envelope of the geometry).
Implemented in Garfield::GeometryRoot, and Garfield::GeometrySimple.
Referenced by Garfield::ComponentAnalyticField::GetBoundingBox(), Garfield::ComponentBase::GetBoundingBox(), and Garfield::ComponentNeBem2d::GetBoundingBox().
|
pure virtual |
Retrieve the medium at a given point.
Implemented in Garfield::GeometryRoot, and Garfield::GeometrySimple.
Referenced by Garfield::ComponentAnalyticField::ElectricField(), Garfield::ComponentBase::GetMedium(), Garfield::ComponentAnalyticField::GetMedium(), and Garfield::ComponentNeBem2d::GetMedium().
|
inlinevirtual |
Return the number of solids in the geometry.
Reimplemented in Garfield::GeometrySimple.
Definition at line 25 of file GeometryBase.hh.
Referenced by Garfield::ComponentNeBem3d::Initialise().
|
inlinevirtual |
Get a solid from the list.
Reimplemented in Garfield::GeometrySimple.
Definition at line 27 of file GeometryBase.hh.
Referenced by Garfield::ComponentNeBem3d::Initialise().
|
inlinevirtual |
Get a solid from the list, together with the associated medium.
Reimplemented in Garfield::GeometrySimple.
Definition at line 29 of file GeometryBase.hh.
|
pure virtual |
Check if a point is inside the geometry.
Implemented in Garfield::GeometryRoot, and Garfield::GeometrySimple.
|
protected |
Definition at line 42 of file GeometryBase.hh.
Referenced by Garfield::GeometrySimple::AddSolid(), Garfield::GeometryRoot::GeometryRoot(), Garfield::GeometrySimple::GeometrySimple(), Garfield::GeometrySimple::GetMedium(), Garfield::GeometrySimple::GetSolid(), Garfield::GeometrySimple::IsInBoundingBox(), Garfield::GeometryRoot::PrintGeoNotDefined(), Garfield::GeometrySimple::PrintSolids(), Garfield::GeometryRoot::SetGeometry(), and Garfield::GeometryRoot::SetMedium().