Project
Loading...
Searching...
No Matches
o2::fv0::Geometry Class Reference

FV0 Geometry. More...

#include <Geometry.h>

Public Types

enum  EGeoType { eUninitialized , eOnlySensitive , eRough , eFull }
 
enum  EGeoComponent {
  eScintillator , ePlastics , ePmts , eFibers ,
  eScrews , eRods , eContainer
}
 Geometry components possible to be enabled/disabled. Only enabled components will be created. More...
 

Public Member Functions

 Geometry ()
 
 Geometry (const Geometry &geometry)
 Copy constructor.
 
 ~Geometry ()
 
int getCurrentCellId (const TVirtualMC *fMC) const
 
const std::vector< std::string > & getSensitiveVolumeNames () const
 
bool enableComponent (EGeoComponent component, bool enable=true)
 
void buildGeometry () const
 Build the geometry.
 
void getGlobalPosition (float &x, float &y, float &z)
 Utility functions to be accessed externally.
 
Point3DsimplegetCellCenter (UInt_t cellId)
 
Point3DsimplegetReadoutCenter (UInt_t cellId)
 
bool isRing5 (UInt_t cellId)
 
TGeoPNEntry * getPNEntry (int index) const
 

Static Public Member Functions

static Geometryinstance (EGeoType initType=eUninitialized)
 
static constexpr int getNumberOfReadoutChannels ()
 
static constexpr o2::detectors::DetID::ID getDetID ()
 
static constexpr float getPmtDensity ()
 Get the density of the PMTs.
 

Detailed Description

FV0 Geometry.

Definition at line 50 of file Geometry.h.

Member Enumeration Documentation

◆ EGeoComponent

Geometry components possible to be enabled/disabled. Only enabled components will be created.

Enumerator
eScintillator 
ePlastics 
ePmts 
eFibers 
eScrews 
eRods 
eContainer 

Definition at line 67 of file Geometry.h.

◆ EGeoType

Geometry type options possible to be initialized. The type of the geometry will specify which components are created. Geometry types -> eUnitialized => no parts -> eOnlySensitive => only sensitive detector parts -> eRough => sensitive parts and rough structural elements -> eFull => complete, detailed geometry (including screws, etc.)

Enumerator
eUninitialized 
eOnlySensitive 
eRough 
eFull 

Definition at line 59 of file Geometry.h.

Constructor & Destructor Documentation

◆ Geometry() [1/2]

o2::fv0::Geometry::Geometry ( )
inline

Default constructor. It must be kept public for root persistency purposes, but should never be called by the outside world

Definition at line 80 of file Geometry.h.

◆ Geometry() [2/2]

Geometry::Geometry ( const Geometry geometry)

Copy constructor.

Definition at line 46 of file Geometry.cxx.

◆ ~Geometry()

Geometry::~Geometry ( )

Definition at line 51 of file Geometry.cxx.

Member Function Documentation

◆ buildGeometry()

void Geometry::buildGeometry ( ) const

Build the geometry.

Definition at line 95 of file Geometry.cxx.

◆ enableComponent()

bool Geometry::enableComponent ( EGeoComponent  component,
bool  enable = true 
)

Enable or disable a geometry component. To be called before the geometry is built. A disabled component will not be added to the geometry. The enabled components are by default specified by the geometry type.

Parameters
componentThe geometry component to be enabled/disabled.
enableSetting the enabled state. Default is true.
Returns
The enabled state of the geometry component.

Definition at line 85 of file Geometry.cxx.

◆ getCellCenter()

Point3Dsimple & Geometry::getCellCenter ( UInt_t  cellId)

Definition at line 125 of file Geometry.cxx.

◆ getCurrentCellId()

int Geometry::getCurrentCellId ( const TVirtualMC fMC) const

Get the unique ID of the current scintillator cell during simulation. The ID is a number starting from 0 at the first cell right of the y-axis and continues clockwise one ring at a time.

Parameters
fMCThe virtual Monte Carlo interface.
Returns
The ID of the current scintillator cell during simulation.

Definition at line 61 of file Geometry.cxx.

◆ getDetID()

static constexpr o2::detectors::DetID::ID o2::fv0::Geometry::getDetID ( )
inlinestaticconstexpr

Definition at line 128 of file Geometry.h.

◆ getGlobalPosition()

void Geometry::getGlobalPosition ( float &  x,
float &  y,
float &  z 
)

Utility functions to be accessed externally.

Sets the input parameters to the position of the geometrical center of sensitive detector

Parameters
xx [cm].
yy [cm].
zz [cm].

Definition at line 118 of file Geometry.cxx.

◆ getNumberOfReadoutChannels()

static constexpr int o2::fv0::Geometry::getNumberOfReadoutChannels ( )
inlinestaticconstexpr

Definition at line 121 of file Geometry.h.

◆ getPmtDensity()

static constexpr float o2::fv0::Geometry::getPmtDensity ( )
inlinestaticconstexpr

Get the density of the PMTs.

Definition at line 137 of file Geometry.h.

◆ getPNEntry()

TGeoPNEntry * o2::fv0::Geometry::getPNEntry ( int  index) const
inline

Get a pointer to the TGeoPNEntry of a chip identified by 'index' Returns NULL in case of invalid index, missing TGeoManager or invalid symbolic name

Definition at line 129 of file Geometry.h.

◆ getReadoutCenter()

Point3Dsimple & Geometry::getReadoutCenter ( UInt_t  cellId)

Definition at line 130 of file Geometry.cxx.

◆ getSensitiveVolumeNames()

const std::vector< std::string > & o2::fv0::Geometry::getSensitiveVolumeNames ( ) const
inline

Get the names of all the sensitive volumes of the geometry.

Returns
The names of all the sensitive volumes of the geometry.

Definition at line 100 of file Geometry.h.

◆ instance()

Geometry * Geometry::instance ( EGeoType  initType = eUninitialized)
static

Access to geometry instance

Parameters
initTypeThe geometry type to be initialized - if the geometry already exists this parameter is ignored

Definition at line 1346 of file Geometry.cxx.

◆ isRing5()

bool Geometry::isRing5 ( UInt_t  cellId)

Helper function to check if the cellId belongs to ring 5.

Parameters
cellIdId of the cell in range from 0 to 39.
Returns
True if cellId belongs to ring 5.

Definition at line 135 of file Geometry.cxx.


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