ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Extension of the DD4hep DetElement needed for translation into the Acts tracking geometry. More...
#include <acts/blob/master/Plugins/DD4hep/include/Acts/Plugins/DD4hep/ActsExtension.hpp>
Public Member Functions | |
ActsExtension (const std::string &axes="XYZ") | |
ActsExtension (const ActsExtension &ext)=default | |
ActsExtension (const ActsExtension &ext, const dd4hep::DetElement &elem) | |
~ActsExtension ()=default | |
Destructor. | |
double | getValue (const std::string &tag, const std::string &category="") const noexcept(false) |
void | addValue (double value, const std::string &tag, const std::string &category="") |
bool | hasValue (const std::string &tag, const std::string &category="") const |
bool | hasType (const std::string &type, const std::string &category="") const |
void | addType (const std::string &type, const std::string &category="", const std::string &word="") |
const std::string | getType (const std::string &type, const std::string &category="") const noexcept(false) |
std::string | toString () const |
Output to string. | |
Private Member Functions | |
template<typename T > | |
void | addT (std::map< std::string, T > &map, const T &val, const std::string &tag, const std::string &category, const T &catDeco) |
Templated helper method. | |
template<typename T > | |
const T | getT (const std::map< std::string, T > &map, const std::string &tag, const std::string &category="") const noexcept(false) |
Templated helper method. | |
template<typename T > | |
bool | hasT (const std::map< std::string, T > &map, const std::string &tag, const std::string &category="") const |
Templated helper method. | |
Private Attributes | |
std::map< std::string, std::string > | m_flagStore |
Multiple flags to be stored, existance defines set. | |
std::map< std::string, double > | m_values |
Unique value store for doubles. | |
Extension of the DD4hep DetElement needed for translation into the Acts tracking geometry.
This is a simple value / flag container to be:
The minimal requirement for an ActsExtension is to define how the DD4hep (TGeo) element is oriented with respect to the Acts definition
Definition at line 32 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 32 of file ActsExtension.hpp
Acts::ActsExtension::ActsExtension | ( | const std::string & | axes = "XYZ" | ) |
Minimal constructor, sets the defail of the axis
Definition at line 11 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 11 of file ActsExtension.cpp
References addType().
|
default |
Standard copy constructor
ext | the source extension |
Acts::ActsExtension::ActsExtension | ( | const ActsExtension & | ext, |
const dd4hep::DetElement & | elem | ||
) |
Copy constructor with element for DD4hep::DetElement::clone
ext | the source extension |
Definition at line 15 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 15 of file ActsExtension.cpp
|
default |
Destructor.
|
private |
Templated helper method.
Definition at line 145 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 145 of file ActsExtension.hpp
void Acts::ActsExtension::addType | ( | const std::string & | type, |
const std::string & | category = "" , |
||
const std::string & | word = "" |
||
) |
Add the characteristics
type | the primary identifier in the flag store |
category | the (optional) category in the flag store |
the | word to be stored |
Definition at line 40 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 40 of file ActsExtension.cpp
Referenced by ActsExtension(), ODDModuleHelper::assembleRectangularModule(), ODDModuleHelper::assembleTrapezoidalModule(), create_element(), det::createSimpleLayeredCylinder(), det::createTkLayoutTrackerBarrel(), det::createTkLayoutTrackerEndcap(), and Acts::xmlToProtoSurfaceMaterial().
void Acts::ActsExtension::addValue | ( | double | value, |
const std::string & | tag, | ||
const std::string & | category = "" |
||
) |
Add the parameter to the store
value | the value to be added |
tag | the entry identifier in the value store |
type | the (optional) category in the value store |
Definition at line 25 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 25 of file ActsExtension.cpp
Referenced by Acts::xmlToProtoSurfaceMaterial().
|
privatenoexcept |
Templated helper method.
Definition at line 123 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 123 of file ActsExtension.hpp
References Acts::toString().
|
noexcept |
Get the string content
type | the primary identifier in the flag store |
category | the (optional) category in the flag store |
Definition at line 47 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 47 of file ActsExtension.cpp
Referenced by Acts::DD4hepLayerBuilder::createSensitiveSurface().
|
noexcept |
Get the value
tag | the entry identifier in the value store |
type | the (optional) category in the value store |
Definition at line 19 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 19 of file ActsExtension.cpp
Referenced by Acts::DD4hepLayerBuilder::centralLayers(), Acts::createProtoMaterial(), and Acts::DD4hepLayerBuilder::endcapLayers().
|
private |
Templated helper method.
Definition at line 160 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 160 of file ActsExtension.hpp
bool Acts::ActsExtension::hasType | ( | const std::string & | type, |
const std::string & | category = "" |
||
) | const |
Check if the ActsExtension has a value (with optional category)
type | the primary identifier in the flag store |
type | the (optional) category in the flag store |
Definition at line 35 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 35 of file ActsExtension.cpp
Referenced by Acts::collectCompounds_dd4hep(), Acts::collectLayers_dd4hep(), Acts::collectSubDetectors_dd4hep(), Acts::collectVolumes_dd4hep(), and Acts::volumeBuilder_dd4hep().
bool Acts::ActsExtension::hasValue | ( | const std::string & | tag, |
const std::string & | category = "" |
||
) | const |
Check if the ActsExtension has a value (with optional category)
type | the primary identifier in the flag store |
type | the (optional) category in the flag store |
Definition at line 30 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 30 of file ActsExtension.cpp
Referenced by Acts::addLayerProtoMaterial(), Acts::DD4hepLayerBuilder::centralLayers(), Acts::DD4hepLayerBuilder::endcapLayers(), and Acts::volumeBuilder_dd4hep().
std::string Acts::ActsExtension::toString | ( | ) | const |
Output to string.
Definition at line 53 of file ActsExtension.cpp.
View newest version in sPHENIX GitHub at line 53 of file ActsExtension.cpp
References nlohmann::to_string().
|
private |
Multiple flags to be stored, existance defines set.
Definition at line 115 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 115 of file ActsExtension.hpp
|
private |
Unique value store for doubles.
Definition at line 118 of file ActsExtension.hpp.
View newest version in sPHENIX GitHub at line 118 of file ActsExtension.hpp