|
ATLAS Offline Software
|
Go to the documentation of this file.
24 , m_idHelper (nullptr)
25 , m_alignModules (nullptr)
27 , m_alignParList (nullptr)
28 , m_fullAlignParList (nullptr)
30 , m_subDetElement (
AlignModule::NDetectorTypes,false)
32 declareInterface<IAlignModuleTool>(
this);
49 return StatusCode::FAILURE;
58 return StatusCode::FAILURE;
61 return StatusCode::SUCCESS;
68 return StatusCode::SUCCESS;
73 std::vector<AlignModuleList*>* idHashMaps)
79 for (
int i=0;
i<(
int)idHashMaps->size();
i++) {
88 (*m_alignModules)[imod]->setIdHash(nmods++);
115 (*ap)->setIndex(
index++);
125 ATH_MSG_DEBUG(
"in AlignModuleTool::findAlignModule(det,detType)");
133 ATH_MSG_ERROR(
"please use findAlignModule method passing RIO_OnTrack");
147 int idHash =
det->identifyHash();
157 ATH_MSG_DEBUG(
"in AlignModuleTool::findAlignModule(rio,detType)");
199 if (!alignModule)
return nullptr;
217 int idHash=
det->identifyHash();
228 if ((*modAlignPar)[
i]) {
229 alignModPar[
i]=(*modAlignPar)[
i]->par();
230 alignModErr[
i]=(*modAlignPar)[
i]->err();
233 alignModPar[
i]=alignModErr[
i]=0.;
244 Amg::Transform3D alignModXform = alignModXTranslation * Amg::RotationMatrix3D::Identity();
254 Amg::Transform3D alignModXformErr = alignModXTranslationErr * Amg::RotationMatrix3D::Identity();
265 ATH_MSG_WARNING(
"Check that order is correct: AlignModuleTool:271,284");
285 ap->setPar(detpars[ipar],deterrs[ipar]);
286 ap->setFinalPar(
ap->initPar()+detpars[ipar],
287 std::sqrt(
ap->initErr()*
ap->initErr() + deterrs[ipar]*deterrs[ipar]) );
301 if (
id.is_valid()) {
326 for (
int imod=0;imod<(
int)modules->size(); imod++) {
327 sl <<
"AML: "<<*((*modules)[imod]);
331 for (
int iap=0;iap<(
int)alignParList->
size();iap++) {
332 sl << *((*alignParList)[iap]);
def retrieve(aClass, aKey=None)
bool is_pixel(Identifier id) const
bool is_rpc(Identifier id) const
bool is_csc(Identifier id) const
std::vector< AlignModule * > AlignModuleList
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
bool is_sct(Identifier id) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
void decomposeTransform(const Amg::Transform3D &transform, double *values)
bool is_trt(Identifier id) const
#define ATH_MSG_VERBOSE(x)
bool const RAWDATA *ch2 const
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
(Non-const) Iterator class for DataVector/DataList.
IdentifierHash identifyHash() const
Set and return index of module, used by alignment classes to keep track of order of align module.
bool is_tgc(Identifier id) const
::StatusCode StatusCode
StatusCode definition for legacy code.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
void clear()
Erase all the elements in the collection.
Ensure that the ATLAS eigen extensions are properly loaded.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
Eigen::Matrix< double, 3, 1 > Vector3D
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const Amg::Transform3D * alignModuleToDetElementTransform(AlignModule::DetectorType detType, const TrkDetElementBase *det, const Identifier id=Identifier()) const
returns AlignModule to DetElement transform for a detector element
#define ATH_MSG_WARNING(x)
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
Identifier identify() const
return the identifier -extends MeasurementBase
Eigen::Translation< double, 3 > Translation3D
Eigen::AngleAxisd AngleAxis3D
virtual IdentifierHash identifyHash() const =0
Identifier hash.
virtual const TrkDetElementBase * detectorElement() const =0
returns the detector element, assoicated with the PRD of this class
size_type size() const noexcept
Returns the number of elements in the collection.
Identifier identify() const
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
bool is_mdt(Identifier id) const