CbmRoot
Loading...
Searching...
No Matches
ParametersBuilder Class Reference

A builder class for ca::Parameters. More...

#include <CaParametersBuilder.h>

Public Types

using DetNamesArray_t = std::array<std::string, constants::size::MaxNdetectors>
 
using GeoFactoryPtr_t = std::unique_ptr<const kf::ISetupFactory>
 

Public Member Functions

template<typename Float>
Parameters< Float > Build (kf::FloatTag< Float > floatTag, kf::EFieldMode fldMode)
 Builds the parameters object.
 
void DisableStation (EDetectorID detId, int locId)
 Disables tracking station.
 
void SetGeoSetupFactoryConstructor (std::function< GeoFactoryPtr_t()> lazyConstructor)
 Sets a constructor callable for the geo-setup factory.
 
void SetMainConfig (const std::string &mainConfig)
 Sets main config path.
 
void SetUserConfig (const std::string &userConfig)
 Sets user config path.
 
void SetDetNames (const DetNamesArray_t &detNames)
 Sets tracking detector names.
 

Private Member Functions

void Init ()
 Initializes the instance.
 

Private Attributes

std::string fsMainConfig {}
 Path to main config.
 
std::string fsUserConfig {}
 Path to user config (optional)
 
std::vector< std::pair< EDetectorID, int > > fvInactiveIds
 Indices of inactive stations.
 
GeoFactoryPtr_t fpGeoSetupFactory
 Shared geo-setup factory.
 
DetNamesArray_t fDetNames
 Detector subsystem names.
 
std::function< GeoFactoryPtr_t()> fpGeoSetupFactoryConstructor
 

Detailed Description

A builder class for ca::Parameters.

Definition at line 31 of file CaParametersBuilder.h.

Member Typedef Documentation

◆ DetNamesArray_t

using cbm::algo::ca::ParametersBuilder::DetNamesArray_t = std::array<std::string, constants::size::MaxNdetectors>

Definition at line 34 of file CaParametersBuilder.h.

◆ GeoFactoryPtr_t

Definition at line 35 of file CaParametersBuilder.h.

Member Function Documentation

◆ Build()

template<typename Float>
Parameters< Float > cbm::algo::ca::ParametersBuilder::Build ( kf::FloatTag< Float > floatTag,
kf::EFieldMode fldMode )

Builds the parameters object.

Parameters
floatTagFloating point tag
fldModeMagnetic field representation mode

Definition at line 90 of file CaParametersBuilder.h.

◆ DisableStation()

void cbm::algo::ca::ParametersBuilder::DisableStation ( EDetectorID detId,
int locId )
inline

Disables tracking station.

Parameters
detIdTracking detector identifier
locIdLocal index of tracking station
Note
locId == -1 will disable all stations for the detId

Definition at line 47 of file CaParametersBuilder.h.

◆ Init()

void ParametersBuilder::Init ( )
private

Initializes the instance.

Definition at line 16 of file CaParametersBuilder.cxx.

◆ SetDetNames()

void cbm::algo::ca::ParametersBuilder::SetDetNames ( const DetNamesArray_t & detNames)
inline

Sets tracking detector names.

Definition at line 68 of file CaParametersBuilder.h.

◆ SetGeoSetupFactoryConstructor()

void cbm::algo::ca::ParametersBuilder::SetGeoSetupFactoryConstructor ( std::function< GeoFactoryPtr_t()> lazyConstructor)
inline

Sets a constructor callable for the geo-setup factory.

Parameters
lazyConstructorThe factory construction callable

The lazyConstructor callable will be executed in the initialization of the instance. One can capture properties of the steering class, where the callable was created, but only if the lifetime of the steering class fully covers the lifetime of the cbm::algo::ca::Builder instance.

Definition at line 56 of file CaParametersBuilder.h.

◆ SetMainConfig()

void cbm::algo::ca::ParametersBuilder::SetMainConfig ( const std::string & mainConfig)
inline

Sets main config path.

Definition at line 62 of file CaParametersBuilder.h.

◆ SetUserConfig()

void cbm::algo::ca::ParametersBuilder::SetUserConfig ( const std::string & userConfig)
inline

Sets user config path.

Definition at line 65 of file CaParametersBuilder.h.

Member Data Documentation

◆ fDetNames

DetNamesArray_t cbm::algo::ca::ParametersBuilder::fDetNames
private

Detector subsystem names.

Definition at line 79 of file CaParametersBuilder.h.

◆ fpGeoSetupFactory

GeoFactoryPtr_t cbm::algo::ca::ParametersBuilder::fpGeoSetupFactory
private

Shared geo-setup factory.

Definition at line 78 of file CaParametersBuilder.h.

◆ fpGeoSetupFactoryConstructor

std::function<GeoFactoryPtr_t()> cbm::algo::ca::ParametersBuilder::fpGeoSetupFactoryConstructor
private

A helper to perform a lazy creation of geo-setup factory

Definition at line 81 of file CaParametersBuilder.h.

◆ fsMainConfig

std::string cbm::algo::ca::ParametersBuilder::fsMainConfig {}
private

Path to main config.

Definition at line 75 of file CaParametersBuilder.h.

◆ fsUserConfig

std::string cbm::algo::ca::ParametersBuilder::fsUserConfig {}
private

Path to user config (optional)

Definition at line 76 of file CaParametersBuilder.h.

◆ fvInactiveIds

std::vector<std::pair<EDetectorID, int> > cbm::algo::ca::ParametersBuilder::fvInactiveIds
private

Indices of inactive stations.

Definition at line 77 of file CaParametersBuilder.h.


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