allpix::PassiveMaterialModel
Module: passive material models
Base of all passive material models. More…
#include <PassiveMaterialModel.hpp>
Inherited by allpix::BoxModel, allpix::ConeModel, allpix::CylinderModel, allpix::SphereModel
Public Functions
Name | |
---|---|
std::shared_ptr< PassiveMaterialModel > | factory(const Configuration & config, GeometryManager * geo_manager) Factory to dynamically create track objects. |
PassiveMaterialModel(const Configuration & config, GeometryManager * geo_manager) Constructs the base passive material model. |
|
virtual | ~PassiveMaterialModel() =default Essential virtual destructor. |
virtual double | getMaxSize() const =0 Virtual function that will return the maximum size parameter of the model. |
virtual void | buildVolume(const std::shared_ptr< G4LogicalVolume > & world_log) |
const std::string & | getName() const return name of this volume |
const std::string & | getMotherVolume() const return name of the mother volume or an empty string of none is set |
Protected Functions
Name | |
---|---|
virtual std::shared_ptr< G4VSolid > | get_solid() const =0 Virtual function that will return a G4VSolid corresponding to the specific model. |
void | set_visualization_attributes(G4LogicalVolume * volume, G4LogicalVolume * mother_volume) Set visualization attributes of the passive material as specified in the configuration. |
void | add_points() Delivers the points which represent the outer corners of the passive material to the GeometryManager. |
Protected Attributes
Name | |
---|---|
Configuration | config_ |
GeometryManager * | geo_manager_ |
double | max_size_ |
std::string | name_ |
ROOT::Math::Rotation3D | orientation_ |
ROOT::Math::XYZPoint | position_ |
std::shared_ptr< G4RotationMatrix > | rotation_ |
std::string | mother_volume_ |
std::vector< std::shared_ptr< G4VSolid > > | solids_ |
Detailed Description
class allpix::PassiveMaterialModel;
Base of all passive material models.
Creates the functions that will be overwritten by the passive material models. The G4VSolid of the passive material and it’s optional filling material are defined. The maximum size parameter is defined.
Public Functions Documentation
function factory
static std::shared_ptr< PassiveMaterialModel > factory(
const Configuration & config,
GeometryManager * geo_manager
)
Factory to dynamically create track objects.
Parameters:
- config Configuration with description of the model
- geo_manager Pointer to the global geometry manager
Return: By param trackModel assigned track model to be used
function PassiveMaterialModel
PassiveMaterialModel(
const Configuration & config,
GeometryManager * geo_manager
)
Constructs the base passive material model.
Parameters:
- config Configuration with description of the model
- geo_manager Pointer to the global geometry manager
function ~PassiveMaterialModel
virtual ~PassiveMaterialModel() =default
Essential virtual destructor.
function getMaxSize
virtual double getMaxSize() const =0
Virtual function that will return the maximum size parameter of the model.
Return: Maximum size of the model
Reimplemented by: allpix::BoxModel::getMaxSize, allpix::ConeModel::getMaxSize, allpix::CylinderModel::getMaxSize, allpix::SphereModel::getMaxSize
function buildVolume
virtual void buildVolume(
const std::shared_ptr< G4LogicalVolume > & world_log
)
function getName
inline const std::string & getName() const
return name of this volume
Return: Volume name
function getMotherVolume
inline const std::string & getMotherVolume() const
return name of the mother volume or an empty string of none is set
Return: Mother volume
Protected Functions Documentation
function get_solid
virtual std::shared_ptr< G4VSolid > get_solid() const =0
Virtual function that will return a G4VSolid corresponding to the specific model.
Return: Shared pointer to the model solid
Reimplemented by: allpix::BoxModel::get_solid, allpix::ConeModel::get_solid, allpix::CylinderModel::get_solid, allpix::SphereModel::get_solid
function set_visualization_attributes
void set_visualization_attributes(
G4LogicalVolume * volume,
G4LogicalVolume * mother_volume
)
Set visualization attributes of the passive material as specified in the configuration.
Parameters:
- volume Volume to set the visualization attributes for
- mother_volume Mother volume of the one in question
function add_points
void add_points()
Delivers the points which represent the outer corners of the passive material to the GeometryManager.
Protected Attributes Documentation
variable config_
Configuration config_;
variable geo_manager_
GeometryManager * geo_manager_;
variable max_size_
double max_size_ {};
variable name_
std::string name_;
variable orientation_
ROOT::Math::Rotation3D orientation_;
variable position_
ROOT::Math::XYZPoint position_;
variable rotation_
std::shared_ptr< G4RotationMatrix > rotation_;
variable mother_volume_
std::string mother_volume_;
variable solids_
std::vector< std::shared_ptr< G4VSolid > > solids_;
Updated on 2025-02-27 at 14:14:46 +0000