SHiP Geometry
SHiP experiment geometry implementation using GeoModel.
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
SHiPGeometry::CalorimeterFactory Class Reference

Factory for the Calorimeter (ECAL + HCAL) geometry. More...

#include <CalorimeterFactory.h>

Public Member Functions

 CalorimeterFactory (SHiPMaterials &materials, std::string configPath="calo.toml")
 
 ~CalorimeterFactory ()=default
 
GeoPhysVol * build ()
 Build and return the calorimeter container volume.
 

Static Public Member Functions

static double totalStackZ (const CalorimeterConfig &cfg)
 Compute the total Z extent of one ECAL+gap+HCAL stack (mm).
 

Detailed Description

Factory for the Calorimeter (ECAL + HCAL) geometry.

Creates a fixed-size container volume matching the SHiP envelope (3.00 × 3.50 × 1.45 m half-sizes, centred at Z = 98 320 mm) and fills it with the real layer-by-layer geometry driven by calo.toml.

The config file is resolved at build() time:

  1. "calo.toml" relative to the current working directory (works when running from the build directory, where CMake stages the file).
  2. The absolute source-tree path baked in at compile time via CALO_TOML_DEFAULT_PATH (always valid during development).

Constructor & Destructor Documentation

◆ CalorimeterFactory()

SHiPGeometry::CalorimeterFactory::CalorimeterFactory ( SHiPMaterials materials,
std::string  configPath = "calo.toml" 
)
explicit

◆ ~CalorimeterFactory()

SHiPGeometry::CalorimeterFactory::~CalorimeterFactory ( )
default

Member Function Documentation

◆ build()

GeoPhysVol * SHiPGeometry::CalorimeterFactory::build ( )

Build and return the calorimeter container volume.

◆ totalStackZ()

double SHiPGeometry::CalorimeterFactory::totalStackZ ( const CalorimeterConfig cfg)
static

Compute the total Z extent of one ECAL+gap+HCAL stack (mm).

Public so tests and placement code can query the stack thickness independently of a full build().


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