|
CbmRoot
|
KF-framework representation of the detector setup. More...
#include <KfSetup.h>
Public Member Functions | |
| Setup ()=default | |
| Default constructor (for boost serialization) | |
| Setup (const ModuleIndexMap &moduleIndexMap, const std::vector< MaterialMap > &materialLayers, std::vector< ActiveLayer< F > > activeLayers, const Field< F > &field, const Target< F > &target) | |
| Constructor. | |
| template<typename FSrc> | |
| Setup (const Setup< FSrc > &other) | |
| Copy-convert constructor. | |
| Setup (const Setup &)=default | |
| Default copy constructor. | |
| Setup (Setup &&)=default | |
| Move constructor. | |
| ~Setup ()=default | |
| Destructor. | |
| Setup & | operator= (const Setup &other)=default |
| Copy assignment operator. | |
| Setup & | operator= (Setup &&)=default |
| Move assignment operator. | |
| template<class EDetID> | |
| Setup | CreateSetupWithDisabledLayers (const std::vector< std::pair< EDetID, int > > &toDisable) const |
| Creates another setup from this with some of the layers disabled. | |
| template<class EDetID> | |
| void | DisableLayer (EDetID iDet, int iLoc) |
| Disables geo layer. | |
| const ActiveLayer< F > & | GetActiveLayer (int iLayer) const |
| Gets active layer instance. | |
| const auto & | GetActiveLayers () const |
| Gets active layers container. | |
| template<class EDetID> | |
| const ActiveLayer< F > & | GetActiveLayer (EDetID iDet, int iLoc) const |
| Gets active layer instance. | |
| const Field< F > & | GetField () const |
| Makes an instance of the field depending on the template parameter. | |
| const MaterialMap & | GetMaterial (int iLayer) const |
| Gets material layer. | |
| template<class EDetID> | |
| const MaterialMap & | GetMaterial (EDetID iDet, int iLoc) const |
| Gets material layer from external indices. | |
| const ModuleIndexMap & | GetIndexMap () const |
| Gets module index map. | |
| int | GetNofLayers () const |
| Gets number of geometry layers. | |
| template<class EDetID> | |
| int | GetNofLayers (EDetID iDet) const |
| Gets number of layers for detector. | |
| const Target< F > & | GetTarget () const |
| Gets target. | |
| std::string | ToString (int verbosity=1, int indentLevel=0) const |
| String representation of the class contents. | |
| template<class EDetID> | |
| Setup< F > | CreateSetupWithDisabledLayers (const std::vector< std::pair< EDetID, int > > &toDisableInp) const |
Private Member Functions | |
| bool | Validate () const |
| Validates setup as a system of magnetic field, target and field. | |
| template<class Archive> | |
| void | serialize (Archive &ar, const unsigned int) |
Private Attributes | |
| ModuleIndexMap | fModuleIndexMap {} |
| Index map (internal->external) | |
| std::vector< MaterialMap > | fvMaterialLayers {} |
| Container for material maps. | |
| std::vector< ActiveLayer< F > > | fvActiveLayers {} |
| Container for active layers. | |
| Field< F > | fField {} |
| Magnetic field. | |
| Target< F > | fTarget {} |
| Target layer. | |
Friends | |
| template<typename> | |
| class | Setup |
| class | boost::serialization::access |
| Serialization method. | |
KF-framework representation of the detector setup.
| F | Underlying floating-point data type |
|
default |
Default constructor (for boost serialization)
|
inline |
Constructor.
| moduleIndexMap | A map of module indices |
| materialLayers | A vector of material layers |
| activeLayers | A layer of active layer properties (NOTE: resource is moved) |
| field | Magnetic field representation |
| target | Target information |
Definition at line 52 of file KfSetup.h.
References fField, fModuleIndexMap, fTarget, fvActiveLayers, fvMaterialLayers, and Validate().
|
inline |
Copy-convert constructor.
| FSrc | Underlying floating-point data type of the source |
Definition at line 72 of file KfSetup.h.
References F, fField, fModuleIndexMap, fTarget, fvActiveLayers, fvMaterialLayers, and Setup.
Default copy constructor.
References Setup.
Move constructor.
References Setup.
|
default |
Destructor.
| Setup cbm::algo::kf::Setup< F >::CreateSetupWithDisabledLayers | ( | const std::vector< std::pair< EDetID, int > > & | toDisable | ) | const |
Creates another setup from this with some of the layers disabled.
| EDetID | detector ID enumeration |
| toDisable | A vector of pairs {iDet, iLoc} of inactive layers to be disabled |
References Setup.
Referenced by cbm::algo::kf::Setup< cbm::algo::kf::fvec >::CreateSetupWithDisabledLayers().
| Setup< F > cbm::algo::kf::Setup< F >::CreateSetupWithDisabledLayers | ( | const std::vector< std::pair< EDetID, int > > & | toDisableInp | ) | const |
| void cbm::algo::kf::Setup< F >::DisableLayer | ( | EDetID | iDet, |
| int | iLoc ) |
Disables geo layer.
| EDetID | Index of the detector subsystem |
| iDet | DetectorID |
| iLoc | Local index of the module |
Definition at line 262 of file KfSetup.h.
References cbm::algo::kf::utils::simd::Cast(), fField, fModuleIndexMap, fTarget, fvActiveLayers, and fvMaterialLayers.
|
inline |
Gets active layer instance.
| EDetID | Index of the detector subsystem |
| iDet | DetectorID |
| iLoc | Local index of the module |
Definition at line 125 of file KfSetup.h.
References fModuleIndexMap, and fvActiveLayers.
|
inline |
Gets active layer instance.
| iLayer | Index of layer |
Definition at line 115 of file KfSetup.h.
References fvActiveLayers.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create(), and cbm::algo::kf::SetupBuilder::SetFromSetup().
|
inline |
Gets active layers container.
Definition at line 118 of file KfSetup.h.
References fvActiveLayers.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create().
|
inline |
Makes an instance of the field depending on the template parameter.
| std::logic_error | If the particular field member is undefined (nullopt) |
Definition at line 132 of file KfSetup.h.
References fField.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create().
|
inline |
Gets module index map.
Definition at line 149 of file KfSetup.h.
References fModuleIndexMap.
Referenced by cbm::algo::kf::SetupBuilder::SetFromSetup().
|
inline |
Gets material layer from external indices.
| EDetID | Index of the detector subsystem |
| iDet | DetectorID |
| iLoc | Local index of the module |
Definition at line 143 of file KfSetup.h.
References fModuleIndexMap, and fvMaterialLayers.
|
inline |
Gets material layer.
| iLayer | Index of layer |
Definition at line 136 of file KfSetup.h.
References fvMaterialLayers.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create(), and cbm::algo::kf::SetupBuilder::SetFromSetup().
|
inline |
Gets number of geometry layers.
Definition at line 152 of file KfSetup.h.
References fModuleIndexMap.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create(), and cbm::algo::kf::SetupBuilder::SetFromSetup().
|
inline |
Gets number of layers for detector.
| EDetId | A type of the detector ID |
Definition at line 157 of file KfSetup.h.
References fModuleIndexMap.
|
inline |
Gets target.
Definition at line 163 of file KfSetup.h.
References fTarget.
Referenced by cbm::algo::ca::SearchWindowMapContainerFactory::Create().
|
default |
Copy assignment operator.
References Setup.
Move assignment operator.
References Setup.
|
inlineprivate |
Definition at line 188 of file KfSetup.h.
References fField, fModuleIndexMap, fTarget, fvActiveLayers, and fvMaterialLayers.
| std::string Setup::ToString | ( | int | verbosity = 1, |
| int | indentLevel = 0 ) const |
String representation of the class contents.
| verbosity | A verbose level for output |
| indentLevel | Indent level of the string output |
Definition at line 20 of file KfSetup.cxx.
References fField, fModuleIndexMap, fTarget, fvActiveLayers, fvMaterialLayers, and ToString().
Referenced by cbm::algo::kf::SetupBuilder::SetFromSetup(), and ToString().
|
private |
Validates setup as a system of magnetic field, target and field.
Definition at line 45 of file KfSetup.cxx.
References Validate().
Referenced by Setup(), and Validate().
|
friend |
Definition at line 39 of file KfSetup.h.
References Setup.
Referenced by CreateSetupWithDisabledLayers(), operator=(), operator=(), Setup, Setup(), Setup(), and Setup().
|
private |
Magnetic field.
Definition at line 174 of file KfSetup.h.
Referenced by DisableLayer(), GetField(), serialize(), Setup(), Setup(), and ToString().
|
private |
Index map (internal->external)
Definition at line 171 of file KfSetup.h.
Referenced by DisableLayer(), GetActiveLayer(), GetIndexMap(), GetMaterial(), GetNofLayers(), GetNofLayers(), serialize(), Setup(), Setup(), and ToString().
|
private |
Target layer.
Definition at line 175 of file KfSetup.h.
Referenced by DisableLayer(), GetTarget(), serialize(), cbm::algo::kf::SetupBuilder::SetFromSetup(), Setup(), Setup(), and ToString().
|
private |
Container for active layers.
Definition at line 173 of file KfSetup.h.
Referenced by DisableLayer(), GetActiveLayer(), GetActiveLayer(), GetActiveLayers(), serialize(), Setup(), Setup(), and ToString().
|
private |
Container for material maps.
Definition at line 172 of file KfSetup.h.
Referenced by DisableLayer(), GetMaterial(), GetMaterial(), serialize(), Setup(), Setup(), and ToString().