Belle II Software  release-05-01-25
CLAWSCreator Class Reference

The creator for the CLAWS geometry. More...

#include <CLAWSCreator.h>

Inheritance diagram for CLAWSCreator:
Collaboration diagram for CLAWSCreator:

Public Member Functions

 CLAWSCreator (Simulation::SensitiveDetectorBase *sensitive=nullptr)
 Constructor. More...
 
void createShape (const std::string &prefix, const GearDir &params, G4LogicalVolume *parent, double roffset, bool check)
 create a shape (box or cylinder) from XML description and place all child shapes in it by recursively calling this function for all children. More...
 
virtual void create (const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type)
 Function to actually create the geometry, has to be overridden by derived classes. More...
 
 BELLE2_DEFINE_EXCEPTION (DBNotImplemented, "Cannot create geometry from Database.")
 Exception that will be thrown in createFromDB if member is not yet implemented by creator.
 
virtual void createFromDB (const std::string &name, G4LogicalVolume &topVolume, GeometryTypes type)
 Function to create the geometry from the Database. More...
 
virtual void createPayloads (const GearDir &content, const IntervalOfValidity &iov)
 Function to create the geometry database. More...
 

Protected Attributes

Simulation::SensitiveDetectorBasem_sensitive {nullptr}
 pointer to the sensitive detector implementation
 
G4Material * m_topMaterial {nullptr}
 pointer to the material in the top volume to use as default
 
G4UserLimits * m_stepLength {nullptr}
 pointer to the G4Userlimits to set for sensitive volumes (if any)
 

Detailed Description

The creator for the CLAWS geometry.

Definition at line 31 of file CLAWSCreator.h.

Constructor & Destructor Documentation

◆ CLAWSCreator()

CLAWSCreator ( Simulation::SensitiveDetectorBase sensitive = nullptr)

Constructor.

Parameters
sensitivedetector instance to use, if null a claws::SensitiveDetector instance will be created.

Definition at line 46 of file CLAWSCreator.cc.

46  {
47  delete m_sensitive;
48  delete m_stepLength;
49  }
50 
51  void CLAWSCreator::createShape(const std::string& prefix, const GearDir& params, G4LogicalVolume* parent, double roffset,

Member Function Documentation

◆ create()

void create ( const GearDir content,
G4LogicalVolume &  topVolume,
geometry::GeometryTypes  type 
)
virtual

Function to actually create the geometry, has to be overridden by derived classes.

Parameters
contentGearDir pointing to the parameters which should be used for construction
topVolumeTop volume in which the geometry has to be placed
typeType of geometry to be build

Implements CreatorBase.

Definition at line 135 of file CLAWSCreator.cc.

◆ createFromDB()

void createFromDB ( const std::string &  name,
G4LogicalVolume &  topVolume,
GeometryTypes  type 
)
virtualinherited

Function to create the geometry from the Database.

Parameters
namename of the component in the database, could be used to disambiguate multiple components created with the same creator
topVolumeTop volume in which the geometry has to be placed
typeType of geometry to be build

Reimplemented in GeoEKLMCreator, GeoFarBeamLineCreator, GeoCryostatCreator, MyDBCreator, GeoARICHCreator, GeoBeamPipeCreator, GeoServiceMaterialCreator, GeoBKLMCreator, GeoPXDCreator, GeoSVDCreator, GeoTOPCreator, GeoSTRCreator, GeoHeavyMetalShieldCreator, GeoCDCCreator, GeoCOILCreator, GeoVXDServiceCreator, GeoKLMCreator, GeoECLCreator, and GeoMagneticField.

Definition at line 27 of file CreatorBase.cc.

◆ createPayloads()

void createPayloads ( const GearDir content,
const IntervalOfValidity iov 
)
virtualinherited

Function to create the geometry database.

This function should be implemented to convert Gearbox parameters to one ore more database payloads

Parameters
contentGearDir pointing to the parameters which should be used for construction
iovinterval of validity to use when generating payloads

Reimplemented in GeoEKLMCreator, GeoFarBeamLineCreator, GeoCryostatCreator, MyDBCreator, GeoARICHCreator, GeoTOPCreator, GeoCDCCreator, GeoBeamPipeCreator, GeoServiceMaterialCreator, GeoMagneticField, GeoBKLMCreator, GeoKLMCreator, GeoECLCreator, GeoPXDCreator, GeoSVDCreator, GeoSTRCreator, GeoCOILCreator, GeoHeavyMetalShieldCreator, and GeoVXDServiceCreator.

Definition at line 34 of file CreatorBase.cc.

◆ createShape()

void createShape ( const std::string &  prefix,
const GearDir params,
G4LogicalVolume *  parent,
double  roffset,
bool  check 
)

create a shape (box or cylinder) from XML description and place all child shapes in it by recursively calling this function for all children.

Parameters
prefixprefix of the volume names
paramsXML parameters
parentLogical Volume where to place the shape
roffsetradial offset for the placement
checkif true check for overlaps when placing the volumes

Definition at line 59 of file CLAWSCreator.cc.


The documentation for this class was generated from the following files:
Belle2::claws::CLAWSCreator::m_stepLength
G4UserLimits * m_stepLength
pointer to the G4Userlimits to set for sensitive volumes (if any)
Definition: CLAWSCreator.h:59
Belle2::claws::CLAWSCreator::createShape
void createShape(const std::string &prefix, const GearDir &params, G4LogicalVolume *parent, double roffset, bool check)
create a shape (box or cylinder) from XML description and place all child shapes in it by recursively...
Definition: CLAWSCreator.cc:59
Belle2::claws::CLAWSCreator::m_sensitive
Simulation::SensitiveDetectorBase * m_sensitive
pointer to the sensitive detector implementation
Definition: CLAWSCreator.h:55